]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR debug/12860 (stabs register number out of range)
authorDavid Edelsohn <dje@gcc.gnu.org>
Sat, 10 Jan 2004 18:34:59 +0000 (13:34 -0500)
committerDavid Edelsohn <dje@gcc.gnu.org>
Sat, 10 Jan 2004 18:34:59 +0000 (13:34 -0500)
2004-01-10  David Edelsohn  <edelsohn@gnu.org>
            James E Wilson  <wilson@specifixinc.com>

        PR debug/12860
        * dbxout.c (dbxout_symbol): Remove initialization of
        current_sym_code, current_sym_value, and current_sym_addr.
        (dbxout_symbol_location): Same.
        (dbxout_prepare_symbol): Zero current_sym_code,
        current_sym_value, and current_sym_addr.

From-SVN: r75644

gcc/ChangeLog
gcc/dbxout.c

index 13ee5f6b070260c7cafff621b839e2584b34b844..d792845f5a4ff23d37dcd87835788586665373c2 100644 (file)
@@ -1,3 +1,13 @@
+2004-01-10  David Edelsohn  <edelsohn@gnu.org>
+           James E Wilson  <wilson@specifixinc.com>
+
+       PR debug/12860
+       * dbxout.c (dbxout_symbol): Remove initialization of
+       current_sym_code, current_sym_value, and current_sym_addr.
+       (dbxout_symbol_location): Same.
+       (dbxout_prepare_symbol): Zero current_sym_code,
+       current_sym_value, and current_sym_addr.
+
 2004-01-10  Richard Sandiford  <rsandifo@redhat.com>
 
        * tree.c (get_unwidened): Reorder conditions so that the null pointer
@@ -16,8 +26,8 @@
 2004-01-09  Andrew Pinski <pinskia@physics.uc.edu>
 
        PR debug/11231
-       * dbxout.c (dbxout_type_fields): Return if any item is error_mark_node or the
-       type is error_mark_node.
+       * dbxout.c (dbxout_type_fields): Return if any item is
+       error_mark_node or the type is error_mark_node.
 
 2004-01-09  Geoffrey Keating  <geoffk@apple.com>
 
index e0044902357c7e4021fca36b280cc4d003a178d6..dc0caf71ab879f60d77ddf017a49684ee694ee98 100644 (file)
@@ -2047,11 +2047,6 @@ dbxout_symbol (tree decl, int local ATTRIBUTE_UNUSED)
   /* "Intercept" dbxout_symbol() calls like we do all debug_hooks.  */
   ++debug_nesting;
 
-  /* Cast avoids warning in old compilers.  */
-  current_sym_code = (STAB_CODE_TYPE) 0;
-  current_sym_value = 0;
-  current_sym_addr = 0;
-
   /* Ignore nameless syms, but don't ignore type tags.  */
 
   if ((DECL_NAME (decl) == 0 && TREE_CODE (decl) != TYPE_DECL)
@@ -2578,10 +2573,6 @@ dbxout_symbol_location (tree decl, tree type, const char *suffix, rtx home)
       else
        dbxout_symbol_location (decl, subtype, "$real", XEXP (home, 0));
 
-      /* Cast avoids warning in old compilers.  */
-      current_sym_code = (STAB_CODE_TYPE) 0;
-      current_sym_value = 0;
-      current_sym_addr = 0;
       dbxout_prepare_symbol (decl);
 
       if (WORDS_BIG_ENDIAN)
@@ -2649,6 +2640,14 @@ dbxout_prepare_symbol (tree decl ATTRIBUTE_UNUSED)
 
   dbxout_source_file (asmfile, filename);
 #endif
+
+  /* Initialize variables used to communicate each symbol's debug
+     information to dbxout_finish_symbol with zeroes.  */
+
+  /* Cast avoids warning in old compilers.  */
+  current_sym_code = (STAB_CODE_TYPE) 0;
+  current_sym_value = 0;
+  current_sym_addr = 0;
 }
 
 static void