diff options
Diffstat (limited to 'backendC/CleanCompilerSources/instructions.c')
-rw-r--r-- | backendC/CleanCompilerSources/instructions.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/backendC/CleanCompilerSources/instructions.c b/backendC/CleanCompilerSources/instructions.c index 2a97654..6234be1 100644 --- a/backendC/CleanCompilerSources/instructions.c +++ b/backendC/CleanCompilerSources/instructions.c @@ -3328,6 +3328,14 @@ static void print_result_descriptor_and_offsets (StateS field_state,int a_pos,in } else offset2=0; + if (field_state.state_object==FileObj){ + /* the code generator stores the fields in a FILE node in reversed order */ + int old_offset1; + + old_offset1=offset1; + offset1=offset2; + offset2=old_offset1; + } FPrintF (OutFile, "%s %d %d ",result_descriptor_name,offset1,offset2); } } |