From 8f7c06df424fffa88422f83ba0a7c58576ae3d91 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 11 Jul 2024 16:07:06 -0700 Subject: [PATCH] libbacktrace: fix testsuite for clang * btest.c (test1, test3): Add optnone attribute. * edtest.c (test1): Likewise. * mtest.c (test1, test3): Likewise. * configure.ac: Use -Wno-attributes and -Wno-unknown-attributes. * configure: Regenerate. --- libbacktrace/btest.c | 4 ++-- libbacktrace/configure | 3 ++- libbacktrace/configure.ac | 3 ++- libbacktrace/edtest.c | 2 +- libbacktrace/mtest.c | 4 ++-- 5 files changed, 9 insertions(+), 7 deletions(-) diff --git a/libbacktrace/btest.c b/libbacktrace/btest.c index d9fc372d33d..c4b2db2cce2 100644 --- a/libbacktrace/btest.c +++ b/libbacktrace/btest.c @@ -49,7 +49,7 @@ POSSIBILITY OF SUCH DAMAGE. */ /* Test the backtrace function with non-inlined functions. */ -static int test1 (void) __attribute__ ((noinline, noclone, unused)); +static int test1 (void) __attribute__ ((noinline, noclone, optnone, unused)); static int f2 (int) __attribute__ ((noinline, noclone)); static int f3 (int, int) __attribute__ ((noinline, noclone)); @@ -163,7 +163,7 @@ f13 (int f1line, int f2line) /* Test the backtrace_simple function with non-inlined functions. */ -static int test3 (void) __attribute__ ((noinline, noclone, unused)); +static int test3 (void) __attribute__ ((noinline, noclone, optnone, unused)); static int f22 (int) __attribute__ ((noinline, noclone)); static int f23 (int, int) __attribute__ ((noinline, noclone)); diff --git a/libbacktrace/configure b/libbacktrace/configure index ab94a85f45c..fe0bb2083eb 100755 --- a/libbacktrace/configure +++ b/libbacktrace/configure @@ -12384,7 +12384,8 @@ WARN_FLAGS= save_CFLAGS="$CFLAGS" for real_option in -W -Wall -Wwrite-strings -Wstrict-prototypes \ -Wmissing-prototypes -Wold-style-definition \ - -Wmissing-format-attribute -Wcast-qual; do + -Wmissing-format-attribute -Wcast-qual \ + -Wno-attributes -Wno-unknown-attributes; do # Do the check with the no- prefix removed since gcc silently # accepts any -Wno-* option on purpose case $real_option in diff --git a/libbacktrace/configure.ac b/libbacktrace/configure.ac index 59e9c415db8..bfd7f35d2d2 100644 --- a/libbacktrace/configure.ac +++ b/libbacktrace/configure.ac @@ -144,7 +144,8 @@ AC_SUBST(EXTRA_FLAGS) ACX_PROG_CC_WARNING_OPTS([-W -Wall -Wwrite-strings -Wstrict-prototypes \ -Wmissing-prototypes -Wold-style-definition \ - -Wmissing-format-attribute -Wcast-qual], + -Wmissing-format-attribute -Wcast-qual \ + -Wno-attributes -Wno-unknown-attributes], [WARN_FLAGS]) AC_ARG_ENABLE([werror], diff --git a/libbacktrace/edtest.c b/libbacktrace/edtest.c index d99b8a60295..b644d93788c 100644 --- a/libbacktrace/edtest.c +++ b/libbacktrace/edtest.c @@ -43,7 +43,7 @@ POSSIBILITY OF SUCH DAMAGE. */ #include "testlib.h" -static int test1 (void) __attribute__ ((noinline, noclone, unused)); +static int test1 (void) __attribute__ ((noinline, noclone, optnone, unused)); extern int f2 (int); extern int f3 (int, int); diff --git a/libbacktrace/mtest.c b/libbacktrace/mtest.c index 9afe7089514..f793391653d 100644 --- a/libbacktrace/mtest.c +++ b/libbacktrace/mtest.c @@ -47,7 +47,7 @@ POSSIBILITY OF SUCH DAMAGE. */ #include "testlib.h" -static int test1 (void) __attribute__ ((noinline, noclone, unused)); +static int test1 (void) __attribute__ ((noinline, noclone, optnone, unused)); static int f2 (int) __attribute__ ((noinline, noclone)); static int f3 (int, int) __attribute__ ((noinline, noclone)); @@ -211,7 +211,7 @@ f3 (int f1line __attribute__ ((unused)), int f2line __attribute__ ((unused))) /* Test the backtrace_simple function with non-inlined functions. */ -static int test3 (void) __attribute__ ((noinline, noclone, unused)); +static int test3 (void) __attribute__ ((noinline, noclone, optnone, unused)); static int f22 (int) __attribute__ ((noinline, noclone)); static int f23 (int, int) __attribute__ ((noinline, noclone));