* stabsread.c (define_symbol): If unrecognized constant type,
authorJim Kingdon <jkingdon@engr.sgi.com>
Thu, 29 Apr 1993 17:19:11 +0000 (17:19 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Thu, 29 Apr 1993 17:19:11 +0000 (17:19 +0000)
complain() not error().

gdb/ChangeLog
gdb/stabsread.c

index 6fc8fc2..b07f994 100644 (file)
@@ -1,3 +1,8 @@
+Thu Apr 29 08:46:22 1993  Jim Kingdon  (kingdon@cygnus.com)
+
+       * stabsread.c (define_symbol): If unrecognized constant type,
+       complain() not error().
+
 Thu Apr 29 00:03:59 1993  Fred Fish  (fnf@cygnus.com)
 
        * infptrace.c:  Add missing close paren to test for
index 17d76d1..505528c 100644 (file)
@@ -597,6 +597,8 @@ define_symbol (valu, string, desc, type, objfile)
            dbl_valu = (char *)
              obstack_alloc (&objfile -> symbol_obstack, sizeof (double));
            memcpy (dbl_valu, &d, sizeof (double));
+           /* Put it in target byte order, but it's still in host
+              floating point format.  */
            SWAP_TARGET_AND_HOST (dbl_valu, sizeof (double));
            SYMBOL_VALUE_BYTES (sym) = dbl_valu;
            SYMBOL_CLASS (sym) = LOC_CONST_BYTES;
@@ -627,7 +629,16 @@ define_symbol (valu, string, desc, type, objfile)
          }
          break;
        default:
-         error ("Invalid symbol data at symtab pos %d.", symnum);
+         {
+           static struct complaint msg =
+             {"Unrecognized constant type", 0, 0};
+           complain (&msg);
+           SYMBOL_CLASS (sym) = LOC_CONST;
+           /* This gives a second complaint, which is probably OK.
+              We do want the skip to the end of symbol behavior (to
+              deal with continuation).  */
+           SYMBOL_TYPE (sym) = error_type (&p);
+         }
        }
       SYMBOL_NAMESPACE (sym) = VAR_NAMESPACE;
       add_symbol_to_list (sym, &file_symbols);