mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-11-16 12:34:43 +00:00
[gdb/testsuite] Use -nostdlib in gdb.linespec/explicit.exp
On openSUSE Leap 15.6 ppc64le-linux, with gdb.linespec/explicit.exp I run into: ... (gdb) b -source thread_pointer.h FAIL: $exp: complete after -source: tab complete "b -source thr" Quit^M ... The test-case already contains a related workaround: ... # Get rid of symbols from shared libraries, otherwise # "b -source thr<tab>" could find some system library's # source. gdb_test_no_output "nosharedlibrary" ... but that doesn't work in this case because the debug info is in the executable itself: ... The File Name Table (offset 0xb5): Entry Dir Time Size Name 1 0 0 0 abi-note.c 2 1 0 0 types.h 3 2 0 0 stdint-intn.h 4 2 0 0 stdint-uintn.h 5 3 0 0 elf.h 6 4 0 0 thread_pointer.h ... due to debug info in some glibc object file. Fix this by: - using -nostdlib, ensuring only debug info from the three test-case sources is present in the executable, and - adding a _start wrapping main. Tested on x86_64-linux and ppc64le-linux. Reviewed-By: Keith Seitz <keiths@redhat.com> PR testsuite/31229 Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31229
This commit is contained in:
@@ -69,3 +69,9 @@ main (void)
|
||||
|
||||
return myfunction2 (j);
|
||||
}
|
||||
|
||||
void
|
||||
_start (void)
|
||||
{
|
||||
main ();
|
||||
}
|
||||
|
||||
@@ -20,8 +20,13 @@ load_lib completion-support.exp
|
||||
standard_testfile explicit.c explicit2.c 3explicit.c
|
||||
set exefile $testfile
|
||||
|
||||
set opts {}
|
||||
lappend opts debug
|
||||
lappend opts nowarnings
|
||||
lappend opts additional_flags=-nostdlib
|
||||
|
||||
if {[prepare_for_testing "failed to prepare" $exefile \
|
||||
[list $srcfile $srcfile2 $srcfile3] {debug nowarnings}]} {
|
||||
[list $srcfile $srcfile2 $srcfile3] $opts]} {
|
||||
return -1
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user