enum can't be used in #if. For #if expression, identifiers that are not macros, which are all considered to be the number zero.
This patch may fix https://sourceware.org/bugzilla/show_bug.cgi?id=32776. gcc/ChangeLog: * config/loongarch/linux.h: Add brackets. * config/loongarch/loongarch-def.h (ABI_BASE_ILP32D): New macro. (ABI_BASE_ILP32F): New macro. (ABI_BASE_ILP32S): New macro. (ABI_BASE_LP64D): New macro. (ABI_BASE_LP64F): New macro. (ABI_BASE_LP64S): New macro. (N_ABI_BASE_TYPES): New macro. --- gcc/config/loongarch/loongarch-def.h | 1 - 1 file changed, 1 deletion(-) diff --git a/gcc/config/loongarch/loongarch-def.h b/gcc/config/loongarch/loongarch-def.h index 8be8f769964..69cb7eacd64 100644 --- a/gcc/config/loongarch/loongarch-def.h +++ b/gcc/config/loongarch/loongarch-def.h @@ -78,7 +78,6 @@ enum { extern loongarch_def_array<const char *, N_ISA_EXT_TYPES> loongarch_isa_ext_strings; - /* Base ABI */ #define ABI_BASE_ILP32D 0 #define ABI_BASE_ILP32F 1 -- 2.34.1
