(operand): Do not as_bad() if RELAX_PAREN_GROUPING is

defined.  Fix error message and double increment of
input_line_pointer for `[' grouping.
This commit is contained in:
Alan Modra 2000-06-23 10:12:48 +00:00
parent 97c3646ff2
commit f7c8887211
2 changed files with 14 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2000-06-23 matthew green <mrg@redhat.com>
* expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is
defined. Fix error message and double increment of
input_line_pointer for `[' grouping.
2000-06-22 Kazu Hirata <kazu@hxi.com>
* config/tc-h8300.c: Fix formatting and comment typos.

View File

@ -1004,12 +1004,16 @@ operand (expressionP)
/* didn't begin with digit & not a name */
segment = expression (expressionP);
/* Expression() will pass trailing whitespace */
if ((c == '(' && *input_line_pointer++ != ')')
|| (c == '[' && *input_line_pointer++ != ']'))
if ((c == '(' && *input_line_pointer != ')')
|| (c == '[' && *input_line_pointer != ']'))
{
as_bad (_("Missing ')' assumed"));
input_line_pointer--;
#ifdef RELAX_PAREN_GROUPING
if (c != '(')
#endif
as_bad (_("Missing '%c' assumed"), c == '(' ? ')' : ']');
}
else
input_line_pointer++;
SKIP_WHITESPACE ();
/* here with input_line_pointer->char after "(...)" */
return segment;