[glibc] chk: Add and fix hidden builtin definitions for *_chk

Samuel Thibault sthibaul@sourceware.org
Fri Aug 4 08:05:11 GMT 2023


Ah, right, powerpc has its own longjmp.c. Now fixed.

Andreas Schwab, le ven. 04 août 2023 09:41:10 +0200, a ecrit:
> In file included from <command-line>:
> ../include/setjmp.h:19:20: error: redefinition of '__longjmp_chk'
>    19 | #define siglongjmp __longjmp_chk
>       |                    ^~~~~~~~~~~~~
> ./../include/libc-symbols.h:155:26: note: in definition of macro '_weak_alias'
>   155 |   extern __typeof (name) aliasname __attribute__ ((weak, alias (#name))) \
>       |                          ^~~~~~~~~
> ../include/shlib-compat.h:117:3: note: in expansion of macro 'weak_alias'
> [  135s]   117 |   weak_alias (local, symbol)
>       |   ^~~~~~~~~~
> ../sysdeps/powerpc/longjmp.c:56:1: note: in expansion of macro 'versioned_symbol'
>    56 | versioned_symbol (libc, __vmx__libc_siglongjmp, siglongjmp, GLIBC_2_3_4);
>       | ^~~~~~~~~~~~~~~~
> ../sysdeps/powerpc/longjmp.c:56:49: note: in expansion of macro 'siglongjmp'
>    56 | versioned_symbol (libc, __vmx__libc_siglongjmp, siglongjmp, GLIBC_2_3_4);
>       |                                                 ^~~~~~~~~~
> ../include/setjmp.h:18:17: note: previous definition of '__longjmp_chk' with type 'void(struct __jmp_buf_tag *, int)'
>    18 | #define longjmp __longjmp_chk
>       |                 ^~~~~~~~~~~~~
> ./../include/libc-symbols.h:155:26: note: in definition of macro '_weak_alias'
>   155 |   extern __typeof (name) aliasname __attribute__ ((weak, alias (#name))) \
>       |                          ^~~~~~~~~
> ../include/shlib-compat.h:117:3: note: in expansion of macro 'weak_alias'
>   117 |   weak_alias (local, symbol)
>       |   ^~~~~~~~~~
> ../sysdeps/powerpc/longjmp.c:55:1: note: in expansion of macro 'versioned_symbol'
>    55 | versioned_symbol (libc, __vmx__libc_siglongjmp, longjmp, GLIBC_2_3_4);
>       | ^~~~~~~~~~~~~~~~
> ../sysdeps/powerpc/longjmp.c:55:49: note: in expansion of macro 'longjmp'
>    55 | versioned_symbol (libc, __vmx__libc_siglongjmp, longjmp, GLIBC_2_3_4);
>       |                                                 ^~~~~~~
> make[2]: *** [/home/abuild/rpmbuild/BUILD/glibc-2.38.9000.12.g04bf7d2d8a/cc-base/sysd-rules:1773: /home/abuild/rpmbuild/BUILD/glibc-2.38.9000.12.g04bf7d2d8a/cc-base/setjmp/longjmp.o] Error 1


More information about the Libc-alpha mailing list