gcc/libstdc++-v3/testsuite
Rainer Orth d92b508dd1 libstdc++: Build libbacktrace and 19_diagnostics/stacktrace with -funwind-tables [PR111641]
Several of the 19_diagnostics/stacktrace tests FAIL on Solaris/SPARC (32
and 64-bit), Solaris/x86 (32-bit only), and several other targets:

FAIL: 19_diagnostics/stacktrace/current.cc  -std=gnu++23 execution test
FAIL: 19_diagnostics/stacktrace/current.cc  -std=gnu++26 execution test
FAIL: 19_diagnostics/stacktrace/entry.cc  -std=gnu++23 execution test
FAIL: 19_diagnostics/stacktrace/entry.cc  -std=gnu++26 execution test
FAIL: 19_diagnostics/stacktrace/output.cc  -std=gnu++23 execution test
FAIL: 19_diagnostics/stacktrace/output.cc  -std=gnu++26 execution test
FAIL: 19_diagnostics/stacktrace/stacktrace.cc  -std=gnu++23 execution test
FAIL: 19_diagnostics/stacktrace/stacktrace.cc  -std=gnu++26 execution test

As it turns out, both the copy of libbacktrace in libstdc++ and the
testcases proper need to compiled with -funwind-tables, as is done for
libbacktrace itself.

This isn't an issue on Linux/x86_64 and Solaris/amd64 since 64-bit x86
always defaults to -funwind-tables.  32-bit x86 does, too, when
-fomit-frame-pointer is enabled as on Linux/i686, but unlike
Solaris/i386.

So this patch always enables the option both for the libbacktrace copy
and the testcases.

Tested on i386-pc-solaris2.11, sparc-sun-solaris2.11, and
x86_64-pc-linux-gnu.

2024-05-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	libstdc++-v3:
	PR libstdc++/111641
	* src/libbacktrace/Makefile.am (AM_CFLAGS): Add -funwind-tables.
	* src/libbacktrace/Makefile.in: Regenerate.

	* testsuite/19_diagnostics/stacktrace/current.cc (dg-options): Add
	-funwind-tables.
	* testsuite/19_diagnostics/stacktrace/entry.cc: Likewise.
	* testsuite/19_diagnostics/stacktrace/hash.cc: Likewise.
	* testsuite/19_diagnostics/stacktrace/output.cc: Likewise.
	* testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise.

(cherry picked from commit a99ebb88f8f25e76ebed5afc22e64fa77a2f0d3f)
2024-06-04 09:10:24 +02:00
..
17_intro libstdc++: Workaround kernel-headers on s390x-linux 2024-04-22 18:00:06 +02:00
18_support Update copyright years. 2024-01-03 12:19:35 +01:00
19_diagnostics libstdc++: Build libbacktrace and 19_diagnostics/stacktrace with -funwind-tables [PR111641] 2024-06-04 09:10:24 +02:00
20_util libstdc++: Fix <memory> for -std=c++23 -ffreestanding [PR114866] 2024-05-14 10:50:19 +01:00
21_strings libstdc++: Fix tests that fail with -fno-char8_t 2024-04-08 17:44:18 +01:00
22_locale libstdc++: Implement C++26 std::text_encoding (P1885R12) [PR113318] 2024-01-17 11:49:11 +00:00
23_containers libstdc++: Replace stacktrace effective target with feature test 2024-03-26 11:32:55 +00:00
24_iterators libstdc++-v3: drop GCC Runtime Library Exception from gen tests 2024-03-29 12:50:06 +01:00
25_algorithms libstdc++: Add nodiscard in <algorithm> 2024-03-14 16:58:15 +00:00
26_numerics libstdc++: Fix infinite loop in std::binomial_distribution [PR114359] 2024-03-19 15:59:44 +00:00
27_io libstdc++: Implement "Printing blank lines with println" for C++23 2024-04-17 17:33:10 +01:00
28_regex Update copyright years. 2024-01-03 12:19:35 +01:00
29_atomics [libstdc++] [testsuite] disable SRA for compare_exchange_padding 2024-04-18 08:03:56 -03:00
30_threads libstdc++: Implement std::formatter<std:🧵:id> without <sstream> [PR115099] 2024-05-22 10:06:52 +01:00
abi Update copyright years. 2024-01-03 12:19:35 +01:00
backward Update copyright years. 2024-01-03 12:19:35 +01:00
config Update copyright years. 2024-01-03 12:19:35 +01:00
data
decimal Update copyright years. 2024-01-03 12:19:35 +01:00
experimental libstdc++: Fix conversion of simd to vector builtin 2024-04-22 20:56:26 +02:00
ext libstdc++: Fix typo in _Grapheme_cluster_view::_Iterator [PR115119] 2024-05-17 13:48:43 +01:00
lib libstdc++: Replace stacktrace effective target with feature test 2024-03-26 11:32:55 +00:00
libstdc++-abi Update copyright years. 2024-01-03 12:19:35 +01:00
libstdc++-dg Update copyright years. 2024-01-03 12:19:35 +01:00
libstdc++-prettyprinters libstdc++: Move test error_category to global scope 2024-03-13 21:25:14 +00:00
libstdc++-xmethods Update copyright years. 2024-01-03 12:19:35 +01:00
performance Update copyright years. 2024-01-03 12:19:35 +01:00
special_functions Update copyright years. 2024-01-03 12:19:35 +01:00
std libstdc++: Do not apply localized formatting to NaN and inf [PR114863] 2024-04-30 09:36:44 +01:00
tr1 libstdc++: Fix testsuite with -Wformat 2024-01-06 15:11:33 +00:00
tr2 Update copyright years. 2024-01-03 12:19:35 +01:00
util libstdc++: Update ABI test to disallow adding to released symbol versions 2024-05-14 10:50:19 +01:00
Makefile.am Update copyright years. 2024-01-03 12:19:35 +01:00
Makefile.in libstdc++: Add support for running tests with multiple -std options 2023-09-15 21:57:38 +01:00