[gdb/testsuite] Fix gdb.base/list-no-debug.exp on debian

On debian 12, aarch64-linux I run into:
...
(gdb) list .^M
No symbol table is loaded.  Use the "file" command.^M
(gdb) FAIL: gdb.base/list-nodebug.exp: first 'list .'
...

The test-case expects some debug info, but none for main.  Instead, there's no
debug info at all.

Fix this by adding another source file to the test-case, and compiling it with
debug info.

Tested on aarch64-linux.

Approved-By: Andrew Burgess <aburgess@redhat.com>

PR testsuite/31290
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31290
This commit is contained in:
Tom de Vries
2024-03-17 16:48:43 +01:00
parent 04d7f8a5bc
commit 42db3e48c5
3 changed files with 35 additions and 5 deletions

View File

@@ -0,0 +1,24 @@
/* This testcase is part of GDB, the GNU debugger.
Copyright 2024 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
extern int foo (void);
int
foo (void)
{
return 0;
}

View File

@@ -15,7 +15,10 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
int main ()
extern int foo (void);
int
main (void)
{
return 0;
return foo ();
}

View File

@@ -16,10 +16,13 @@
# Test that using the command "list" in a file with no debug information
# will not crash GDB and will give reasonable output.
standard_testfile .c
standard_testfile .c -2.c
if {[prepare_for_testing "failed to prepare" ${testfile} ${srcfile} \
{nodebug}]} {
if { [prepare_for_testing_full "failed to prepare" \
[list \
$testfile {} \
$srcfile {nodebug} \
$srcfile2 {debug}]] } {
return -1
}