some very minor changes
This commit is contained in:
parent
c3d4d40d1b
commit
66c247ba9c
|
@ -141,13 +141,16 @@ any2arith(expp, oper)
|
|||
case LONG:
|
||||
break;
|
||||
case ENUM:
|
||||
/* test the admissibility of the operator */
|
||||
if ( is_test_op(oper) || oper == '=' || oper == PARCOMMA ||
|
||||
oper == ',' || oper == ':' ||
|
||||
( !options['R'] &&
|
||||
(is_arith_op(oper) || is_asgn_op(oper))
|
||||
)
|
||||
)
|
||||
{}
|
||||
oper == ',' || oper == ':'
|
||||
) {
|
||||
/* allowed by K & R */
|
||||
}
|
||||
else
|
||||
if (!options['R']) {
|
||||
/* allowed by us */
|
||||
}
|
||||
else
|
||||
expr_warning(*expp, "%s on enum", symbol2str(oper));
|
||||
int2int(expp, int_type);
|
||||
|
|
|
@ -208,7 +208,7 @@ arrayer(arith *sizep;)
|
|||
[
|
||||
constant_expression(&expr)
|
||||
{
|
||||
array_subscript(expr);
|
||||
check_array_subscript(expr);
|
||||
*sizep = expr->VL_VALUE;
|
||||
free_expression(expr);
|
||||
}
|
||||
|
|
|
@ -89,7 +89,7 @@ reject_params(dc)
|
|||
}
|
||||
}
|
||||
|
||||
array_subscript(expr)
|
||||
check_array_subscript(expr)
|
||||
register struct expr *expr;
|
||||
{
|
||||
arith size = expr->VL_VALUE;
|
||||
|
@ -104,7 +104,7 @@ array_subscript(expr)
|
|||
expr->VL_VALUE = (arith)-1;
|
||||
}
|
||||
else
|
||||
if (size & ~max_unsigned) { /* absolute ridiculous */
|
||||
if (size & ~max_unsigned) { /* absolutely ridiculous */
|
||||
expr_error(expr, "overflow in array size");
|
||||
expr->VL_VALUE = (arith)1;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue