Commit e53c841d by Richard Stallman

*** empty log message ***

From-SVN: r1041
parent 0eb9f40e
...@@ -1290,7 +1290,7 @@ yylex () ...@@ -1290,7 +1290,7 @@ yylex ()
set_float_handler (0); set_float_handler (0);
} }
#ifdef ERANGE #ifdef ERANGE
if (errno == ERANGE && !flag_traditional) if (errno == ERANGE && !flag_traditional && pedantic)
{ {
char *p1 = token_buffer; char *p1 = token_buffer;
/* Check for "0.0" and variants; /* Check for "0.0" and variants;
...@@ -1321,9 +1321,14 @@ yylex () ...@@ -1321,9 +1321,14 @@ yylex ()
{ {
if (f_seen) if (f_seen)
error ("two `f's in floating constant"); error ("two `f's in floating constant");
f_seen = 1; else
type = float_type_node; {
value = REAL_VALUE_TRUNCATE (TYPE_MODE (type), value); f_seen = 1;
type = float_type_node;
value = REAL_VALUE_TRUNCATE (TYPE_MODE (type), value);
if (REAL_VALUE_ISINF (value) && pedantic)
pedwarn ("floating point number exceeds range of `float'");
}
} }
else if (c == 'l' || c == 'L') else if (c == 'l' || c == 'L')
{ {
......
...@@ -1913,13 +1913,17 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p) ...@@ -1913,13 +1913,17 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p)
while (c = *p++) while (c = *p++)
if (c == '%') if (c == '%')
{ {
/* The last operand should not be marked commutative. This /* The last operand should not be marked commutative. */
problem is hard to detect, so make it obvious by calling
abort here. */
if (i == noperands - 1) if (i == noperands - 1)
abort (); {
if (this_insn_is_asm)
commutative = i; warning_for_asm (this_insn,
"`%' constraint used with last operand");
else
abort ();
}
else
commutative = i;
} }
else if (c >= '0' && c <= '9') else if (c >= '0' && c <= '9')
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment