gdb/testsuite: Handle underlying type in gdb.cp/var-tag.exp.
authorMark Wielaard <mjw@redhat.com>
Wed, 21 May 2014 14:00:05 +0000 (16:00 +0200)
committerMark Wielaard <mjw@redhat.com>
Wed, 21 May 2014 14:59:55 +0000 (16:59 +0200)
* gdb.cp/var-tag.exp (do_global_tests): Handle underlying type.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.cp/var-tag.exp

index 56b6cc5f7329353a4b7ff8528670d70e4f0347a4..c285612c692fd6182f7786433097bbc9752c77df 100644 (file)
@@ -1,3 +1,7 @@
+2014-05-21  Mark Wielaard  <mjw@redhat.com>
+
+       * gdb.cp/var-tag.exp (do_global_tests): Handle underlying type.
+
 2014-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
 
        Fix TLS access for -static -pthread.
index 7869fa29d67f98a6f8e51480982dd346d82e9709..9e4628282d87aef91cd0aa435ded3ef3f2c4d9e3 100644 (file)
@@ -26,19 +26,25 @@ if {[prepare_for_testing $testfile.exp $testfile $srcfile {debug c++}]} {
 }
 
 proc do_global_tests {lang} {
+    if {$lang == "c++"} {
+       set opt_underlying "(: unsigned int )?"
+    } else {
+       set opt_underlying ""
+    }
+
     if {$lang == "c"} {
        set invalid_print "No symbol \"%s\" in current context."
        set ptypefmt $invalid_print
     } else {
        set invalid_print "Attempt to use a type name as an expression"
-       set ptypefmt "type = (class|enum|union|struct) %s {.*}"
+       set ptypefmt "type = (class|enum|union|struct) %s $opt_underlying{.*}"
     }
 
     with_test_prefix $lang {
        gdb_test_no_output "set language $lang"
        gdb_test "ptype C" "type = class C {.*}"
        gdb_test "print E" "= a"
-       gdb_test "ptype E" "type = enum E {.*}"
+       gdb_test "ptype E" "type = enum E $opt_underlying{.*}"
        gdb_test "print S" "= {<No data fields>}"
        gdb_test "ptype S" "type = struct S {.*}"
        gdb_test "print U" "= {.*}"
@@ -52,7 +58,7 @@ proc do_global_tests {lang} {
        gdb_test "print SS" [format $invalid_print "SS"]
        gdb_test "ptype SS" [format $ptypefmt "SS"]
        gdb_test "print ee" "= .*"
-       gdb_test "ptype ee" "type = enum EE {.*}"
+       gdb_test "ptype ee" "type = enum EE $opt_underlying{.*}"
        gdb_test "print EE" [format $invalid_print "EE"]
        gdb_test "ptype EE" [format $ptypefmt "EE"]
        gdb_test "print uu" "= {.*}"