https://gcc.gnu.org/bugzilla/show_bug.cgi?id=128487
Bug ID: 128487
Summary: Unable to run
19_diagnostics/stacktrace/{entry,output,stacktrace}.cc
tests on arm-none-eabi
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: azoff at gcc dot gnu.org
Target Milestone: ---
On arm-none-eabi, I see failures like:
FAIL: 19_diagnostics/stacktrace/entry.cc -std=gnu++23 execution test
FAIL: 19_diagnostics/stacktrace/entry.cc -std=gnu++29 execution test
FAIL: 19_diagnostics/stacktrace/output.cc -std=gnu++23 execution test
FAIL: 19_diagnostics/stacktrace/output.cc -std=gnu++29 execution test
FAIL: 19_diagnostics/stacktrace/stacktrace.cc -std=gnu++23 execution test
FAIL: 19_diagnostics/stacktrace/stacktrace.cc -std=gnu++29 execution test
The reason for the failures is that libbacktrace has no way to find the symbols
for the running embedded application.
Example log entry, similar entries exist for the other failures:
Testing stacktrace/entry.cc, -std=gnu++23
doing compile
Executing on host: arm-none-eabi-g++ -fmessage-length=0 -fno-show-column -g
-O2 -DLOCALEDIR="." -std=gnu++29 -Werror
-I/build/gcc_src/libstdc++-v3/testsuite/util cpp_feature_test997360.cc
-mthumb -march=armv7ve+nofp -mcpu=cortex-a7 -mfloat-abi=soft -mfpu=auto
-fdiagnostics-plain-output -Wabi=20 -E -o /dev/null (timeout = 360)
spawn -ignore SIGHUP arm-none-eabi-g++ -fmessage-length=0 -fno-show-column -g
-O2 -DLOCALEDIR="." -std=gnu++29 -Werror
-I/build/gcc_src/libstdc++-v3/testsuite/util cpp_feature_test997360.cc -mthumb
-march=armv7ve+nofp -mcpu=cortex-a7 -mfloat-abi=soft -mfpu=auto
-fdiagnostics-plain-output -Wabi=20 -E -o /dev/null
pid is 1153572 -1153572
pid is -1
output is status 0
extra_tool_flags are: -std=gnu++23 -funwind-tables -lstdc++exp
doing compile
Executing on host: arm-none-eabi-g++ -fmessage-length=0 -fno-show-column -g
-O2 -DLOCALEDIR="." -I/build/gcc_src/libstdc++-v3/testsuite/util
/build/gcc_src/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc
libstdc++_tg.o -mthumb -march=armv7ve+nofp -mcpu=cortex-a7 -mfloat-abi=soft
-mfpu=auto -std=gnu++23 -funwind-tables -lstdc++exp
-fdiagnostics-plain-output -Wabi=20 ./libtestc++.a --specs=rdimon.specs
-Wl,--start-group -lc -lm -Wl,--end-group --specs=nosys.specs
-Wl,--allow-multiple-definition -Wl,-u,_isatty,-u,_fstat -Wl,-wrap,exit
-Wl,-wrap,_exit -Wl,-wrap,main -Wl,-wrap,abort -lm -T qemu.ld -o ./entry.exe
(timeout = 360)
spawn -ignore SIGHUP arm-none-eabi-g++ -fmessage-length=0 -fno-show-column -g
-O2 -DLOCALEDIR="." -I/build/gcc_src/libstdc++-v3/testsuite/util
/build/gcc_src/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc
libstdc++_tg.o -mthumb -march=armv7ve+nofp -mcpu=cortex-a7 -mfloat-abi=soft
-mfpu=auto -std=gnu++23 -funwind-tables -lstdc++exp -fdiagnostics-plain-output
-Wabi=20 ./libtestc++.a --specs=rdimon.specs -Wl,--start-group -lc -lm
-Wl,--end-group --specs=nosys.specs -Wl,--allow-multiple-definition
-Wl,-u,_isatty,-u,_fstat -Wl,-wrap,exit -Wl,-wrap,_exit -Wl,-wrap,main
-Wl,-wrap,abort -lm -T qemu.ld -o ./entry.exe
pid is 1153638 -1153638
pid is -1
output is status 0
PASS: 19_diagnostics/stacktrace/entry.cc -std=gnu++23 (test for excess errors)
spawning command qemu-system-arm -nographic -machine virt -cpu cortex-a7 -m
256 -semihosting -monitor /dev/null -kernel ./entry.exe
spawn qemu-system-arm -nographic -machine virt -cpu cortex-a7 -m 256
-semihosting -monitor /dev/null -kernel ./entry.exe
/build/gcc_src/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc:39:
void test_members(): Assertion 'e1.source_line() == (__LINE__ - 5)' failed.
*** EXIT code 4242
*** EXIT code 1
pid is -1
Shell closed.
Output is
/build/gcc_src/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc:39:
void test_members(): Assertion 'e1.source_line() == (__LINE__ - 5)' failed.
*** EXIT code 4242
*** EXIT code 1
FAIL: 19_diagnostics/stacktrace/entry.cc -std=gnu++23 execution test
Above log snippet is from running r17-5950-g5a5ad4c11dbdfa with
thumb/arch=armv7ve+nofp/cpu=cortex-a7/float-abi=soft/fpu=auto