aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2004-01-23 16:29:34 +0000
committerDaniel Jacobowitz <drow@false.org>2004-01-23 16:29:34 +0000
commitc3ba240c754f32f7ac05536462793dc659928b0f (patch)
tree0c3a13816ae128bff8c8a6cad5c2f9e6ef3e4e61 /gas/config
parent34cc4ecc82991f61e55c2625d32115d865575310 (diff)
downloadgdb-c3ba240c754f32f7ac05536462793dc659928b0f.zip
gdb-c3ba240c754f32f7ac05536462793dc659928b0f.tar.gz
gdb-c3ba240c754f32f7ac05536462793dc659928b0f.tar.bz2
* config/tc-arm.c (tc_gen_reloc): Improve error message for
undefined local labels.
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-arm.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index c290a92..aef76e7 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -12823,6 +12823,16 @@ tc_gen_reloc (section, fixp)
return NULL;
case BFD_RELOC_ARM_OFFSET_IMM:
+ if (fixp->fx_addsy != NULL
+ && !S_IS_DEFINED (fixp->fx_addsy)
+ && S_IS_LOCAL (fixp->fx_addsy))
+ {
+ as_bad_where (fixp->fx_file, fixp->fx_line,
+ _("undefined local label `%s'"),
+ S_GET_NAME (fixp->fx_addsy));
+ return NULL;
+ }
+
as_bad_where (fixp->fx_file, fixp->fx_line,
_("internal_relocation (type: OFFSET_IMM) not fixed up"));
return NULL;