]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[RFA] Fix csky and c6x build failures
authorJeff Law <jlaw@ventanamicro.com>
Mon, 18 Nov 2024 16:59:54 +0000 (09:59 -0700)
committerJeff Law <jlaw@ventanamicro.com>
Mon, 18 Nov 2024 17:01:32 +0000 (10:01 -0700)
csky fails to build libgcc after the c23 changes because it has a typedef for
bool.  AFAICT it's internal to the file, so removing the typedef isn't an ABI
change.

Similiarly for c6x which includes unwind-arm-common.inc.  I suspect most, if
not all of the arm-v7 and older targets are failing to build right now.

I've built and regression tested both csky-linux-gnu and c6x-elf with this
change.  OK for the trunk?

PR target/117628
libgcc/
* config/csky/linux-atomic.c (bool): Remove unnecessary typedef.
* unwind-arm-common.inc (bool): Similarly.

libgcc/config/csky/linux-atomic.c
libgcc/unwind-arm-common.inc

index 15c38156c778ef340fc40ca571953cb25f2cf3a5..27448554730871449c49e2f7d061a51f05154bbe 100644 (file)
@@ -215,8 +215,6 @@ __sync_val_compare_and_swap_4 (int *ptr, int oldval, int newval)
 SUBWORD_VAL_CAS (unsigned short, 2)
 SUBWORD_VAL_CAS (unsigned char,        1)
 
-typedef unsigned char bool;
-
 bool HIDDEN
 __sync_bool_compare_and_swap_4 (int *ptr, int oldval, int newval)
 {
index 576f7e93e8a8c044073aceed142b10fdf8f23eaa..1e9a58dbab2aba676d5649f167b807da5b240a45 100644 (file)
@@ -52,8 +52,6 @@
 
 /* Definitions for C++ runtime support routines.  We make these weak
    declarations to avoid pulling in libsupc++ unnecessarily.  */
-typedef unsigned char bool;
-
 typedef struct _ZSt9type_info type_info; /* This names C++ type_info type */
 enum __cxa_type_match_result
   {