https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109289
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |pinskia at gcc dot gnu.org
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Florian Weimer from comment #4)
> What I can I do here to help? What's an easy emutls target to build?
--disable-tls is enough to get the warning while building libgcc on
x86_64-linux-gnu:
/home/apinski/src/upstream-gcc-match/gcc/libgcc/emutls.c:61:7: warning:
conflicting types for built-in function ‘__emutls_get_address’; expected ‘void
*(void *)’ [-Wbuiltin-declaration-mismatch]
61 | void *__emutls_get_address (struct __emutls_object *);
| ^~~~~~~~~~~~~~~~~~~~
/home/apinski/src/upstream-gcc-match/gcc/libgcc/emutls.c:63:6: warning:
conflicting types for built-in function ‘__emutls_register_common’; expected
‘void(void *, unsigned int, unsigned int, void *)’
[-Wbuiltin-declaration-mismatch]
63 | void __emutls_register_common (struct __emutls_object *, word, word,
void *);
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/apinski/src/upstream-gcc-match/gcc/libgcc/emutls.c:140:1: warning:
conflicting types for built-in function ‘__emutls_get_address’; expected ‘void
*(void *)’ [-Wbuiltin-declaration-mismatch]
140 | __emutls_get_address (struct __emutls_object *obj)
| ^~~~~~~~~~~~~~~~~~~~
/home/apinski/src/upstream-gcc-match/gcc/libgcc/emutls.c:204:1: warning:
conflicting types for built-in function ‘__emutls_register_common’; expected
‘void(void *, unsigned int, unsigned int, void *)’
[-Wbuiltin-declaration-mismatch]
204 | __emutls_register_common (struct __emutls_object *obj,
| ^~~~~~~~~~~~~~~~~~~~~~~~
The build does not fail.