diff options
author | David Edelsohn <dje@gcc.gnu.org> | 2004-01-10 13:34:59 -0500 |
---|---|---|
committer | David Edelsohn <dje@gcc.gnu.org> | 2004-01-10 13:34:59 -0500 |
commit | a2a0019fe401aebdf0a470809b0e07b3b9e233cb (patch) | |
tree | f870aaec3f1de9ea9ed22e66acba25b278a32a80 /gcc | |
parent | bb3f5384ba1d5426d1aabe684fe6688c37f50661 (diff) | |
download | gcc-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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 14 | ||||
-rw-r--r-- | gcc/dbxout.c | 17 |
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 |