C++ testsuite changes

Mark Kettenis
2004-01-01T14:26:18Z

Attached is the diff between a gdb.sum from before C++ testsuite
changes and one after. This is on the native FreeBSD 4.7 gcc, which
bears the version number 2.95.4. I noticed some PASSes that
previously were XFAILs. Is that correct? I get some wierd ERRORs in
virtfunc.exp. As far as I can tell, GDB doesn't crash.

Mark

--- ../testresults/20031212/gdb.sum Fri Dec 12 19:15:38 2003
+++ gdb/testsuite/gdb.sum Thu Jan 1 15:12:05 2004
@@ -1,4 +1,4 @@
-Test Run By kettenis on Fri Dec 12 19:10:23 2003
+Test Run By kettenis on Thu Jan 1 15:03:50 2004
Native configuration is i386-unknown-freebsd4.7

=== gdb tests ===
@@ -2173,6 +2173,10 @@
Running ../../../src/gdb/testsuite/gdb.base/foll-exec.exp ...
Running ../../../src/gdb/testsuite/gdb.base/foll-fork.exp ...
Running ../../../src/gdb/testsuite/gdb.base/foll-vfork.exp ...
+Running ../../../src/gdb/testsuite/gdb.base/freebpcmd.exp ...
+PASS: gdb.base/freebpcmd.exp: set breakpoint
+PASS: gdb.base/freebpcmd.exp: send breakpoint commands
+PASS: gdb.base/freebpcmd.exp: run program with breakpoint commands
Running ../../../src/gdb/testsuite/gdb.base/funcargs.exp ...
PASS: gdb.base/funcargs.exp: run to call0a
PASS: gdb.base/funcargs.exp: print c after run to call0a
@@ -2971,7 +2975,7 @@
PASS: gdb.base/page.exp: q
Running ../../../src/gdb/testsuite/gdb.base/pc-fp.exp ...
PASS: gdb.base/pc-fp.exp: get value of $pc (0x80484ba)
-PASS: gdb.base/pc-fp.exp: get value of $fp (0xbfbfe85c)
+PASS: gdb.base/pc-fp.exp: get value of $fp (0xbfbfe844)
PASS: gdb.base/pc-fp.exp: display/i $pc
PASS: gdb.base/pc-fp.exp: display/w $fp
Running ../../../src/gdb/testsuite/gdb.base/pointers.exp ...
@@ -6183,6 +6187,22 @@
PASS: gdb.cp/class2.exp: print * abp at marker return 0, s-p-o off
PASS: gdb.cp/class2.exp: print * (B *) abp at marker return 0
Running ../../../src/gdb/testsuite/gdb.cp/classes.exp ...
+PASS: gdb.cp/classes.exp: print Bar::z
+PASS: gdb.cp/classes.exp: print &Foo::x
+PASS: gdb.cp/classes.exp: print (int)&Foo::x
+PASS: gdb.cp/classes.exp: print (int)&Bar::y == 2*sizeof(int)
+PASS: gdb.cp/classes.exp: print Foo::st
+PASS: gdb.cp/classes.exp: set foo.st = 200
+PASS: gdb.cp/classes.exp: print bar.st
+PASS: gdb.cp/classes.exp: print &foo.st
+PASS: gdb.cp/classes.exp: print &Bar::st
+PASS: gdb.cp/classes.exp: print *$
+PASS: gdb.cp/classes.exp: set print static-members off
+PASS: gdb.cp/classes.exp: print csi without static members
+PASS: gdb.cp/classes.exp: print cnsi without static members
+PASS: gdb.cp/classes.exp: set print static-members on
+PASS: gdb.cp/classes.exp: print csi with static members
+PASS: gdb.cp/classes.exp: print cnsi with static members
PASS: gdb.cp/classes.exp: ptype struct default_public_struct
PASS: gdb.cp/classes.exp: ptype struct explicit_public_struct
PASS: gdb.cp/classes.exp: ptype struct protected_struct
@@ -6200,12 +6220,12 @@
PASS: gdb.cp/classes.exp: ptype class E
PASS: gdb.cp/classes.exp: ptype class Static
PASS: gdb.cp/classes.exp: ptype class vA
-XFAIL: gdb.cp/classes.exp: ptype class vB (FIXME: non-portable virtual table constructs)
-XFAIL: gdb.cp/classes.exp: ptype class vC (FIXME: non-portable virtual table constructs)
-XFAIL: gdb.cp/classes.exp: ptype class vD (FIXME: non-portable virtual table constructs)
-XFAIL: gdb.cp/classes.exp: ptype class vE (FIXME: non-portable virtual table constructs)
+PASS: gdb.cp/classes.exp: ptype class vB
+PASS: gdb.cp/classes.exp: ptype class vC
+PASS: gdb.cp/classes.exp: ptype class vD
+PASS: gdb.cp/classes.exp: ptype class vE
PASS: gdb.cp/classes.exp: ptype class Base1
-PASS: gdb.cp/classes.exp: ptype class Foo (obsolescent gcc or gdb)
+KFAIL: gdb.cp/classes.exp: ptype class Foo (PRMS: gdb/1497)
PASS: gdb.cp/classes.exp: ptype class Bar
PASS: gdb.cp/classes.exp: g_A.a incorrect
PASS: gdb.cp/classes.exp: g_A.x incorrect
@@ -6242,7 +6262,6 @@
PASS: gdb.cp/classes.exp: unrelated class *param
PASS: gdb.cp/classes.exp: unrelated class &param
PASS: gdb.cp/classes.exp: unrelated class param
-PASS: gdb.cp/classes.exp: continue to enums2(\(\)|)
PASS: gdb.cp/classes.exp: print obj_with_enum (1)
PASS: gdb.cp/classes.exp: next
PASS: gdb.cp/classes.exp: print obj_with_enum (2)
@@ -6251,25 +6270,8 @@
KFAIL: gdb.cp/classes.exp: ptype obj_with_enum (PRMS: gdb/57)
KFAIL: gdb.cp/classes.exp: print (ClassWithEnum::PrivEnum) 42 (PRMS: gdb/826)
KFAIL: gdb.cp/classes.exp: print ('ClassWithEnum::PrivEnum') 42 (PRMS: gdb/57)
-PASS: gdb.cp/classes.exp: print Bar::z
-PASS: gdb.cp/classes.exp: print &Foo::x
-PASS: gdb.cp/classes.exp: print (int)&Foo::x
-PASS: gdb.cp/classes.exp: print (int)&Bar::y == 2*sizeof(int)
-PASS: gdb.cp/classes.exp: print (int)pmi == sizeof(int)
-PASS: gdb.cp/classes.exp: print Foo::st
-PASS: gdb.cp/classes.exp: print bar.st
-PASS: gdb.cp/classes.exp: print &foo.st
-PASS: gdb.cp/classes.exp: print &Bar::st
-PASS: gdb.cp/classes.exp: print *$
-PASS: gdb.cp/classes.exp: set print static-members off
-PASS: gdb.cp/classes.exp: print csi without static members
-PASS: gdb.cp/classes.exp: print cnsi without static members
-PASS: gdb.cp/classes.exp: set print static-members on
-PASS: gdb.cp/classes.exp: print csi with static members
-PASS: gdb.cp/classes.exp: print cnsi with static members
PASS: gdb.cp/classes.exp: finish from marker_reg1
XFAIL: gdb.cp/classes.exp: calling method for small class (PRMS 2972)
-PASS: gdb.cp/classes.exp: demangle
Running ../../../src/gdb/testsuite/gdb.cp/cplusfuncs.exp ...
PASS: gdb.cp/cplusfuncs.exp: detect dm_operator_comma
PASS: gdb.cp/cplusfuncs.exp: detect dm_type_char_star
@@ -7276,14 +7278,14 @@
PASS: gdb.cp/demangle.exp: hp: _Utf390_1__1_9223372036854775807__9223372036854775
Running ../../../src/gdb/testsuite/gdb.cp/derivation.exp ...
PASS: gdb.cp/derivation.exp: up from marker1
+PASS: gdb.cp/derivation.exp: ptype a_instance
PASS: gdb.cp/derivation.exp: print value of a_instance
-PASS: gdb.cp/derivation.exp: ptype a_instance (with synth ops)
+KFAIL: gdb.cp/derivation.exp: ptype d_instance (PRMS: gdb/1498)
PASS: gdb.cp/derivation.exp: print value of d_instance
-PASS: gdb.cp/derivation.exp: ptype d_instance
+KFAIL: gdb.cp/derivation.exp: ptype e_instance (PRMS: gdb/1498)
PASS: gdb.cp/derivation.exp: print value of e_instance
-PASS: gdb.cp/derivation.exp: ptype e_instance
-PASS: gdb.cp/derivation.exp: print value of f_instance
PASS: gdb.cp/derivation.exp: ptype f_instance
+PASS: gdb.cp/derivation.exp: print value of f_instance
PASS: gdb.cp/derivation.exp: print value of d_instance.a
PASS: gdb.cp/derivation.exp: print value of d_instance.aa
PASS: gdb.cp/derivation.exp: print value of d_instance.b
@@ -7599,8 +7601,8 @@
PASS: gdb.cp/namespace.exp: print XOtherFile
Running ../../../src/gdb/testsuite/gdb.cp/overload.exp ...
PASS: gdb.cp/overload.exp: up from marker1
+XFAIL: gdb.cp/overload.exp: ptype foo_instance1
PASS: gdb.cp/overload.exp: print foo_instance1
-PASS: gdb.cp/overload.exp: ptype foo_instance1 (shorter match)
PASS: gdb.cp/overload.exp: print foo_instance2
PASS: gdb.cp/overload.exp: print foo_instance3
PASS: gdb.cp/overload.exp: print call overloaded func 1 arg
@@ -7834,35 +7836,41 @@
Running ../../../src/gdb/testsuite/gdb.cp/virtfunc.exp ...
PASS: gdb.cp/virtfunc.exp: ptype VA
PASS: gdb.cp/virtfunc.exp: ptype VB
+PASS: gdb.cp/virtfunc.exp: ptype vb
+PASS: gdb.cp/virtfunc.exp: ptype pVB
PASS: gdb.cp/virtfunc.exp: ptype V
-PASS: gdb.cp/virtfunc.exp: ptype A
-PASS: gdb.cp/virtfunc.exp: ptype B
-PASS: gdb.cp/virtfunc.exp: ptype C
-PASS: gdb.cp/virtfunc.exp: ptype AD
-PASS: gdb.cp/virtfunc.exp: ptype D
-PASS: gdb.cp/virtfunc.exp: ptype E
-PASS: gdb.cp/virtfunc.exp: ptype dd
-PASS: gdb.cp/virtfunc.exp: ptype ppd
-PASS: gdb.cp/virtfunc.exp: ptype pAd
-PASS: gdb.cp/virtfunc.exp: ptype a
-PASS: gdb.cp/virtfunc.exp: ptype b
-PASS: gdb.cp/virtfunc.exp: ptype c
-PASS: gdb.cp/virtfunc.exp: ptype d
-PASS: gdb.cp/virtfunc.exp: ptype e
PASS: gdb.cp/virtfunc.exp: ptype v
-PASS: gdb.cp/virtfunc.exp: ptype vb
-PASS: gdb.cp/virtfunc.exp: ptype pAa
-PASS: gdb.cp/virtfunc.exp: ptype pAe
-PASS: gdb.cp/virtfunc.exp: ptype pBe
-PASS: gdb.cp/virtfunc.exp: ptype pDd
-PASS: gdb.cp/virtfunc.exp: ptype pDe
PASS: gdb.cp/virtfunc.exp: ptype pVa
PASS: gdb.cp/virtfunc.exp: ptype pVv
PASS: gdb.cp/virtfunc.exp: ptype pVe
PASS: gdb.cp/virtfunc.exp: ptype pVd
+PASS: gdb.cp/virtfunc.exp: ptype A
+PASS: gdb.cp/virtfunc.exp: ptype a
+PASS: gdb.cp/virtfunc.exp: ptype pAa
+PASS: gdb.cp/virtfunc.exp: ptype pAe
+PASS: gdb.cp/virtfunc.exp: ptype B
+PASS: gdb.cp/virtfunc.exp: ptype b
+PASS: gdb.cp/virtfunc.exp: ptype pBe
+PASS: gdb.cp/virtfunc.exp: ptype C
+PASS: gdb.cp/virtfunc.exp: ptype c
+PASS: gdb.cp/virtfunc.exp: ptype AD
+PASS: gdb.cp/virtfunc.exp: ptype pAd
PASS: gdb.cp/virtfunc.exp: ptype pADe
+ERROR: Process no longer exists
+UNRESOLVED: gdb.cp/virtfunc.exp: ptype D
+ERROR: Process no longer exists
+UNRESOLVED: gdb.cp/virtfunc.exp: ptype d
+ERROR: Process no longer exists
+UNRESOLVED: gdb.cp/virtfunc.exp: ptype dd
+ERROR: Process no longer exists
+UNRESOLVED: gdb.cp/virtfunc.exp: ptype ppd
+ERROR: Process no longer exists
+UNRESOLVED: gdb.cp/virtfunc.exp: ptype pDd
+ERROR: Process no longer exists
+UNRESOLVED: gdb.cp/virtfunc.exp: ptype pDe
+PASS: gdb.cp/virtfunc.exp: ptype E
+PASS: gdb.cp/virtfunc.exp: ptype e
PASS: gdb.cp/virtfunc.exp: ptype pEe
-PASS: gdb.cp/virtfunc.exp: ptype pVB
PASS: gdb.cp/virtfunc.exp: print pAe->f()
PASS: gdb.cp/virtfunc.exp: print pAa->f()
PASS: gdb.cp/virtfunc.exp: print pDe->vg()
@@ -10166,11 +10174,12 @@

=== gdb Summary ===

-# of expected passes 9619
+# of expected passes 9614
# of unexpected failures 26
-# of expected failures 155
-# of known failures 35
+# of expected failures 152
+# of known failures 38
+# of unresolved testcases 6
# of untested testcases 3
# of unsupported tests 14
-/home/kettenis/sandbox/virgin-gdb/obj/gdb/testsuite/../../gdb/gdb version 2003-12-12-cvs -nx
+/home/kettenis/sandbox/virgin-gdb/obj/gdb/testsuite/../../gdb/gdb version 2004-01-01-cvs -nx