]> git.ipfire.org Git - thirdparty/glibc.git/commit
ldbl-128ibm-compat: Add local aliases for printf family symbols
authorSachin Monga <smonga@linux.ibm.com>
Mon, 12 Jan 2026 17:40:15 +0000 (12:40 -0500)
committerSachin Monga <smonga@linux.ibm.com>
Mon, 12 Jan 2026 17:40:29 +0000 (12:40 -0500)
commitf05ab7c4a99bc24764580d0d0c7f9b9c7ae2afa1
tree42dae8a887de42a4ea08cc61c99356ed16cf88e1
parente56b3faf8d73e0aa0c73ee55e1648a26b156a93f
ldbl-128ibm-compat: Add local aliases for printf family symbols

When the compiler selects IEEE-128 long double ABI(-mabi=ieeelongdouble),
calls to printf, fprintf, sprintf and snprintf are redirected to the
__printfieee128, __fprintfieee128, __sprintfieee128 and __snprintfieee128
symbols respectively.  This causes "break printf" (and others) in
GDB to fail because the original symbol names do not exist as global
symbols in libc.so.6.

Fix this by adding local symbol aliases in the ieee128 compatibility
files so that the original symbol names are present in the symbol table
again.  This restores the expected GDB behavior ("break printf" works)
without requiring dynamic symbols or versioned compatibility symbols.

Suggested-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
sysdeps/ieee754/ldbl-128ibm-compat/ieee128-fprintf.c
sysdeps/ieee754/ldbl-128ibm-compat/ieee128-printf.c
sysdeps/ieee754/ldbl-128ibm-compat/ieee128-snprintf.c
sysdeps/ieee754/ldbl-128ibm-compat/ieee128-sprintf.c