diff --git a/gas/ChangeLog b/gas/ChangeLog index 1f8f81a8de..4040f2e63e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2004-01-23 Daniel Jacobowitz + + * config/tc-arm.c (tc_gen_reloc): Improve error message for + undefined local labels. + 2004-01-23 Richard Sandiford * config/tc-mips.c (load_address, macro): Update comments about diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index c290a92850..aef76e7c0c 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;