aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-hppa.c
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>1994-05-17 18:54:50 +0000
committerJeff Law <law@redhat.com>1994-05-17 18:54:50 +0000
commitee8b83460016b61902117b463dfdd6d0323ce3ac (patch)
treef1c147da962ef39b5c93df49bb1982981255a612 /gas/config/tc-hppa.c
parent60b3e2812a7913940ddedea3681f1136d4262346 (diff)
downloadgdb-ee8b83460016b61902117b463dfdd6d0323ce3ac.zip
gdb-ee8b83460016b61902117b463dfdd6d0323ce3ac.tar.gz
gdb-ee8b83460016b61902117b463dfdd6d0323ce3ac.tar.bz2
* config/tc-hppa.c (pa_parse_fp_cmp_cond): Report an error
on a partial completer match.
Diffstat (limited to 'gas/config/tc-hppa.c')
-rw-r--r--gas/config/tc-hppa.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c
index 8a6d775..c90649c 100644
--- a/gas/config/tc-hppa.c
+++ b/gas/config/tc-hppa.c
@@ -3293,13 +3293,25 @@ pa_parse_fp_cmp_cond (s)
{
cond = fp_cond_map[i].cond;
*s += strlen (fp_cond_map[i].string);
+ /* If not a complete match, back up the input string and
+ report an error. */
+ if (**s != ' ' && **s != '\t')
+ {
+ *s -= strlen (fp_cond_map[i].string);
+ break;
+ }
while (**s == ' ' || **s == '\t')
*s = *s + 1;
return cond;
}
}
- as_bad ("Invalid FP Compare Condition: %c", **s);
+ as_bad ("Invalid FP Compare Condition: %s", *s);
+
+ /* Advance over the bogus completer. */
+ while (**s != ',' && **s != ' ' && **s != '\t')
+ *s += 1;
+
return 0;
}