From e0bf6b33d8c20f0ecfa9e9e5040538170893a172 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Mon, 21 Nov 1994 11:06:09 -0800 Subject: [PATCH] (yylex): Do warn about floating point out of range if target floating-point format is IEEE. (yylex): Do warn about floating point out of range if target floating-point format is IEEE. Use warning instead of pedwarn to avoid getting errors. From-SVN: r8538 --- gcc/c-lex.c | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/gcc/c-lex.c b/gcc/c-lex.c index 17d50bef181a..e4d8bf913c61 100644 --- a/gcc/c-lex.c +++ b/gcc/c-lex.c @@ -1360,24 +1360,24 @@ yylex () type = float_type_node; value = REAL_VALUE_ATOF (copy, TYPE_MODE (type)); - if (TARGET_FLOAT_FORMAT != IEEE_FLOAT_FORMAT - && REAL_VALUE_ISINF (value) && pedantic) - pedwarn ("floating point number exceeds range of `float'"); + /* A diagnostic is required here by some ANSI C testsuites. + This is not pedwarn, become some people don't want + an error for this. */ + if (REAL_VALUE_ISINF (value) && pedantic) + warning ("floating point number exceeds range of `float'"); } else if (lflag) { type = long_double_type_node; value = REAL_VALUE_ATOF (copy, TYPE_MODE (type)); - if (TARGET_FLOAT_FORMAT != IEEE_FLOAT_FORMAT - && REAL_VALUE_ISINF (value) && pedantic) - pedwarn ("floating point number exceeds range of `long double'"); + if (REAL_VALUE_ISINF (value) && pedantic) + warning ("floating point number exceeds range of `long double'"); } else { value = REAL_VALUE_ATOF (copy, TYPE_MODE (type)); - if (TARGET_FLOAT_FORMAT != IEEE_FLOAT_FORMAT - && REAL_VALUE_ISINF (value) && pedantic) - pedwarn ("floating point number exceeds range of `double'"); + if (REAL_VALUE_ISINF (value) && pedantic) + warning ("floating point number exceeds range of `double'"); } set_float_handler (NULL_PTR); @@ -1387,11 +1387,10 @@ yylex () { /* ERANGE is also reported for underflow, so test the value to distinguish overflow from that. */ - if (TARGET_FLOAT_FORMAT != IEEE_FLOAT_FORMAT - && (REAL_VALUES_LESS (dconst1, value) - || REAL_VALUES_LESS (value, dconstm1))) + if (REAL_VALUES_LESS (dconst1, value) + || REAL_VALUES_LESS (value, dconstm1)) { - pedwarn ("floating point number exceeds range of `double'"); + warning ("floating point number exceeds range of `double'"); exceeds_double = 1; } } -- 2.43.5