Replay one C execution that builds a request in the client file, calls a worker helper in another translation unit, and prints the returned response.

Project Entry

request_client.c
#include <stdio.h>

const char *handle_request(int command);

int main(void) {
    int command = ;
    int requestId = 42;
    const char *name = "status";

    if (command == 0) {
        name = "build";
    } else if (command == 2) {
        name = "deploy";
    }

    const char *response = handle_request(command);
    int ticket = requestId + command;

    if (ticket > 0) {
        puts(name);
    }
    puts(response);
    return 0;
}
#include <stdio.h>

const char *handle_request(int command);

int main(void) {
    int command = ;
    int requestId = 42;
    const char *name = "status";

    if (command == 0) {
        name = "build";
    } else if (command == 2) {
        name = "deploy";
    }

    const char *response = handle_request(command);
    int ticket = requestId + command;

    if (ticket > 0) {
        puts(name);
    }
    puts(response);
    return 0;
}
#include <stdio.h>

const char *handle_request(int command);

int main(void) {
    int command = ;
    int requestId = 42;
    const char *name = "status";

    if (command == 0) {
        name = "build";
    } else if (command == 2) {
        name = "deploy";
    }

    const char *response = handle_request(command);
    int ticket = requestId + command;

    if (ticket > 0) {
        puts(name);
    }
    puts(response);
    return 0;
}
source panels Each source file has its own panel because both files participate in the same execution trace. The Data Flow view follows the call from the client file into the worker file and then back to the caller.
boundary The client file owns the entry point and visible output. The worker file owns the response rule for each command.