aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite')
-rw-r--r--gdb/testsuite/ChangeLog6
-rw-r--r--gdb/testsuite/gdb.trace/collection.exp30
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"