+2003-02-26 David Carlton <carlton@math.stanford.edu>
+
+ * gdb.c++/templates.exp (do_tests): KFAIL the "print Foo<volatile
+ char *>::foo" test with respect to PR c++/33. Create a new test
+ which is identical to that one except that it doesn't put the
+ space between the "char" and the "*"; KFAIL it, too.
+
2003-02-26 David Carlton <carlton@math.stanford.edu>
* gdb.c++/templates.exp (do_tests): Convert XFAILs about printing
# print a function from Foo<volatile char *>
+# This test is sensitive to whitespace matching, so we'll do it twice,
+# varying the spacing, because of PR gdb/33.
+
send_gdb "print Foo<volatile char *>::foo\n"
gdb_expect {
- -re "\\$\[0-9\]* = \\{.*char \\*\\((class |)Foo<volatile char \\*> \\*, int, .*char \\*\\)\\} $hex <Foo<.*char.*\\*>::foo\\(int, .*char.*\\*\\)>\r\n$gdb_prompt $" { pass "print Foo<volatile char *>::foo" }
- -re "$gdb_prompt $" { fail "print Foo<volatile char *>::foo" }
- timeout { fail "(timeout) print Foo<volatile char *>::foo" }
+ -re "\\$\[0-9\]* = \\{.*char \\*\\((class |)Foo<volatile char ?\\*> \\*, int, .*char \\*\\)\\} $hex <Foo<.*char.*\\*>::foo\\(int, .*char.*\\*\\)>\r\n$gdb_prompt $" { pass "print Foo<volatile char *>::foo" }
+ -re "No symbol \"Foo<volatile char \\*>\" in current context.\r\n$gdb_prompt $"
+ { kfail "gdb/33" "print Foo<volatile char *>::foo" }
+ -re "$gdb_prompt $" { fail "print Foo<volatile char *>::foo" }
+ timeout { fail "(timeout) print Foo<volatile char *>::foo" }
+}
+
+send_gdb "print Foo<volatile char*>::foo\n"
+gdb_expect {
+ -re "\\$\[0-9\]* = \\{.*char \\*\\((class |)Foo<volatile char ?\\*> \\*, int, .*char \\*\\)\\} $hex <Foo<.*char.*\\*>::foo\\(int, .*char.*\\*\\)>\r\n$gdb_prompt $" { pass "print Foo<volatile char*>::foo" }
+ -re "No symbol \"Foo<volatile char\\*>\" in current context.\r\n$gdb_prompt $"
+ { kfail "gdb/33" "print Foo<volatile char*>::foo" }
+ -re "$gdb_prompt $" { fail "print Foo<volatile char*>::foo" }
+ timeout { fail "(timeout) print Foo<volatile char*>::foo" }
}
# Template Bar<T, int>