Patchwork [26/36] Adjust self tests to cope with GDB built as a C++ program

login
register
mail settings
Submitter Pedro Alves
Date Feb. 9, 2015, 11:20 p.m.
Message ID <1423524046-20605-27-git-send-email-palves@redhat.com>
Download mbox | patch
Permalink /patch/4999/
State New
Headers show

Comments

Pedro Alves - Feb. 9, 2015, 11:20 p.m.
gdb/testsuite/
2015-02-09  Pedro Alves  <palves@redhat.com>

	* gdb.gdb/complaints.exp (test_initial_complaints): Also accept
	"true" for boolean result.
	* gdb.gdb/selftest.exp (test_with_self): Also accept full
	prototype of main.
---
 gdb/testsuite/gdb.gdb/complaints.exp | 6 ++++--
 gdb/testsuite/gdb.gdb/selftest.exp   | 6 +++++-
 2 files changed, 9 insertions(+), 3 deletions(-)

Patch

diff --git a/gdb/testsuite/gdb.gdb/complaints.exp b/gdb/testsuite/gdb.gdb/complaints.exp
index 500f414..707b2a5 100644
--- a/gdb/testsuite/gdb.gdb/complaints.exp
+++ b/gdb/testsuite/gdb.gdb/complaints.exp
@@ -43,9 +43,11 @@  proc test_initial_complaints { } {
     gdb_test "call complaint (&symfile_complaints, symfile_complaints->root->fmt)" \
 	    "During symbol reading, Register a complaint."
 
-    # Check that there is only one thing in the list
+    # Check that there is only one thing in the list.  How the boolean
+    # result is output depends on whether GDB is built as a C or C++
+    # program.
     gdb_test "print symfile_complaints->root->next == &complaint_sentinel" \
-	    ".\[0-9\]+ = 1" "list has one entry"
+	    ".\[0-9\]+ = \(1|true\)" "list has one entry"
 
     # Add a second complaint, expect it
     gdb_test "call complaint (&symfile_complaints, \"Testing! Testing! Testing!\")" \
diff --git a/gdb/testsuite/gdb.gdb/selftest.exp b/gdb/testsuite/gdb.gdb/selftest.exp
index b32e799..9f25a48 100644
--- a/gdb/testsuite/gdb.gdb/selftest.exp
+++ b/gdb/testsuite/gdb.gdb/selftest.exp
@@ -288,9 +288,13 @@  proc test_with_self { executable } {
 	return -1
     }
 
+    # When GDB is built as a C++ program, disassemble shows the full
+    # prototype.
+    set cxx_main_args_re [string_to_regexp "(int, char**)"]
+
     # disassemble yourself
     gdb_test "x/10i main" \
-	    "x/10i.*main.*main.$decimal.*main.$decimal.*" \
+	    "x/10i.*main.*main($cxx_main_args_re)?.$decimal.*main($cxx_main_args_re)?.$decimal.*" \
 	    "Disassemble main"
 
     # Set a breakpoint at main