diff options
-rw-r--r-- | gdb/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/templates.exp | 24 |
2 files changed, 28 insertions, 2 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 4964e4e..5b5aee3 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2011-12-23 Jan Kratochvil <jan.kratochvil@redhat.com> + + * gdb.cp/templates.exp (test_template_typedef): Import gdb_prompt. + (print destructor of template typedef): Extend it for gcc/51668 XFAIL. + (verify GCC PR debug/51668): New test. + 2011-12-23 Kevin Pouget <kevin.pouget@st.com> Introduce gdb.FinishBreakpoint in Python. diff --git a/gdb/testsuite/gdb.cp/templates.exp b/gdb/testsuite/gdb.cp/templates.exp index cc78422..f9bbb43 100644 --- a/gdb/testsuite/gdb.cp/templates.exp +++ b/gdb/testsuite/gdb.cp/templates.exp @@ -202,12 +202,32 @@ proc test_template_calls {} { } proc test_template_typedef {} { + global gdb_prompt gdb_test "print intBazOne::baz" ".*baz\\(int, int\\)>" \ "print method of template typedef" - gdb_test "print intBazOne::~Baz" ".*~Baz(\\(\\))?>" \ - "print destructor of template typedef" + set test "print destructor of template typedef" + gdb_test_multiple "print intBazOne::~Baz" $test { + -re "~Baz(\\(\\))?>\r\n$gdb_prompt $" { + pass $test + } + -re "There is no field named ~Baz\r\n$gdb_prompt $" { + set test2 "verify GCC PR debug/51668" + gdb_test_multiple "whatis intBazOne" $test2 { + -re "type = Baz<int, \\(char\\)'\\\\001'>\r\n$gdb_prompt $" { + setup_xfail gcc/51668 "*-*-*" + xfail $test + pass $test2 + } + -re "\r\n$gdb_prompt $" { + # Some unexpected response. + fail $test + fail $test2 + } + } + } + } } proc test_template_args {} { |