* gdb.base/a1-selftest.exp: Change "i*86-*-sysv4" xfail for
authorFred Fish <fnf@specifix.com>
Fri, 11 Aug 1995 16:42:45 +0000 (16:42 +0000)
committerFred Fish <fnf@specifix.com>
Fri, 11 Aug 1995 16:42:45 +0000 (16:42 +0000)
"backtrace through signal handler" to "i*86-*-sysv4*".
* gdb.base/signals.exp: Add xfail for "'next' behaved as
continue" case.  Add "known SVR4 bug" to fail message.
Add "i*86-*-bsdi2.0" xfail for "handle all print".
Add "i*86-*-bsdi2.0" xfail for "backtrace in signals_tests_1".
* gdb.base/ptype.exp: Add "i*86-*-sysv4*" xfail for
"whatis unnamed typedef'd enum..." and "ptype t_char_array".
* gdb.base/langs.exp: Add "i*86-*-sysv4*" xfail for
"up to foo in langs.exp", "show language at foo in
langs.exp", "up to cppsub_ in langs.exp", "show
language at cppsub_ in langs.exp", "up to fsub in
langs.exp", and "show language at fsub in langs.exp".
* gdb.base/corefile.exp: Add "i*86-*-sysv4*" to xfail for
"bactrace in corefile.exp".
* gdb.base/callfuncs.exp: Change xfail to "i*86-*-*" for
"call inferior function with struct - returns float" and
"call inferior function with struct - returns double".

gdb/testsuite/ChangeLog
gdb/testsuite/Makefile.in
gdb/testsuite/gdb.base/a1-selftest.exp
gdb/testsuite/gdb.base/callfuncs.exp
gdb/testsuite/gdb.base/corefile.exp
gdb/testsuite/gdb.base/langs.exp [new file with mode: 0644]
gdb/testsuite/gdb.base/ptype.exp
gdb/testsuite/gdb.base/signals.exp

index b5b9ce9..ca0cc82 100644 (file)
@@ -1,3 +1,24 @@
+Wed Aug  9 08:04:12 1995  Fred Fish  (fnf@cygnus.com)
+
+       * gdb.base/a1-selftest.exp: Change "i*86-*-sysv4" xfail for
+       "backtrace through signal handler" to "i*86-*-sysv4*".
+       * gdb.base/signals.exp: Add xfail for "'next' behaved as
+       continue" case.  Add "known SVR4 bug" to fail message.
+       Add "i*86-*-bsdi2.0" xfail for "handle all print".
+       Add "i*86-*-bsdi2.0" xfail for "backtrace in signals_tests_1".
+       * gdb.base/ptype.exp: Add "i*86-*-sysv4*" xfail for
+       "whatis unnamed typedef'd enum..." and "ptype t_char_array".
+       * gdb.base/langs.exp: Add "i*86-*-sysv4*" xfail for
+       "up to foo in langs.exp", "show language at foo in
+       langs.exp", "up to cppsub_ in langs.exp", "show
+       language at cppsub_ in langs.exp", "up to fsub in
+       langs.exp", and "show language at fsub in langs.exp".
+       * gdb.base/corefile.exp: Add "i*86-*-sysv4*" to xfail for
+       "bactrace in corefile.exp".
+       * gdb.base/callfuncs.exp: Change xfail to "i*86-*-*" for
+       "call inferior function with struct - returns float" and
+       "call inferior function with struct - returns double".
+       
 start-sanitize-sh3e
 Mon Aug  7 02:43:28 1995  Jeff Law  (law@snake.cs.utah.edu)
 
@@ -7,6 +28,15 @@ Mon Aug  7 02:43:28 1995  Jeff Law  (law@snake.cs.utah.edu)
        * gdb.disasm/sh3.mt: Makefile fragment for sh3 ests.
 
 end-sanitize-sh3e
+Mon Aug  7 08:09:37 1995  Fred Fish  <fnf@cygnus.com>
+
+       * Makefile.in (CHILL_FOR_TARGET): Use previously defined
+       (or overriden) "CHILL" macro rather then bare "gcc".
+       Also look for ../../gcc/xgcc since that is what we will
+       actually need, not "Makefile".  Remove following assignment
+       of CHILL to CHILL_FOR_TARGET because that results in
+       recursive definition.
+
 Sun Aug  6 16:52:29 1995  Fred Fish  <fnf@cygnus.com>
 
        * gdb.base/corefile.exp:  Change xfail for backtrace in
index 0647860..5d774fd 100644 (file)
@@ -1,5 +1,5 @@
 # Makefile for regression testing the GNU debugger.
-#   Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
+# Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
 
 # This file is part of GDB.
 
@@ -14,8 +14,8 @@
 # GNU General Public License for more details.
 
 # You should have received a copy of the GNU General Public License
-# along with this program; see the file COPYING.  If not, write to
-# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 srcdir = .
 prefix = /usr/local
@@ -49,10 +49,12 @@ INSTALL = install -c
 INSTALL_PROGRAM = $(INSTALL)
 INSTALL_DATA = $(INSTALL)
 
-CFLAGS = -g
-# start-sanitize-chill
-CHILLFLAGS = $(CFLAGS)
-# end-sanitize-chill
+# Do not use CFLAGS, that is set in the top-level config/mh-hp300 to not
+# contain -g.  In general, the flags to be used for building the tools and
+# the flags to be used to build the testsuite probably don't have much to
+# do with each other.
+TESTSUITE_CFLAGS = -g
+CHILLFLAGS = $(TESTSUITE_CFLAGS)
 # This should probably be consistent with the top-level Makefile.in,
 # gdb/Makefile.in, and gdb/testsuite/gdb.t2*/Makefile.in, so that "make check"
 # has the same effect no matter where it is run.
@@ -111,20 +113,18 @@ CXX_FOR_TARGET = ` \
     fi; \
   fi`
 
-# start-sanitize-chill
-CHILLFLAGS = $(CFLAGS)
+CHILLFLAGS = $(TESTSUITE_CFLAGS)
 CHILL = gcc
 CHILL_FOR_TARGET = ` \
-  if [ -f $${rootme}/../../gcc/Makefile ] ; then \
+  if [ -f $${rootme}/../../gcc/xgcc ] ; then \
     echo $${rootme}/../../gcc/xgcc -B$${rootme}../../gcc/; \
   else \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
-      echo gcc; \
+      echo $(CHILL); \
     else \
       t='$(program_transform_name)'; echo gcc | sed -e '' $$t; \
     fi; \
   fi`
-CHILL = $(CHILL_FOR_TARGET)
 
 CHILL_LIB = ` \
   if [ -f $${rootme}/../../gcc/ch/runtime/libchill.a ] ; then \
@@ -133,20 +133,6 @@ CHILL_LIB = ` \
   else \
       echo -lchill; \
   fi`
-# end-sanitize-chill
-
-GDB = ` \
-  if [ -f $${rootme}/../gdb ] ; then \
-    echo $${rootme}/../gdb ; \
-  else \
-    if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
-      echo gdb; \
-    else \
-      t='$(program_transform_name)'; echo gdb | sed -e '' $$t; \
-    fi; \
-  fi`
-
-GDBFLAGS = -nx
 
 #### host, target, and site specific Makefile frags come in here.
 
@@ -159,13 +145,11 @@ TARGET_FLAGS_TO_PASS = \
         "against=$(against)" \
         'CC=$$(CC_FOR_TARGET)' \
         "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
-        "CFLAGS=$(CFLAGS)" \
-       $(start-sanitize-chill) \
+        "CFLAGS=$(TESTSUITE_CFLAGS)" \
         "CHILLFLAGS=$(CHILLFLAGS)" \
         'CHILL=$$(CHILL_FOR_TARGET)' \
         "CHILL_FOR_TARGET=$(CHILL_FOR_TARGET)" \
         "CHILL_LIB=$(CHILL_LIB)" \
-       $(end-sanitize-chill) \
         'CXX=$$(CXX_FOR_TARGET)' \
         "CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
         "CXXFLAGS=$(CXXFLAGS)" \
@@ -199,7 +183,6 @@ site.exp: ./config.status Makefile
        @echo "## these variables are automatically generated by make ##" > ./tmp0
        @echo "# Do not edit here. If you wish to override these values" >> ./tmp0
        @echo "# add them to the last section" >> ./tmp0
-       @echo "set GDBFLAGS \"${GDBFLAGS}\"" >> ./tmp0
        @echo "set host_alias $(host_alias)" >> ./tmp0
        @echo "set host_triplet ${host_canonical}" >> ./tmp0
        @echo "set target_alias $(target_alias)" >> ./tmp0
@@ -223,7 +206,7 @@ just-check:
        if [ -f $${rootme}/../../expect/expect ] ; then  \
          TCL_LIBRARY=$${srcdir}/../../tcl/library ; \
          export TCL_LIBRARY ; fi ; \
-       $(RUNTEST) $(RUNTESTFLAGS) GDB=$(GDB)
+       $(RUNTEST) $(RUNTESTFLAGS) 
 
 subdir_do: force
        @for i in $(DODIRS); do \
@@ -252,25 +235,29 @@ subdirs:
 
 clean mostlyclean:
        -rm -f *~ core *.o a.out xgdb *.x
-       for dir in ${SUBDIRS}; \
-       do \
-               echo "$$dir:"; \
-               if [ -d $$dir ]; then \
-                       (cd $$dir; $(MAKE) clean); \
-               fi; \
-       done
+       if [ x"${SUBDIRS}" != x ] ; then \
+           for dir in ${SUBDIRS}; \
+           do \
+                   echo "$$dir:"; \
+                   if [ -d $$dir ]; then \
+                           (cd $$dir; $(MAKE) clean); \
+                   fi; \
+           done ; \
+       else true; fi
 
 distclean realclean: clean
        -rm -f *~ core *.log *.plog *.sum *.psum site.*
        -rm -f Makefile config.status *-init.exp
        -rm -fr *.log summary detail *.plog *.sum *.psum site.*
-       for dir in ${SUBDIRS}; \
-       do \
-               echo "$$dir:"; \
-               if [ -d $$dir ]; then \
-                       (cd $$dir; $(MAKE) distclean); \
-               fi; \
-       done
+       if [ x"${SUBDIRS}" != x ] ; then \
+           for dir in ${SUBDIRS}; \
+           do \
+                   echo "$$dir:"; \
+                   if [ -d $$dir ]; then \
+                           (cd $$dir; $(MAKE) distclean); \
+                   fi; \
+           done ; \
+       else true; fi
 
 Makefile : $(srcdir)/Makefile.in $(srcdir)/configure.in $(host_makefile_frag) $(target_makefile_frag)
        $(SHELL) ./config.status
index a05e893..4d07e7d 100644 (file)
@@ -446,7 +446,7 @@ GDB.*Copyright \[0-9\]+ Free Software Foundation, Inc..*$prompt $"\
     }
     
     # get a stack trace
-    setup_xfail "i*86-*-sysv4" "i*86-*-linux*"
+    setup_xfail "i*86-*-linux*" "i*86-*-sysv4*"
     set description "backtrace through signal handler"
     send "backtrace\n"
     expect {
index a58149a..5eee5e1 100644 (file)
@@ -12,7 +12,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 # Please email any bugs, comments, and/or additions to this file to:
 # bug-gdb@prep.ai.mit.edu
@@ -179,10 +179,10 @@ proc do_function_calls {} {
        "call inferior func with struct - returns int"
     gdb_test "p t_structs_l(struct_val1)" "= 51" \
        "call inferior func with struct - returns long"
-    setup_xfail "i*86-*-linux*"
+    setup_xfail "i*86-*-*"
     gdb_test "p t_structs_f(struct_val1)" "= 2.12.*" \
        "call inferior func with struct - returns float"
-    setup_xfail "i*86-*-linux*"
+    setup_xfail "i*86-*-*"
     gdb_test "p t_structs_d(struct_val1)" "= 9.87.*" \
        "call inferior func with struct - returns double"
     gdb_test "p t_structs_a(struct_val1)" "= \"foo\"" \
index 66e3edd..6f0810c 100644 (file)
@@ -142,7 +142,7 @@ $prompt $"                  { pass "core-file command" }
 # file correctly.  I don't think the other tests do this.
 
 # Haven't investigated this xfail
-setup_xfail "m68k-*-hpux*" "i*86-*-linux*"
+setup_xfail "m68k-*-hpux*" "i*86-*-linux*" "i*86-*-sysv4*"
 gdb_test "bt" "abort.*func2.*func1.*main.*" "backtrace in corefile.exp"
 
 # test reinit_frame_cache
diff --git a/gdb/testsuite/gdb.base/langs.exp b/gdb/testsuite/gdb.base/langs.exp
new file mode 100644 (file)
index 0000000..94e073b
--- /dev/null
@@ -0,0 +1,68 @@
+if $tracelevel then {
+       strace $tracelevel
+}
+
+set prms_id 0
+set bug_id 0
+
+set binfile $objdir/$subdir/langs
+
+if ![file exists $binfile] then {
+    perror "$binfile does not exist."
+    return 0
+}
+
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "b langs0" {Function "langs0" not defined\.} \
+    "break on nonexistent function in langs.exp"
+
+if [runto csub] then {
+    gdb_test "show language" "currently c\".*" \
+       "show language at csub in langs.exp"
+    # On some machines, foo doesn't get demangled because the N_SOL for
+    # langs2.cxx is seen only after the function stab for foo.  So
+    # the following regexps are kludged to accept foo__Fi as well as foo,
+    # even though only the latter is correct.  I haven't tried to xfail it
+    # because it depends on details of the compiler.
+    gdb_test "bt" "#0.*csub.*#1.*(foo|foo__Fi) \\(.*#2.*cppsub_ .*#3.*fsub.*#4.*langs0__2do \\(.*#5  \[0-9a-fx\]* in main.*" "backtrace in langs.exp"
+
+    setup_xfail "i*86-*-sysv4*"
+    gdb_test "up" ".* in (foo|foo__Fi) .* at langs2\\.cxx.*return csub \\(.*" \
+       "up to foo in langs.exp"
+    setup_xfail "i*86-*-sysv4*"
+    gdb_test "show language" "currently c\\+\\+.*" \
+       "show language at foo in langs.exp"
+
+    setup_xfail "i*86-*-sysv4*"
+    gdb_test "up" ".* in cppsub_ .* at langs2\\.cxx.*return foo \\(.*" \
+       "up to cppsub_ in langs.exp"
+    setup_xfail "i*86-*-sysv4*"
+    gdb_test "show language" "currently c\\+\\+.*" \
+       "show language at cppsub_ in langs.exp"
+
+    setup_xfail "i*86-*-sysv4*"
+    gdb_test "up" ".* in fsub.* at langs1\\.f.*return \\(cppsub .*" \
+       "up to fsub in langs.exp"
+    setup_xfail "i*86-*-sysv4*"
+    gdb_test "show language" "currently fortran.*" \
+       "show language at fsub in langs.exp"
+
+    gdb_test "up" ".* in langs0__2do .* at .*langs0\\.c.*return fsub.*" \
+       "up to langs0__2do in langs.exp"
+    gdb_test "show language" "currently c\".*" \
+       "show language at langs0__2do in langs.exp"
+
+    gdb_test "up" ".* in main .* at .*langs0\\.c.*if \\(langs0__2do \\(.*" \
+       "up to main in langs.exp"
+    gdb_test "show language" "currently c\".*" \
+       "show language at main in langs.exp"
+
+    gdb_test "cont" "Program exited normally\\." \
+       "continue to exit in langs.exp"
+}
+
+return 0
index e69a8d1..60df8bb 100644 (file)
@@ -1,4 +1,4 @@
-#   Copyright (C) 1988, 1990, 1991, 1992 Free Software Foundation, Inc.
+#   Copyright (C) 1988, 1990, 1991, 1992, 1994 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -12,7 +12,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 # Please email any bugs, comments, and/or additions to this file to:
 # bug-gdb@prep.ai.mit.edu
@@ -198,6 +198,7 @@ expect {
 # GDB's behavior is correct; the type which the variable is defined
 # as (51) doesn't have a name.  Only 55 has a name.
 
+setup_xfail "i*86-*-sysv4*"
 gdb_test "whatis v_boolean" "type = boolean" \
   "whatis unnamed typedef'd enum (compiler bug in IBM's xlc)"
 
@@ -470,6 +471,10 @@ expect {
 #    timeout           { fail "(timeout) ptype double array" }
 #}
 #
+
+setup_xfail "i*86-*-sysv4*"
+gdb_test "ptype t_char_array" "type = (|unsigned )char \\\[0?\\\]"
+
 #
 ##
 ## test ptype command with pointers
@@ -589,7 +594,6 @@ expect {
 #    timeout           { fail "(timeout) ptype double pointer" }
 #}
 
-
 #
 # test ptype command with nested structure and union
 #
@@ -686,10 +690,9 @@ expect {
 # the operation causes a slow painful death rather than a nice simple failure.
 
 if ![istarget "*-*-udi*"] then {
-  if [runto main] then {
-    set timeout 120
+  if [runto_main] then {
     setup_xfail "a29k-*-udi" 2416
-    gdb_test "ptype \\\"abc\\\""       "type = char \\\[4\\\]"
+    gdb_test "ptype \"abc\""   "type = char \\\[4\\\]"
     setup_xfail "a29k-*-udi" 2416
     gdb_test "ptype {'a','b','c'}"     "type = char \\\[3\\\]"
     setup_xfail "a29k-*-udi" 2416
@@ -701,13 +704,8 @@ if ![istarget "*-*-udi*"] then {
     setup_xfail "a29k-*-udi" 2416
     gdb_test "ptype {{0,1,2},{3,4,5}}" "type = int \\\[2\\\]\\\[3\\\]"
     setup_xfail "a29k-*-udi" 2416
-    gdb_test "ptype {4,5,6}\\\[2\\\]"  "type = int"
+    gdb_test "ptype {4,5,6}\[2\]"      "type = int"
     setup_xfail "a29k-*-udi" 2416
-    gdb_test "ptype *&{4,5,6}\\\[1\\\]"        "type = int"
-    set timeout 10
-    if [istarget "a29k-*-udi"] then {
-       # FIXME: If PR 2415 is fixed, this is not needed.
-       gdb_target_udi
-    }
+    gdb_test "ptype *&{4,5,6}\[1\]"    "type = int"
   }
 }
index 85ce15e..6e3bd97 100644 (file)
@@ -92,7 +92,20 @@ proc signal_tests_1 {} {
                # Solaris is not a relevant data point either way
                # because it lacks single stepping.
 
-               fail "'next' behaved as 'continue'"
+               # fnf: I don't agree with the above philosophy.  We
+               # can never be sure that any particular XFAIL is
+               # specified 100% correctly in that no systems with
+               # the bug are missed and all systems without the bug
+               # are excluded.  If we include an XFAIL that isn't
+               # appropriate for a particular system, then when that
+               # system gets tested it will XPASS, and someone should
+               # investigate and fix the setup_xfail as appropriate,
+               # or more preferably, the actual bug.  Each such case
+               # adds more data to narrowing down the scope of the
+               # problem and ultimately fixing it.
+
+               setup_xfail "i*86-*-sysv4*"
+               fail "'next' behaved as 'continue (known SVR4 bug)'"
                return 0
            }
            -re ".*$prompt $" { fail "next to 2nd alarm (1)" }
@@ -128,7 +141,7 @@ proc signal_tests_1 {} {
        # This doesn't test that main is frame #2, just that main is frame
        # #2, #3, or higher.  At some point this should be fixed (but
        # it quite possibly would introduce new FAILs on some systems).
-       setup_xfail "i*86-*-linux"
+       setup_xfail "i*86-*-linux" "i*86-*-bsdi2.0"
        gdb_test "backtrace" "#0.*handler.*#1.*#2.*main.*" \
            "backtrace in signals_tests_1"
 
@@ -276,6 +289,7 @@ gdb_start
 # This will need to be updated as the exact list of signals changes,
 # but I want to test that TARGET_SIGNAL_0, TARGET_SIGNAL_DEFAULT, and
 # TARGET_SIGNAL_UNKNOWN are skipped.
+setup_xfail "i*86-unknown-bsdi2.0"
 gdb_test "handle all print" "Signal        Stop        Print   Pass to program Description\r\nSIGHUP        Yes        Yes     Yes             Hangup.*SIG63         Yes       Yes     Yes             Real-time event 63"
 
 gdb_exit