* gdb.base/call-ar-st.exp: Call get_debug_format. Remove xfail on
authorMark Kettenis <kettenis@gnu.org>
Sun, 1 Feb 2004 10:17:36 +0000 (10:17 +0000)
committerMark Kettenis <kettenis@gnu.org>
Sun, 1 Feb 2004 10:17:36 +0000 (10:17 +0000)
sparc*-*-solaris* into a kfail PR gdb/1539 on sparc-*-* for stabs
only on the "print_small_structs from print_long_arg_list" test.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/call-ar-st.exp

index f5b8acb..77776a9 100644 (file)
@@ -1,3 +1,9 @@
+2004-02-01  Mark Kettenis  <kettenis@gnu.org>
+
+       * gdb.base/call-ar-st.exp: Call get_debug_format.  Remove xfail on
+       sparc*-*-solaris* into a kfail PR gdb/1539 on sparc-*-* for stabs
+       only on the "print_small_structs from print_long_arg_list" test.
+
 2004-02-01  Daniel Jacobowitz  <drow@mvista.com>
 
        * gdb.base/completion.exp: Kill a stray backslash.
index 1431bc5..9b0e539 100644 (file)
@@ -105,6 +105,8 @@ if ![runto_main] then {
     continue
 }
 
+get_debug_format
+
 #go -until 1209
 gdb_test "tbreak 1209" \
     "Breakpoint \[0-9\]+.*file.*$srcfile, line 1209.*" \
@@ -500,11 +502,14 @@ set ws "\[\n\r\t \]+"
 
 if {![gdb_skip_float_test "print_small_structs from print_long_arg_list"] && \
     ![gdb_skip_stdio_test "print_small_structs from print_long_arg_list"] } {
-    # On Solaris, some of the args are passed by ref, others by value,
-    # and GDB gets confused and says "Invalid cast" because it thinks
-    # it has to cast the structure into a pointer to structure.  A real
-    # GDB bug, probably for all Sparc configs, but obscure. -sts 1999-08-17.
-    setup_xfail "sparc*-*-solaris*"
+
+    # On 32-bit SPARC, some of the args are passed by ref, others by
+    # value, and GDB gets confused and says "Invalid cast" because it
+    # thinks it has to cast the structure into a pointer to structure.
+    if { [test_debug_format "stabs"] } then {
+       setup_kfail "gdb/1539" "sparc-*-*"
+    }
+
     send_gdb "print print_small_structs(struct1, struct2, struct3, struct4, flags, flags_combo, three_char, five_char, int_char_combo, d1, d2, d3, f1, f2, f3)\n"
     gdb_expect_list "print print_small_structs from print_long_arg_list" ".*$gdb_prompt $" {
        "\[\t\r\n \]+alpha"