Improved error message to include symbol's name.

This commit is contained in:
Nick Clifton
1997-09-18 22:02:06 +00:00
parent af6f39b4c4
commit 55e6f0bf32
2 changed files with 15 additions and 9 deletions

View File

@ -1,3 +1,7 @@
Thu Sep 18 15:04:57 1997 Nick Clifton <nickc@cygnus.com>
* elf32-v850.c (v850_elf_check_relocs): Improve error message.
Wed Sep 17 09:54:51 1997 Nick Clifton <nickc@cygnus.com> Wed Sep 17 09:54:51 1997 Nick Clifton <nickc@cygnus.com>
start-sanitize-v850e start-sanitize-v850e

View File

@ -586,29 +586,31 @@ v850_elf_check_relocs (abfd, info, sec, relocs)
if ((h->other & V850_OTHER_MASK) != (other & V850_OTHER_MASK) if ((h->other & V850_OTHER_MASK) != (other & V850_OTHER_MASK)
&& (h->other & V850_OTHER_ERROR) == 0) && (h->other & V850_OTHER_ERROR) == 0)
{ {
const char *msg; const char * msg;
static char buff[100]; /* XXX */
switch (h->other & V850_OTHER_MASK) switch (h->other & V850_OTHER_MASK)
{ {
default: default:
msg = "Variable cannot occupy in multiple small data regions"; msg = "cannot occupy in multiple small data regions";
break; break;
case V850_OTHER_SDA | V850_OTHER_ZDA | V850_OTHER_TDA: case V850_OTHER_SDA | V850_OTHER_ZDA | V850_OTHER_TDA:
msg = "Variable can only be in one of the small, zero, and tiny data regions"; msg = "can only be in one of the small, zero, and tiny data regions";
break; break;
case V850_OTHER_SDA | V850_OTHER_ZDA: case V850_OTHER_SDA | V850_OTHER_ZDA:
msg = "Variable cannot be in both small and zero data regions simultaneously"; msg = "cannot be in both small and zero data regions simultaneously";
break; break;
case V850_OTHER_SDA | V850_OTHER_TDA: case V850_OTHER_SDA | V850_OTHER_TDA:
msg = "Variable cannot be in both small and tiny data regions simultaneously"; msg = "cannot be in both small and tiny data regions simultaneously";
break; break;
case V850_OTHER_ZDA | V850_OTHER_TDA: case V850_OTHER_ZDA | V850_OTHER_TDA:
msg = "Variable cannot be in both zero and tiny data regions simultaneously"; msg = "cannot be in both zero and tiny data regions simultaneously";
break; break;
} }
(*info->callbacks->warning) (info, msg, h->root.root.string, sprintf (buff, "Variable '%s' %s", h->root.root.string, msg );
abfd, h->root.u.def.section, 0); info->callbacks->warning (info, buff, h->root.root.string,
abfd, h->root.u.def.section, 0);
bfd_set_error (bfd_error_bad_value); bfd_set_error (bfd_error_bad_value);
h->other |= V850_OTHER_ERROR; h->other |= V850_OTHER_ERROR;