In the file Sources/libreprl/libreprl-posix.c, data_out is defined as:
// Data channel Child -> REPRL
struct data_channel* data_out;
However, in the reprl process, it is actually used as follows (also in Sources/libreprl/libreprl-posix.c):
// Copy the script to the data channel.
memcpy(ctx->data_out->mapping, script, script_size);
Thus, the actual usage direction of data_out should be REPRL → Child instead."