diff options
author | Nick Clifton <nickc@redhat.com> | 2009-12-11 13:42:17 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2009-12-11 13:42:17 +0000 |
commit | 91d6fa6a035cc7d0b7be5c99c194a64cb80924b0 (patch) | |
tree | 214507c313b77d619b52afcae2af0b02c9fa700b /gas/write.c | |
parent | 01fe1b4183324882e88e8c64748bffdc69ea3a9c (diff) | |
download | gdb-91d6fa6a035cc7d0b7be5c99c194a64cb80924b0.zip gdb-91d6fa6a035cc7d0b7be5c99c194a64cb80924b0.tar.gz gdb-91d6fa6a035cc7d0b7be5c99c194a64cb80924b0.tar.bz2 |
Add -Wshadow to the gcc command line options used when compiling the binutils.
Fix up all warnings generated by the addition of this switch.
Diffstat (limited to 'gas/write.c')
-rw-r--r-- | gas/write.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/gas/write.c b/gas/write.c index 8adb87b..1ded21f 100644 --- a/gas/write.c +++ b/gas/write.c @@ -1787,22 +1787,24 @@ write_object_file (void) if (symbol_equated_reloc_p (symp) || S_IS_WEAKREFR (symp)) { - const char *name = S_GET_NAME (symp); + const char *sname = S_GET_NAME (symp); + if (S_IS_COMMON (symp) - && !TC_FAKE_LABEL (name) + && !TC_FAKE_LABEL (sname) && !S_IS_WEAKREFR (symp) && (!S_IS_EXTERNAL (symp) || S_IS_LOCAL (symp))) { expressionS *e = symbol_get_value_expression (symp); + as_bad (_("Local symbol `%s' can't be equated to common symbol `%s'"), - name, S_GET_NAME (e->X_add_symbol)); + sname, S_GET_NAME (e->X_add_symbol)); } if (S_GET_SEGMENT (symp) == reg_section) { /* Report error only if we know the symbol name. */ if (S_GET_NAME (symp) != reg_section->name) as_bad (_("can't make global register symbol `%s'"), - name); + sname); } symbol_remove (symp, &symbol_rootP, &symbol_lastP); continue; |