aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Edelsohn <dje@gcc.gnu.org>2004-01-10 13:34:59 -0500
committerDavid Edelsohn <dje@gcc.gnu.org>2004-01-10 13:34:59 -0500
commita2a0019fe401aebdf0a470809b0e07b3b9e233cb (patch)
treef870aaec3f1de9ea9ed22e66acba25b278a32a80
parentbb3f5384ba1d5426d1aabe684fe6688c37f50661 (diff)
downloadgcc-a2a0019fe401aebdf0a470809b0e07b3b9e233cb.zip
gcc-a2a0019fe401aebdf0a470809b0e07b3b9e233cb.tar.gz
gcc-a2a0019fe401aebdf0a470809b0e07b3b9e233cb.tar.bz2
re PR debug/12860 (stabs register number out of range)
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
-rw-r--r--gcc/ChangeLog14
-rw-r--r--gcc/dbxout.c17
2 files changed, 20 insertions, 11 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 13ee5f6..d792845 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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>
diff --git a/gcc/dbxout.c b/gcc/dbxout.c
index e004490..dc0caf7 100644
--- a/gcc/dbxout.c
+++ b/gcc/dbxout.c
@@ -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