aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2020-03-14 10:41:46 +0100
committerTom de Vries <tdevries@suse.de>2020-03-14 10:41:46 +0100
commit2ac70237d2458fb2eb5e73de6bb02a396b5bada0 (patch)
treea24ea35968deb3722c51e4dd5c4c83105ce448a5
parent09546b56ede31ca2b401e9b03466e8e1fb84d85f (diff)
downloadgdb-2ac70237d2458fb2eb5e73de6bb02a396b5bada0.zip
gdb-2ac70237d2458fb2eb5e73de6bb02a396b5bada0.tar.gz
gdb-2ac70237d2458fb2eb5e73de6bb02a396b5bada0.tar.bz2
[gdb/testsuite] Fix unrecognized debug output level 'statement-frontiers' message
When running testcase gdb.cp/step-and-next-inline.exp, I get: ... Running src/gdb/testsuite/gdb.cp/step-and-next-inline.exp ... gdb compile failed, g++: error: unrecognized debug output level \ 'statement-frontiers' gdb compile failed, g++: error: unrecognized debug output level \ 'statement-frontiers' === gdb Summary === # of untested testcases 2 ... Fix this by using a new gdb_caching_proc supports_statement_frontiers. Tested on x86_64-linux, with gcc 7.5.0 (which does not support -gstatement-frontiers) and with gcc 8.4.0 (which does support -gstatement-frontiers). gdb/testsuite/ChangeLog: 2020-03-14 Tom de Vries <tdevries@suse.de> * lib/gdb.exp (supports_statement_frontiers): New proc. * gdb.cp/step-and-next-inline.exp: Use supports_statement_frontiers.
-rw-r--r--gdb/testsuite/ChangeLog5
-rw-r--r--gdb/testsuite/gdb.cp/step-and-next-inline.exp4
-rw-r--r--gdb/testsuite/lib/gdb.exp11
3 files changed, 20 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 9f65a4e..a9c2852 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,10 @@
2020-03-14 Tom de Vries <tdevries@suse.de>
+ * lib/gdb.exp (supports_statement_frontiers): New proc.
+ * gdb.cp/step-and-next-inline.exp: Use supports_statement_frontiers.
+
+2020-03-14 Tom de Vries <tdevries@suse.de>
+
* gdb.base/printcmds.exp: Add missing quoting for "print
teststring2".
diff --git a/gdb/testsuite/gdb.cp/step-and-next-inline.exp b/gdb/testsuite/gdb.cp/step-and-next-inline.exp
index acec48b..3733fa7 100644
--- a/gdb/testsuite/gdb.cp/step-and-next-inline.exp
+++ b/gdb/testsuite/gdb.cp/step-and-next-inline.exp
@@ -15,6 +15,10 @@
standard_testfile .cc
+if { ![supports_statement_frontiers] } {
+ return -1
+}
+
# Compile the test source with USE_NEXT_INLINE_H defined (when
# use_header is true), or not defined.
proc do_test { use_header } {
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index ae2d810..b14b3a9 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -6947,5 +6947,16 @@ gdb_caching_proc skip_ctf_tests {
} executable "additional_flags=-gt"]
}
+# Return 1 if compiler supports -gstatement-frontiers. Otherwise,
+# return 0.
+
+gdb_caching_proc supports_statement_frontiers {
+ return [gdb_can_simple_compile supports_statement_frontiers {
+ int main () {
+ return 0;
+ }
+ } executable "additional_flags=-gstatement-frontiers"]
+}
+
# Always load compatibility stuff.
load_lib future.exp