]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
AVR: Fix building LibF7 after switching to C23.
authorGeorg-Johann Lay <avr@gjlay.de>
Sat, 16 Nov 2024 21:12:05 +0000 (22:12 +0100)
committerGeorg-Johann Lay <avr@gjlay.de>
Sat, 16 Nov 2024 21:18:51 +0000 (22:18 +0100)
Since r15-5327, GNU-C23 is being used as C language default.
libf7.h doesn't assume headers like stdbool.h are present
and defines bool, true and false on its own.

libgcc/config/avr/libf7/
* libf7.h (bool, true, false): Don't define in C23 or higher.

libgcc/config/avr/libf7/libf7.h

index 38ee27054da3ce42339d65dbab8fb5e9c234159e..7226c0e38da993a351131c32e9f22b0a07cdcf50 100644 (file)
@@ -95,12 +95,16 @@ typedef __INT64_TYPE__ int64_t;
 typedef __INT32_TYPE__ int32_t;
 typedef __INT16_TYPE__ int16_t;
 typedef __INT8_TYPE__  int8_t;
-typedef _Bool bool;
-#define false 0
-#define true  1
 #define INT8_MIN  (-1 - __INT8_MAX__)
 #define INT16_MAX __INT16_MAX__
 #define NULL ((void*) 0)
+#if defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L
+/* bool, true and false are keywords.  */
+#else
+#define bool  _Bool
+#define true  1
+#define false 0
+#endif /* C23 ? */
 #endif /* IN_LIBGCC2 */
 
 #include "asm-defs.h"