public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [committed][gdb/testsuite] Prepare nodebug exec in gdb.base/cvexpr.exp
@ 2021-09-30 17:09 Tom de Vries
  0 siblings, 0 replies; only message in thread
From: Tom de Vries @ 2021-09-30 17:09 UTC (permalink / raw)
  To: gdb-patches

Hi,

When running test-case gdb.base/cvexpr.exp with target board unix/-bad, I get:
...
gdb compile failed, gcc: error: unrecognized command line option '-bad'
ERROR: tcl error sourcing src/gdb/testsuite/gdb.base/cvexpr.exp.
ERROR: can't read "use_gdb_stub": no such variable
...

This is triggered in a part of the test that claims to require no debug
information, but uses the exec containing either dwarf or ctf.

Fix this by preparing another executable compiled with nodebug, and using
that one instead.

Also use with_test_prefix to mark the nodebug part, such that we have:
...
gdb compile failed, gcc: error: unrecognized command line option '-bad'
UNTESTED: gdb.base/cvexpr.exp: dwarf: failed to prepare
gdb compile failed, gcc: error: unrecognized command line option '-bad'
UNTESTED: gdb.base/cvexpr.exp: nodebug: failed to prepare
...

Tested on x86_64-linux.

Committed to trunk.

Thanks,
- Tom

[gdb/testsuite] Prepare nodebug exec in gdb.base/cvexpr.exp

---
 gdb/testsuite/gdb.base/cvexpr.exp | 22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

diff --git a/gdb/testsuite/gdb.base/cvexpr.exp b/gdb/testsuite/gdb.base/cvexpr.exp
index 33ae1be0322..f9bb467b4f7 100644
--- a/gdb/testsuite/gdb.base/cvexpr.exp
+++ b/gdb/testsuite/gdb.base/cvexpr.exp
@@ -509,14 +509,20 @@ foreach testspec $specs {
 }
 
 # These tests don't rely on the debug format.
-gdb_test "ptype _Atomic int" "type = _Atomic int"
-gdb_test "ptype int * restrict" "type = int \\* restrict"
+with_test_prefix nodebug {
+    if { [prepare_for_testing "failed to prepare" $binfile $srcfile {nodebug}] } {
+	return 0
+    }
 
-# C++ does not have "restrict".
-gdb_test_no_output "set lang c++"
-with_test_prefix c++ {
-    gdb_test "ptype int * restrict" "A syntax error in expression.*"
+    gdb_test "ptype _Atomic int" "type = _Atomic int"
+    gdb_test "ptype int * restrict" "type = int \\* restrict"
 
-    # There is a GCC extension for __restrict__, though.
-    gdb_test "ptype int * __restrict__" "type = int \\* __restrict__"
+    # C++ does not have "restrict".
+    gdb_test_no_output "set lang c++"
+    with_test_prefix c++ {
+	gdb_test "ptype int * restrict" "A syntax error in expression.*"
+
+	# There is a GCC extension for __restrict__, though.
+	gdb_test "ptype int * __restrict__" "type = int \\* __restrict__"
+    }
 }

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-09-30 17:09 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-30 17:09 [committed][gdb/testsuite] Prepare nodebug exec in gdb.base/cvexpr.exp Tom de Vries

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).