This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH, doc RFA] Add "skip regexp"


Doug Evans writes:
 > Simon Marchi writes:
 >   > On 16-02-16 08:07 PM, Doug Evans wrote:
 >   > > +# Test -fi + -fu.
 >   > > +
 >   > > +if ![runto_main] {
 >   > > +    fail "Can't run to main"
 >   > > +    return
 >   > > +}
 >   > > +
 >   > > +set test "step using -fi + -fu"
 >   > > +gdb_test_no_output "skip delete"
 >   > > +gdb_test "skip -fi skip1.c -fu test_skip" \
 >   > > +    "Function test_skip in file skip1.c will be skipped when
 > stepping\."
 >   > > +gdb_breakpoint "test_skip_file_and_function"
 >   > > +gdb_breakpoint "end_test_skip_file_and_function"
 >   > > +gdb_test "call test_skip_file_and_function ()" "silently stop."
 >   >
 >   > Hi Doug,
 >   >
> > I just saw a failure of this test on a target that doesn't have inferior
 > calls.  It
> > seems to me like the function call isn't fundamental to the test and it
 > could be
 >   > avoided by organizing things differently.  What do you think?
 >   >
 >   > Otherwise, we would need to add a
 >   >
 >   >   if [target_info exists gdb,cannot_call_functions] {
 >
 > Bleah, righto.
 >
 > Fix forthcoming.
 > I need to cleanup skip.exp first.

2016-03-03  Doug Evans  <dje@google.com>

	* gdb.base/skip.c (main): Call test_skip_file_and_function.
	* gdb.base/skip.exp: Remove hand calling test_skip_file_and_function.

diff --git a/gdb/testsuite/gdb.base/skip.c b/gdb/testsuite/gdb.base/skip.c
index b9db2a7..e43da1e 100644
--- a/gdb/testsuite/gdb.base/skip.c
+++ b/gdb/testsuite/gdb.base/skip.c
@@ -25,8 +25,14 @@ void skip1_test_skip_file_and_function (void);
 int
 main ()
 {
+  int x;
+
   /* Use comma operator to sequence evaluation of bar and foo.  */
-  return baz ((bar (), foo ()));
+  x = baz ((bar (), foo ()));
+
+  test_skip_file_and_function ();
+
+  return 0;
 }

 int
diff --git a/gdb/testsuite/gdb.base/skip.exp b/gdb/testsuite/gdb.base/skip.exp
index 67ae9d9..ce55dd2 100644
--- a/gdb/testsuite/gdb.base/skip.exp
+++ b/gdb/testsuite/gdb.base/skip.exp
@@ -281,17 +281,15 @@ with_test_prefix "step using -rfu for baz" {
 # Test -fi + -fu.

 with_test_prefix "step using -fi + -fu" {
-    if ![runto_main] {
-	fail "Can't run to main"
+    gdb_test_no_output "skip delete"
+
+    if ![runto test_skip_file_and_function no-message] {
+	fail "Can't run to test_skip_file_and_function"
 	return
     }

-    gdb_test_no_output "skip delete"
     gdb_test "skip -fi skip1.c -fu test_skip" \
 	"Function test_skip in file skip1.c will be skipped when stepping\."
-    gdb_breakpoint "test_skip_file_and_function"
-    gdb_breakpoint "end_test_skip_file_and_function"
-    gdb_test "call test_skip_file_and_function ()" "silently stop."
     # Verify we can step into skip.c:test_skip but not skip1.c:test_skip.
     gdb_test "step" "test_skip \\(\\) at.*" "step 1"
gdb_test "step" "test_skip_file_and_function \\(\\) at.*" "step 2"; # Return from test_skip()


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]