From 4ec7d8bf7f2a09671a42f8cd8e3967fb9ae44078 Mon Sep 17 00:00:00 2001 From: ceriel Date: Tue, 1 Jul 1997 08:33:13 +0000 Subject: [PATCH] Bug fix: copied wrong size to destination in structure returns --- lang/cem/cemcom.ansi/code.c | 2 +- lang/cem/cemcom/code.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/cem/cemcom.ansi/code.c b/lang/cem/cemcom.ansi/code.c index e16ae472c..1f969bf95 100644 --- a/lang/cem/cemcom.ansi/code.c +++ b/lang/cem/cemcom.ansi/code.c @@ -412,7 +412,7 @@ do_return_expr(expr) code_expr(expr, RVAL, TRUE, NO_LABEL, NO_LABEL); if (struct_return != 0) { LoadLocal((arith) 0, pointer_size); - store_block(func_size, func_type->tp_align); + store_block(func_type->tp_size, func_type->tp_align); } C_bra(return_label); return_expr_occurred = 1; diff --git a/lang/cem/cemcom/code.c b/lang/cem/cemcom/code.c index eda7b208a..d82b8dac1 100644 --- a/lang/cem/cemcom/code.c +++ b/lang/cem/cemcom/code.c @@ -319,7 +319,7 @@ end_proc(fbytes) if (return_expr_occurred) { if (func_res_label != 0) { C_lae_dlb(func_res_label, (arith)0); - store_block(func_size, func_type->tp_align); + store_block(func_type->tp_size, func_type->tp_align); C_lae_dlb(func_res_label, (arith)0); C_ret(pointer_size); } -- 2.34.1