https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117629
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #4) > Under libgcc: > ``` > [apinski@xeond2 config]$ git grep bool|grep typedef > arm/freebsd-atomic.c:typedef unsigned char bool; > arm/linux-atomic-64bit.c:typedef unsigned char bool; > arm/linux-atomic.c:typedef unsigned char bool; > avr/libf7/libf7.h:typedef _Bool bool; > csky/linux-atomic.c:typedef unsigned char bool; > nds32/linux-atomic.c:typedef unsigned char bool; > nios2/linux-atomic.c:typedef unsigned char bool; > pa/linux-atomic.c:typedef unsigned char bool; > ``` > > arm linux is filed as PR 117628 . > pa is filed as PR 117627 . > > I will look at the other 5 in a few minutes. so avr can be removed. nds32, nios2 and csky can be removed and __sync_bool_compare_and_swap_4/SUBWORD_BOOL_CAS will cahnge return type to be `unsigned char`. I don't know if changing to bool would change the ABI so just change the return type. arm/freebsd-atomic.c is similar to csky (and others).