aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.base')
-rw-r--r--gdb/testsuite/gdb.base/list-ambiguous.exp37
-rw-r--r--gdb/testsuite/gdb.base/list-ambiguous0.c5
-rw-r--r--gdb/testsuite/gdb.base/list-ambiguous1.c5
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;