From: Jan-Benedict Glaw Date: Mon, 13 Sep 2021 10:08:25 +0000 (+0200) Subject: Fix multi-statment macro X-Git-Tag: basepoints/gcc-13~4835 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f42e95a830ab48e59389065ce79a013a519646f1;p=thirdparty%2Fgcc.git Fix multi-statment macro INIT_CUMULATIVE_ARGS() expands to multiple statements, which will break right after an `if` statement. Wrap it into a block. gcc/ChangeLog: * config/alpha/vms.h (INIT_CUMULATIVE_ARGS): Wrap multi-statment define into a block. --- diff --git a/gcc/config/alpha/vms.h b/gcc/config/alpha/vms.h index 2a9917cde62f..0033b0004b39 100644 --- a/gcc/config/alpha/vms.h +++ b/gcc/config/alpha/vms.h @@ -145,9 +145,13 @@ typedef struct {int num_args; enum avms_arg_type atypes[6];} avms_arg_info; #undef INIT_CUMULATIVE_ARGS #define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \ - (CUM).num_args = 0; \ - (CUM).atypes[0] = (CUM).atypes[1] = (CUM).atypes[2] = I64; \ - (CUM).atypes[3] = (CUM).atypes[4] = (CUM).atypes[5] = I64; + do \ + { \ + (CUM).num_args = 0; \ + (CUM).atypes[0] = (CUM).atypes[1] = (CUM).atypes[2] = I64; \ + (CUM).atypes[3] = (CUM).atypes[4] = (CUM).atypes[5] = I64; \ + } \ + while (0) #define DEFAULT_PCC_STRUCT_RETURN 0