* sim-info.c (sim_info): Be verbose when either VERBOSE or STATE_VERBOSE_P.
[deliverable/binutils-gdb.git] / gdb / stabsread.c
index 62c3359c15c1df9b588f4de8242fd52743a89218..bfbcc016c382c8fcd794991ef67c1f47a57b0539 100644 (file)
@@ -1607,6 +1607,11 @@ define_symbol (valu, string, desc, type, objfile)
         in GDB.  E.g. "int" is converted to "function returning int".  */
       if (TYPE_CODE (SYMBOL_TYPE (sym)) != TYPE_CODE_FUNC)
        SYMBOL_TYPE (sym) = lookup_function_type (SYMBOL_TYPE (sym));
+
+      /* All functions in C++ have prototypes.  */
+      if (SYMBOL_LANGUAGE (sym) == language_cplus)
+       TYPE_FLAGS (SYMBOL_TYPE (sym)) |= TYPE_FLAG_PROTOTYPED;
+
       /* fall into process_prototype_types */
 
     process_prototype_types:
@@ -1614,10 +1619,15 @@ define_symbol (valu, string, desc, type, objfile)
         about their actual types (FIXME -- we should remember the whole
         function prototype), but the list may define some new types
         that we have to remember, so we must scan it now.  */
-      while (*p == ';') {
-       p++;
-       read_type (&p, objfile);
-      }
+      if (*p == ';')
+       {
+         TYPE_FLAGS (SYMBOL_TYPE (sym)) |= TYPE_FLAG_PROTOTYPED;
+
+         while (*p == ';') {
+           p++;
+           read_type (&p, objfile);
+         }
+       }
       break;
 
     case 'F':
@@ -1868,7 +1878,7 @@ define_symbol (valu, string, desc, type, objfile)
       SYMBOL_CLASS (sym) = LOC_STATIC;
       SYMBOL_VALUE_ADDRESS (sym) = valu;
 #ifdef STATIC_TRANSFORM_NAME
-      if (SYMBOL_NAME (sym)[0] == '$')
+      if (IS_STATIC_TRANSFORM_NAME (SYMBOL_NAME (sym)))
       {
        struct minimal_symbol *msym;
        msym = lookup_minimal_symbol (SYMBOL_NAME (sym), NULL, objfile);
@@ -1996,7 +2006,7 @@ define_symbol (valu, string, desc, type, objfile)
       SYMBOL_CLASS (sym) = LOC_STATIC;
       SYMBOL_VALUE_ADDRESS (sym) = valu;
 #ifdef STATIC_TRANSFORM_NAME
-      if (SYMBOL_NAME (sym)[0] == '$')
+      if (IS_STATIC_TRANSFORM_NAME (SYMBOL_NAME (sym)))
       {
        struct minimal_symbol *msym;
        msym = lookup_minimal_symbol (SYMBOL_NAME (sym), NULL, objfile);
@@ -2109,7 +2119,7 @@ define_symbol (valu, string, desc, type, objfile)
     }
 
   /* Is there more to parse?  For example LRS/alias information?  */
-  while (*p && (*p == ';' || *p == ','))
+  while (*p && *p == ';')
     {
       p++;
       if (*p && *p == 'l')
This page took 0.026337 seconds and 4 git commands to generate.