diff options
-rw-r--r-- | gdb/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/testsuite/gdb.trace/collection.exp | 30 |
2 files changed, 36 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index a0c2f5d..83be424 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2010-04-01 Pedro Alves <pedro@codesourcery.com> + + * gdb.trace/collection.exp (gdb_collect_args_test) + (gdb_collect_argarray_test): XFAIL the tests that assume the + argarray argument's elements are collected. + 2010-03-31 Jan Kratochvil <jan.kratochvil@redhat.com> * gdb.dwarf2/dw2-bad-parameter-type.exp, diff --git a/gdb/testsuite/gdb.trace/collection.exp b/gdb/testsuite/gdb.trace/collection.exp index 5d510ab..986cfaf 100644 --- a/gdb/testsuite/gdb.trace/collection.exp +++ b/gdb/testsuite/gdb.trace/collection.exp @@ -166,15 +166,30 @@ proc gdb_collect_args_test { myargs msg } { "collect $msg: collected arg struct member double" # array arg as one of several args (near end of list) + + # It isn't clear why is the test assuming the array's elements are + # collected. In C, an array as function parameters is a special + # case; it's just a pointer into the caller's array, and as such, + # that's what normally the debug info describes. Maybe this was + # originaly written for a compiler where array parameters were + # really described as arrays in debug info. + + setup_xfail "*-*-*" gdb_test "print argarray\[0\]" \ "\\$\[0-9\]+ = 111$cr" \ "collect $msg: collected argarray #0" + + setup_xfail "*-*-*" gdb_test "print argarray\[1\]" \ "\\$\[0-9\]+ = 112$cr" \ "collect $msg: collected argarray #1" + + setup_xfail "*-*-*" gdb_test "print argarray\[2\]" \ "\\$\[0-9\]+ = 113$cr" \ "collect $msg: collected argarray #2" + + setup_xfail "*-*-*" gdb_test "print argarray\[3\]" \ "\\$\[0-9\]+ = 114$cr" \ "collect $msg: collected argarray #3" @@ -237,15 +252,30 @@ proc gdb_collect_argarray_test { myargs msg } { run_trace_experiment $msg argarray_test_func # array arg as only argument + + # It isn't clear why is the test assuming the array's elements are + # collected. In C, an array as function parameters is a special + # case; it's just a pointer into the caller's array, and as such, + # that's what normally the debug info describes. Maybe this was + # originaly written for a compiler where array parameters were + # really described as arrays in debug info. + + setup_xfail "*-*-*" gdb_test "print argarray\[0\]" \ "\\$\[0-9\]+ = 111$cr" \ "collect $msg: collected argarray #0" + + setup_xfail "*-*-*" gdb_test "print argarray\[1\]" \ "\\$\[0-9\]+ = 112$cr" \ "collect $msg: collected argarray #1" + + setup_xfail "*-*-*" gdb_test "print argarray\[2\]" \ "\\$\[0-9\]+ = 113$cr" \ "collect $msg: collected argarray #2" + + setup_xfail "*-*-*" gdb_test "print argarray\[3\]" \ "\\$\[0-9\]+ = 114$cr" \ "collect $msg: collected argarray #3" |