This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[commit] xfail some py-type.exp tests for gcc 4.4 and earlier
- From: dje at google dot com (Doug Evans)
- To: gdb-patches at sourceware dot org, tromey at redhat dot com
- Date: Fri, 30 Jul 2010 11:56:25 -0700 (PDT)
- Subject: [commit] xfail some py-type.exp tests for gcc 4.4 and earlier
Hi.
ref: http://sourceware.org/ml/gdb-patches/2010-07/msg00522.html
I'm getting these failures with gcc 4.4:
[amd64-linux]
FAIL: gdb.python/py-type.exp: python print ttype.template_argument(1)
FAIL: gdb.python/py-type.exp: python print isinstance(ttype.template_argument(1), gdb.Value)
I built a copy of gcc 4.5 to see what happens there, they pass.
So I've committed this:
2010-07-30 Doug Evans <dje@google.com>
* gdb.python/py-type.exp (test_template): Mark as xfail tests
"python print ttype.template_argument(1)" and
"python print isinstance(ttype.template_argument(1), gdb.Value)"
if using gcc 4.4 or earlier.
Index: gdb.python/py-type.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.python/py-type.exp,v
retrieving revision 1.6
diff -u -p -r1.6 py-type.exp
--- gdb.python/py-type.exp 28 Jul 2010 20:50:17 -0000 1.6
+++ gdb.python/py-type.exp 30 Jul 2010 18:42:35 -0000
@@ -24,6 +24,10 @@ set testfile "py-type"
set srcfile ${testfile}.c
set binfile ${objdir}/${subdir}/${testfile}
+if [get_compiler_info not-used c++] {
+ return -1;
+}
+
# Build inferior to language specification.
proc build_inferior {lang} {
global srcdir subdir srcfile binfile testfile hex
@@ -136,10 +140,20 @@ proc test_template {} {
gdb_test "python print ttype.template_argument(0)" "D"
gdb_test "python print isinstance(ttype.template_argument(0), gdb.Type)" \
"True"
+
# The next two tests require a GCC that emits DW_TAG_template_*.
+ # GCC 4.4 does not emit it, 4.5 and 6 do emit it.
+ set have_older_gcc 0
+ if {[test_compiler_info {gcc-[0-3]-*}]
+ || [test_compiler_info {gcc-4-[0-4]-*}]} {
+ set have_older_gcc 1
+ }
+ if $have_older_gcc { setup_xfail *-*-* }
gdb_test "python print ttype.template_argument(1)" "23"
+ if $have_older_gcc { setup_xfail *-*-* }
gdb_test "python print isinstance(ttype.template_argument(1), gdb.Value)" \
"True"
+
setup_kfail "gcc/41736" *-*-*
gdb_test "python print ttype.template_argument(2)" "&C::c"
}