diff options
author | Daniel Jacobowitz <drow@false.org> | 2010-08-30 17:38:10 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2010-08-30 17:38:10 +0000 |
commit | 640617ad17a526e78796054d1da3d652ae5c8dc9 (patch) | |
tree | 07c3c7700563fb65d76326cecf2a34c31c6444e5 | |
parent | 25b41d01eaa6f8f68491ef2eb65ca403907269f7 (diff) | |
download | gdb-640617ad17a526e78796054d1da3d652ae5c8dc9.zip gdb-640617ad17a526e78796054d1da3d652ae5c8dc9.tar.gz gdb-640617ad17a526e78796054d1da3d652ae5c8dc9.tar.bz2 |
* gdb.cp/cpexprs.exp (test_breakpoint): Continue to test_function
instead of running to main. Do not test the main function.
* gdb/testsuite/gdb.cp/cpexprs.cc (main): Rename to test_function.
Add new main.
-rw-r--r-- | gdb/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/cpexprs.cc | 18 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/cpexprs.exp | 17 |
3 files changed, 34 insertions, 8 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index bcfb01e..00c599a 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2010-08-30 Daniel Jacobowitz <dan@codesourcery.com> + + * gdb.cp/cpexprs.exp (test_breakpoint): Continue to test_function + instead of running to main. Do not test the main function. + * gdb/testsuite/gdb.cp/cpexprs.cc (main): Rename to test_function. + Add new main. + 2010-08-26 Pedro Alves <pedro@codesourcery.com> * gdb.mi/mi-nsmoribund.exp: Revert back to send_gdb/gdb_expect in diff --git a/gdb/testsuite/gdb.cp/cpexprs.cc b/gdb/testsuite/gdb.cp/cpexprs.cc index 2bca4cd..ac79666 100644 --- a/gdb/testsuite/gdb.cp/cpexprs.cc +++ b/gdb/testsuite/gdb.cp/cpexprs.cc @@ -309,8 +309,8 @@ class derived : public base1, public base2 }; int -main (int argc, char* argv[]) // main -{ // main +test_function (int argc, char* argv[]) // test_function +{ // test_function derived d; void (derived::*pfunc) (void) const = &derived::a_function; (d.*pfunc) (); @@ -427,5 +427,19 @@ main (int argc, char* argv[]) // main char* str = a; fluff* flp = a; fluff** flpp = a; + + return 0; } +int +main (int argc, char* argv[]) +{ + int i; + + /* Call the test function repeatedly, enough times for all our tests + without running forever if something goes wrong. */ + for (i = 0; i < 1000; i++) + test_function (argc, argv); + + return 0; +} diff --git a/gdb/testsuite/gdb.cp/cpexprs.exp b/gdb/testsuite/gdb.cp/cpexprs.exp index 2addc1e..818e5e0 100644 --- a/gdb/testsuite/gdb.cp/cpexprs.exp +++ b/gdb/testsuite/gdb.cp/cpexprs.exp @@ -24,9 +24,14 @@ proc test_breakpoint {func} { global DEC - # Restart every time - if {![runto_main]} { - perror "could not run to main when attempting to break at $func" + # Return to the top of the test function every time. + delete_breakpoints + if { ! [gdb_breakpoint test_function] } { + fail "set test_function breakpoint for $func" + } elseif { [gdb_test "continue" \ + "Continuing.\r\n\r\nBreakpoint $DEC+,.*test_function.*" \ + ""] != 0 } { + fail "continue to test_function for $func" } else { gdb_breakpoint "$func" set i [expr {[string last : $func] + 1}] @@ -113,7 +118,7 @@ set ADDR "0x$HEX+"; # address array set all_functions {} # "Normal" functions/methods -add {main} \ +add {test_function} \ {int (int, char **)} \ - \ - @@ -717,8 +722,8 @@ foreach name [get_functions list] { # Running to breakpoint -- use any function we can "list" foreach name [get_functions list] { - # Skip "main", since test_breakpoint uses it - if {[string compare $name "main"] != 0} { + # Skip "test_function", since test_breakpoint uses it + if {[string compare $name "test_function"] != 0} { test_breakpoint $name } } |