[binutils-gdb] [gdb/testsuite] Make skip_libstdcxx_probe_tests return 1 if true

Tom de Vries vries@sourceware.org
Mon Aug 26 16:48:00 GMT 2019


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=b694989f508a83dd7c1f5d0d08716439d312e1cb

commit b694989f508a83dd7c1f5d0d08716439d312e1cb
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Aug 26 18:48:02 2019 +0200

    [gdb/testsuite] Make skip_libstdcxx_probe_tests return 1 if true
    
    The tcl proc skip_libstdcxx_probe_tests currently returns 0 if the probe tests
    need to be skipped, while tcl interprets 0 as false rather than true, which is
    confusing.
    
    Fix this by making skip_libstdcxx_probe_tests return 1 if the probe tests need
    to be skipped.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-26  Tom de Vries  <tdevries@suse.de>
    
    	* lib/gdb.exp (skip_libstdcxx_probe_tests_prompt): Return 1 if probe
    	* tests need to be skipped.
    	* gdb.cp/exceptprint.exp: Update call to skip_libstdcxx_probe_tests.
    	* gdb.mi/mi-catch-cpp-exceptions.exp: Update call to
    	mi_skip_libstdcxx_probe_tests.

Diff:
---
 gdb/testsuite/ChangeLog                          | 8 ++++++++
 gdb/testsuite/gdb.cp/exceptprint.exp             | 2 +-
 gdb/testsuite/gdb.mi/mi-catch-cpp-exceptions.exp | 2 +-
 gdb/testsuite/lib/gdb.exp                        | 9 +++++----
 4 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index e8445f8..c41b498 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2019-08-26  Tom de Vries  <tdevries@suse.de>
+
+	* lib/gdb.exp (skip_libstdcxx_probe_tests_prompt): Return 1 if probe
+	* tests need to be skipped.
+	* gdb.cp/exceptprint.exp: Update call to skip_libstdcxx_probe_tests.
+	* gdb.mi/mi-catch-cpp-exceptions.exp: Update call to
+	mi_skip_libstdcxx_probe_tests.
+
 2019-08-26  Sergio Durigan Junior  <sergiodj@redhat.com>
 
 	* gdb.python/py-xmethods.exp: Use raw strings when passing
diff --git a/gdb/testsuite/gdb.cp/exceptprint.exp b/gdb/testsuite/gdb.cp/exceptprint.exp
index 46378d1..f6dcd0f 100644
--- a/gdb/testsuite/gdb.cp/exceptprint.exp
+++ b/gdb/testsuite/gdb.cp/exceptprint.exp
@@ -27,7 +27,7 @@ if {![runto_main]} {
     return -1
 }
 
-if {![skip_libstdcxx_probe_tests]} {
+if {[skip_libstdcxx_probe_tests]} {
     untested "could not find libstdc++ stap probe"
     return -1
 }
diff --git a/gdb/testsuite/gdb.mi/mi-catch-cpp-exceptions.exp b/gdb/testsuite/gdb.mi/mi-catch-cpp-exceptions.exp
index 029dc1b..2951497 100644
--- a/gdb/testsuite/gdb.mi/mi-catch-cpp-exceptions.exp
+++ b/gdb/testsuite/gdb.mi/mi-catch-cpp-exceptions.exp
@@ -36,7 +36,7 @@ mi_gdb_load ${binfile}
 if {![mi_run_to_main]} {
     return -1
 }
-set libstdcxx_probe_tests_supported [mi_skip_libstdcxx_probe_tests]
+set libstdcxx_probe_tests_supported [expr ![mi_skip_libstdcxx_probe_tests]]
 
 # Grab some line numbers we'll need.
 set catch_1_lineno [gdb_get_line_number "Catch 1"]
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index af56e8a..76805fb 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -3158,20 +3158,21 @@ proc skip_unwinder_tests {} {
     return $ok
 }
 
-# Return 0 if we should skip tests that require the libstdc++ stap
+# Return 1 if we should skip tests that require the libstdc++ stap
 # probes.  This must be invoked while gdb is running, after shared
 # libraries have been loaded.  PROMPT_REGEXP is the expected prompt.
 
 proc skip_libstdcxx_probe_tests_prompt { prompt_regexp } {
-    set ok 0
+    set supported 0
     gdb_test_multiple "info probe" "check for stap probe in libstdc++" {
 	-re ".*libstdcxx.*catch.*\r\n$prompt_regexp" {
-	    set ok 1
+	    set supported 1
 	}
 	-re "\r\n$prompt_regexp" {
 	}
     } "$prompt_regexp"
-    return $ok
+    set skip [expr !$supported]
+    return $skip
 }
 
 # As skip_libstdcxx_probe_tests_prompt, with gdb_prompt.



More information about the Gdb-cvs mailing list