aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorMartin Sebor <msebor@redhat.com>2016-10-05 15:21:40 +0000
committerMartin Sebor <msebor@gcc.gnu.org>2016-10-05 09:21:40 -0600
commit73e1414cb829d02baef1bf241d4bdf3805f6f724 (patch)
tree5f4fbd30346870c8eac86f2d6908619cb5dc3b0f /gcc/config
parent9563bfcdb4f236f218be52f8ff05bcd6527cac28 (diff)
downloadgcc-73e1414cb829d02baef1bf241d4bdf3805f6f724.zip
gcc-73e1414cb829d02baef1bf241d4bdf3805f6f724.tar.gz
gcc-73e1414cb829d02baef1bf241d4bdf3805f6f724.tar.bz2
PR bootstrap/77819 - undefined reference to gnu_libc_printf_pointer_format with uClibc
gcc/ChangeLog: PR bootstrap/77819 * config/linux.h (TARGET_PRINTF_POINTER_FORMAT): Define macro. * config/linux.c (gnu_libc_printf_pointer_format): Remove. * targhooks.c [DEFAULT_LIBC == LIBC_UCLIBC) && SINGLE_LIBC] (default_printf_pointer_format): Define function. * targhooks.c (linux_printf_pointer_format): Define new function. * targhooks.h (linux_printf_pointer_format): Declare. (gnu_libc_printf_pointer_format): Remove declaration. From-SVN: r240793
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/linux.c16
-rw-r--r--gcc/config/linux.h5
2 files changed, 3 insertions, 18 deletions
diff --git a/gcc/config/linux.c b/gcc/config/linux.c
index 9aac38b..a393d3b 100644
--- a/gcc/config/linux.c
+++ b/gcc/config/linux.c
@@ -24,9 +24,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "linux-protos.h"
-#undef TARGET_PRINTF_POINTER_FORMAT
-#define TARGET_PRINTF_POINTER_FORMAT gnu_libc_printf_pointer_format
-
bool
linux_libc_has_function (enum function_class fn_class)
{
@@ -40,16 +37,3 @@ linux_libc_has_function (enum function_class fn_class)
return false;
}
-
-/* Glibc formats pointers as if by "%zx" except for the null pointer
- which outputs "(nil)". It ignores the pound ('#') format flag but
- interprets the space and plus flags the same as in the integer
- directive. */
-
-const char*
-gnu_libc_printf_pointer_format (tree arg, const char **flags)
-{
- *flags = " +";
-
- return arg && integer_zerop (arg) ? "(nil)" : "%#zx";
-}
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
index 3ff005b..7211da2 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -209,6 +209,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#endif
-/* The format string to which "%p" corresponds. */
+/* The format string to which "%p" corresponds (same in Glibc and
+ uClibc. */
#undef TARGET_PRINTF_POINTER_FORMAT
-#define TARGET_PRINTF_POINTER_FORMAT gnu_libc_printf_pointer_format
+#define TARGET_PRINTF_POINTER_FORMAT linux_printf_pointer_format