Imported Upstream version 7.9
[platform/upstream/gdb.git] / gdb / testsuite / gdb.base / dbx.exp
index 06638c7..19dba62 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 1998-2014 Free Software Foundation, Inc.
+# Copyright 1998-2015 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
@@ -243,10 +243,12 @@ proc gdb_file_cmd {arg} {
 #test_breakpoints
 #
 proc test_breakpoints { } {
-    gdb_test "stop in main" "Breakpoint.*at.*: file.*average\.c, line 38\."
-    gdb_test "status" "Num.*Type.*Disp.*Enb.*Address.*What\r\n1\[ \r\]+breakpoint\[ \r\]+keep y.*in main at.*average\.c:38.*"
-    gdb_test "stop at average.c:43" "Breakpoint.*at.*: file.*average\.c, line 43.*"
-    gdb_test "stop in average.c:43" "Usage: stop in <function . address>"
+    set stop_line [gdb_get_line_number "stop-in-main"]
+    gdb_test "stop in main" "Breakpoint.*at.*: file.*average\.c, line $stop_line\."
+    gdb_test "status" "Num.*Type.*Disp.*Enb.*Address.*What\r\n1\[ \r\]+breakpoint\[ \r\]+keep y.*in main at.*average\.c:$stop_line.*"
+    set stop_line [gdb_get_line_number "stop-at-call"]
+    gdb_test "stop at average.c:$stop_line" "Breakpoint.*at.*: file.*average\.c, line $stop_line.*"
+    gdb_test "stop in average.c:$stop_line" "Usage: stop in <function . address>"
     gdb_test "stop at main" "Usage: stop at <line>"
 }
 
@@ -258,11 +260,14 @@ proc test_assign { } {
     global gdb_prompt
 
     gdb_run_cmd
-    gdb_expect 30 {
-        -re "Break.* at .*:$decimal.*$gdb_prompt $" { pass "running to main" }
-        -re "Breakpoint \[0-9\]*, \[0-9xa-f\]* in .*$gdb_prompt $" { pass "running to main"  }
-        -re "$gdb_prompt $" { fail "running to main" }
-        timeout { fail "running to main (timeout)" }
+    set test "running to main"
+    gdb_test_multiple "" $test {
+        -re "Break.* at .*:$decimal.*$gdb_prompt $" {
+           pass $test
+       }
+        -re "Breakpoint \[0-9\]*, \[0-9xa-f\]* in .*$gdb_prompt $" {
+           pass $test
+       }
     }
     send_gdb "assign first=1\n"
     gdb_expect {
@@ -284,16 +289,19 @@ proc test_whereis { } {
 #test_func
 #
 proc test_func { } {
+    global decimal
+    global srcfile2
     gdb_test "cont" ".*" "cont 1"
     gdb_test "step" ".*"
     # This always fails, but it's not clear why. -sts 1999-08-17
     setup_xfail "*-*-*"
     gdb_test "func sum" "'sum' not within current stack frame\."
-    gdb_test "stop in sum" "Breakpoint.*at.*: file.*sum\.c, line 11\."
+    set stop_line [gdb_get_line_number "stop-in-sum" $srcfile2]
+    gdb_test "stop in sum" "Breakpoint.*at.*: file.*sum\.c, line $stop_line\."
     gdb_test "cont" ".*" "cont 2"
     # This always fails, but it's not clear why. -sts 1999-08-17
     setup_xfail "*-*-*"
-    gdb_test "func print_average" ".*in print_average.*\\(list=.*, low=0, high=6\\).*at.*average\.c:24\r\n24\[ \t\]+total = sum\\(list, low, high\\);"
+    gdb_test "func print_average" ".*in print_average.*\\(list=.*, low=0, high=6\\).*at.*average\.c:${decimal}\r\n\${decimal}\[ \t\]+total = sum\\(list, low, high\\);"
 }
 
 # Start with a fresh gdb.