| Index: gdb/testsuite/gdb.cp/cpexprs.exp
|
| diff --git a/gdb/testsuite/gdb.cp/cpexprs.exp b/gdb/testsuite/gdb.cp/cpexprs.exp
|
| index 6b5e14e1205d113a344b8b4a32cea3f2a79e8926..aa37315fd6e16045375dd502455c8d35a686723d 100644
|
| --- a/gdb/testsuite/gdb.cp/cpexprs.exp
|
| +++ b/gdb/testsuite/gdb.cp/cpexprs.exp
|
| @@ -663,10 +663,6 @@ add {policyd5::function} \
|
| {operation_1<T>::function}
|
|
|
| # Start the test
|
| -if {$tracelevel} {
|
| - strace $tracelevel
|
| -}
|
| -
|
| if {[skip_cplus_tests]} { continue }
|
|
|
| # On SPU this test fails because the executable exceeds local storage size.
|
| @@ -678,25 +674,16 @@ if { [istarget "spu*-*-*"] } {
|
| # test running programs
|
| #
|
|
|
| -set testfile "cpexprs"
|
| -set srcfile "${testfile}.cc"
|
| -set binfile [file join $objdir $subdir $testfile]
|
| +standard_testfile .cc
|
|
|
| -if {[gdb_compile [file join $srcdir $subdir $srcfile] $binfile \
|
| - executable {debug c++}] != "" } {
|
| - untested "$testfile.exp"
|
| +if {[get_compiler_info "c++"]} {
|
| return -1
|
| }
|
|
|
| -if {[get_compiler_info $binfile "c++"]} {
|
| +if {[prepare_for_testing $testfile.exp $testfile $srcfile {debug c++}]} {
|
| return -1
|
| }
|
|
|
| -gdb_exit
|
| -gdb_start
|
| -gdb_reinitialize_dir [file join $srcdir $subdir]
|
| -gdb_load $binfile
|
| -
|
| if {![runto_main]} {
|
| perror "couldn't run to breakpoint"
|
| continue
|
| @@ -723,5 +710,26 @@ foreach name [get_functions list] {
|
| }
|
| }
|
|
|
| +# Test c/v gets recognized even without quoting.
|
| +foreach cv {{} { const} { volatile} { const volatile}} {
|
| + set test "p 'CV::m(int)$cv'"
|
| + gdb_test_multiple $test $test {
|
| + -re "( = {.*} 0x\[0-9a-f\]+ <CV::m.*>)\r\n$gdb_prompt $" {
|
| + # = {void (CV * const, CV::t)} 0x400944 <CV::m(int)>
|
| + set correct $expect_out(1,string)
|
| + pass $test
|
| + }
|
| + }
|
| + if {"$cv" != ""} {
|
| + setup_kfail c++/14186 *-*-*
|
| + }
|
| + gdb_test "p CV::m(int)$cv" [string_to_regexp $correct]
|
| +}
|
| +
|
| +# Test TYPENAME:: gets recognized even in parentheses.
|
| +gdb_test "p CV_f(int)" { = {int \(int\)} 0x[0-9a-f]+ <CV_f\(int\)>}
|
| +gdb_test "p CV_f(CV::t)" { = {int \(int\)} 0x[0-9a-f]+ <CV_f\(int\)>}
|
| +gdb_test "p CV_f(CV::i)" " = 43"
|
| +
|
| gdb_exit
|
| return 0
|
|
|