This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] Fix identical PASS in gdb.base/skip.exp
- From: Pedro Alves <palves at redhat dot com>
- To: Yao Qi <yao at codesourcery dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Mon, 30 Jan 2012 16:21:46 +0000
- Subject: Re: [patch] Fix identical PASS in gdb.base/skip.exp
- References: <4F26A994.8060500@codesourcery.com>
On 01/30/2012 02:30 PM, Yao Qi wrote:
> When I was looking at the FAILs in gdb.base/skip.exp, I found there are
> some identical PASS in gdb.base/skip.exp.
>
> 2 PASS: gdb.base/skip.exp: info skip
> 2 PASS: gdb.base/skip.exp: skip
> 2 PASS: gdb.base/skip.exp: skip file
> 2 PASS: gdb.base/skip.exp: step after deleting 1 (1)
> 2 PASS: gdb.base/skip.exp: step after deleting 1 (2)
> 5 PASS: gdb.base/skip.exp: step
>
> This patch is to fix this. OK to apply?
Thanks.
>
> -- Yao (éå)
>
>
> 0005-make-test-PASS-unique.patch
>
>
> 2012-01-30 Yao Qi <yao@codesourcery.com>
>
> * gdb.base/skip.exp: Make test result unique.
> ---
> gdb/testsuite/gdb.base/skip.exp | 29 +++++++++++++++--------------
> 1 files changed, 15 insertions(+), 14 deletions(-)
>
> diff --git a/gdb/testsuite/gdb.base/skip.exp b/gdb/testsuite/gdb.base/skip.exp
> index 061341c..6f9f8ad 100644
> --- a/gdb/testsuite/gdb.base/skip.exp
> +++ b/gdb/testsuite/gdb.base/skip.exp
> @@ -27,9 +27,9 @@ set srcfile1 skip1.c
> #
> # Right after we start gdb, there's no default file or function to skip.
> #
> -gdb_test "skip file" "No default file now."
> +gdb_test "skip file" "No default file now." "skip (no default file)"
gdb_test "skip file" "No default file now." "skip file (no default file)"
> gdb_test "skip function" "No default function now."
> -gdb_test "skip" "No default function now."
> +gdb_test "skip" "No default function now." "skip (no default function)"
>
> if ![runto_main] { fail "skip tests suppressed" }
>
> @@ -41,8 +41,8 @@ gdb_test "info skip" "Not skipping any files or functions\." "info skip empty"
> #
> # Create a skiplist entry for the current file and function.
> #
> -gdb_test "skip file" "File .*$srcfile will be skipped when stepping\."
> -gdb_test "skip" "Function main at .* will be skipped when stepping\."
> +gdb_test "skip file" "File .*$srcfile will be skipped when stepping\." "skip ($srcfile)"
gdb_test "skip file" "File .*$srcfile will be skipped when stepping\." "skip file ($srcfile)"
> +gdb_test "skip" "Function main at .* will be skipped when stepping\." "skip (main)"
>
> #
> # Create a skiplist entry for a specified file and function.
> @@ -82,7 +82,7 @@ gdb_test "info skip" \
> #
>
> if ![runto_main] { fail "skip tests suppressed" }
> -gdb_test "step"
> +gdb_test "step" ".*" "step into main"
into, or in? AFAICS, you're already in main before the step.
> gdb_test "bt" "\\s*\\#0\\s+main.*" "step after all ignored"
>
> #
> @@ -96,11 +96,12 @@ gdb_test "info skip" \
> "Num\\s+Type\\s+Enb\\s+Address\\s+What\\s*
> 2\\s+function\\s+y\\s+0x\[0-9a-f\]+ main at .*$srcfile:\[0-9\]+\\s*
> 3\\s+file\\s+y\\s+.*$srcfile1\\s*
> -4\\s+function\\s+y\\s+0x\[0-9a-f\]+ baz at .*$srcfile1:\[0-9\]+\\s*"
> +4\\s+function\\s+y\\s+0x\[0-9a-f\]+ baz at .*$srcfile1:\[0-9\]+\\s*" \
> + "info skip (delete 1)"
>
> if ![runto_main] { fail "skip tests suppressed" }
> gdb_test "step" "foo \\(\\) at.*" "step after deleting 1 (1)"
> -gdb_test "step"; # Return from foo()
> +gdb_test "step" ".*" "step after deleting 1" ; # Return from foo()
> gdb_test "step" "main \\(\\) at.*" "step after deleting 1 (2)"
Shouldn't that be
gdb_test "step" "foo \\(\\) at.*" "step after deleting 1 (1)"
gdb_test "step" ".*" "step after deleting 1 (2)" # Return from foo()
gdb_test "step" "main \\(\\) at.*" "step after deleting 1 (3)"
? That is: 1, 2, 3.
>
> #
> @@ -114,10 +115,10 @@ gdb_test "info skip 3" ".*\\n3\\s+file\\s+n.*" \
>
> if ![runto_main] { fail "skip tests suppressed" }
> gdb_test "step" "bar \\(\\) at.*" "step after disabling 3 (1)"
> -gdb_test "step"; # Return from foo()
> -gdb_test "step" "foo \\(\\) at.*" "step after disabling 3 (2)"
> -gdb_test "step"; # Return from bar()
> -gdb_test "step" "main \\(\\) at.*" "step after disabling 3 (3)"
> +gdb_test "step" ".*" "step after disabling 3 (2)"; # Return from foo()
> +gdb_test "step" "foo \\(\\) at.*" "step after disabling 3 (3)"
> +gdb_test "step" ".*" "step after disabling 3 (4)"; # Return from bar()
> +gdb_test "step" "main \\(\\) at.*" "step after disabling 3 (5)"
>
> #
> # Enable skiplist entry 3 and make sure we step over it like before.
> @@ -127,9 +128,9 @@ gdb_test "skip enable 3"
> gdb_test "info skip 3" ".*\\n3\\s+file\\s+y.*" \
> "info skip shows entry as enabled"
> if ![runto_main] { fail "skip tests suppressed" }
> -gdb_test "step" "foo \\(\\) at.*" "step after deleting 1 (1)"
> -gdb_test "step"; # Return from foo()
> -gdb_test "step" "main \\(\\) at.*" "step after deleting 1 (2)"
> +gdb_test "step" "foo \\(\\) at.*" "step after enable 3 (1)"
> +gdb_test "step" ".*" "step after enable 3"; # Return from foo()
> +gdb_test "step" "main \\(\\) at.*" "step after enable 3 (2)"
1, 2, 3?
Okay with those fixed.
--
Pedro Alves