parent
aaf9712e79
commit
fdeefd4955
|
@ -1147,13 +1147,6 @@ build_array_ref (array, index)
|
||||||
{
|
{
|
||||||
tree rval, type;
|
tree rval, type;
|
||||||
|
|
||||||
if (index != error_mark_node
|
|
||||||
&& TREE_CODE (TREE_TYPE (index)) != INTEGER_TYPE)
|
|
||||||
{
|
|
||||||
error ("array subscript is not an integer");
|
|
||||||
return error_mark_node;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Subscripting with type char is likely to lose
|
/* Subscripting with type char is likely to lose
|
||||||
on a machine where chars are signed.
|
on a machine where chars are signed.
|
||||||
So warn on any machine, but optionally.
|
So warn on any machine, but optionally.
|
||||||
|
@ -1167,6 +1160,13 @@ build_array_ref (array, index)
|
||||||
/* Apply default promotions *after* noticing character types. */
|
/* Apply default promotions *after* noticing character types. */
|
||||||
index = default_conversion (index);
|
index = default_conversion (index);
|
||||||
|
|
||||||
|
/* Require integer *after* promotion, for sake of enums. */
|
||||||
|
if (TREE_CODE (TREE_TYPE (index)) != INTEGER_TYPE)
|
||||||
|
{
|
||||||
|
error ("array subscript is not an integer");
|
||||||
|
return error_mark_node;
|
||||||
|
}
|
||||||
|
|
||||||
/* An array that is indexed by a non-constant
|
/* An array that is indexed by a non-constant
|
||||||
cannot be stored in a register; we must be able to do
|
cannot be stored in a register; we must be able to do
|
||||||
address arithmetic on its address.
|
address arithmetic on its address.
|
||||||
|
|
Loading…
Reference in New Issue