diff options
Diffstat (limited to 'gdb/testsuite/gdb.base')
-rw-r--r-- | gdb/testsuite/gdb.base/list-ambiguous.exp | 37 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/list-ambiguous0.c | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/list-ambiguous1.c | 5 |
3 files changed, 27 insertions, 20 deletions
diff --git a/gdb/testsuite/gdb.base/list-ambiguous.exp b/gdb/testsuite/gdb.base/list-ambiguous.exp index db9d028..dd473ca 100644 --- a/gdb/testsuite/gdb.base/list-ambiguous.exp +++ b/gdb/testsuite/gdb.base/list-ambiguous.exp @@ -39,36 +39,41 @@ proc line_range_pattern { range_start range_end } { # Test the "list" command with linespecs that expand to multiple # locations. -proc test_list_ambiguous_function {} { +proc test_list_ambiguous_symbol {symbol_line symbol} { global srcfile srcfile2 - set lineno0 [gdb_get_line_number "ambiguous (void)" $srcfile] - set lineno1 [gdb_get_line_number "ambiguous (void)" $srcfile2] + set lineno0 [gdb_get_line_number $symbol_line $srcfile] + set lineno1 [gdb_get_line_number $symbol_line $srcfile2] set lines0_re [line_range_pattern [expr $lineno0 - 5] [expr $lineno0 + 4]] set lines1_re [line_range_pattern [expr $lineno1 - 5] [expr $lineno1 + 4]] set any "\[^\r\n\]*" set h0_re "file: \"${any}list-ambiguous0.c\", line number: $lineno0" set h1_re "file: \"${any}list-ambiguous1.c\", line number: $lineno1" - gdb_test "list ambiguous" "${h0_re}${lines0_re}\r\n${h1_re}${lines1_re}" - - gdb_test "list main,ambiguous" \ - "Specified last line 'ambiguous' is ambiguous:\r\n${h0_re}\r\n${h1_re}" - gdb_test "list ,ambiguous" \ - "Specified last line 'ambiguous' is ambiguous:\r\n${h0_re}\r\n${h1_re}" - gdb_test "list ambiguous,main" \ - "Specified first line 'ambiguous' is ambiguous:\r\n${h0_re}\r\n${h1_re}" - gdb_test "list ambiguous,ambiguous" \ - "Specified first line 'ambiguous' is ambiguous:\r\n${h0_re}\r\n${h1_re}" - gdb_test "list ambiguous," \ - "Specified first line 'ambiguous' is ambiguous:\r\n${h0_re}\r\n${h1_re}" + gdb_test "list $symbol" "${h0_re}${lines0_re}\r\n${h1_re}${lines1_re}" + + gdb_test "list main,$symbol" \ + "Specified last line '$symbol' is ambiguous:\r\n${h0_re}\r\n${h1_re}" + gdb_test "list ,$symbol" \ + "Specified last line '$symbol' is ambiguous:\r\n${h0_re}\r\n${h1_re}" + gdb_test "list $symbol,main" \ + "Specified first line '$symbol' is ambiguous:\r\n${h0_re}\r\n${h1_re}" + gdb_test "list $symbol,$symbol" \ + "Specified first line '$symbol' is ambiguous:\r\n${h0_re}\r\n${h1_re}" + gdb_test "list $symbol," \ + "Specified first line '$symbol' is ambiguous:\r\n${h0_re}\r\n${h1_re}" # While at it, test the "edit" command as well, since it shares # code with "list". - gdb_test "edit ambiguous" \ + gdb_test "edit $symbol" \ "Specified line is ambiguous:\r\n${h0_re}\r\n${h1_re}" } +proc test_list_ambiguous_function {} { + test_list_ambiguous_symbol "ambiguous_fun (void)" "ambiguous_fun" + test_list_ambiguous_symbol "ambiguous_var" "ambiguous_var" +} + gdb_test_no_output "set listsize 10" test_list_ambiguous_function diff --git a/gdb/testsuite/gdb.base/list-ambiguous0.c b/gdb/testsuite/gdb.base/list-ambiguous0.c index 91f7fe9..afd9457 100644 --- a/gdb/testsuite/gdb.base/list-ambiguous0.c +++ b/gdb/testsuite/gdb.base/list-ambiguous0.c @@ -19,12 +19,13 @@ -/* This function is defined in both +/* These symbols are defined in both list-ambiguous0.c/list-ambiguous1.c files, in order to test "list"'s behavior with ambiguous linespecs. */ -static void __attribute__ ((used)) ambiguous (void) {} +static void __attribute__ ((used)) ambiguous_fun (void) {} +static int ambiguous_var; diff --git a/gdb/testsuite/gdb.base/list-ambiguous1.c b/gdb/testsuite/gdb.base/list-ambiguous1.c index 024299a..69db11e 100644 --- a/gdb/testsuite/gdb.base/list-ambiguous1.c +++ b/gdb/testsuite/gdb.base/list-ambiguous1.c @@ -23,11 +23,12 @@ -/* This function is defined in both +/* These symbols are defined in both list-ambiguous0.c/list-ambiguous1.c files, in order to test "list"'s behavior with ambiguous linespecs. */ -static void __attribute__ ((used)) ambiguous (void) {} +static void __attribute__ ((used)) ambiguous_fun (void) {} +static int ambiguous_var; |