From: Janis Johnson Date: Mon, 14 May 2007 23:45:40 +0000 (+0000) Subject: expr.c (cpp_classify_number): Warn about dfp constant for -pedantic. X-Git-Tag: releases/gcc-4.3.0~5094 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5a6bb57eb9ad3397408aedca5c362ef36340a907;p=thirdparty%2Fgcc.git expr.c (cpp_classify_number): Warn about dfp constant for -pedantic. libcpp/ * expr.c (cpp_classify_number): Warn about dfp constant for -pedantic. gcc/testsuite/ * gcc.dg/fltconst-pedantic-dfp.c: New test. From-SVN: r124731 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b195815eda09..159cee585207 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,7 @@ 2007-05-14 Janis Johnson + * expr.c (cpp_classify_number): Warn about dfp constant for -pedantic. + PR c/31924 * gcc.dg/fltconst-1.c: New test. diff --git a/gcc/testsuite/gcc.dg/fltconst-pedantic-dfp.c b/gcc/testsuite/gcc.dg/fltconst-pedantic-dfp.c new file mode 100644 index 000000000000..d0d1c4c52fc9 --- /dev/null +++ b/gcc/testsuite/gcc.dg/fltconst-pedantic-dfp.c @@ -0,0 +1,6 @@ +/* { dg-do compile } */ +/* { dg-options "-pedantic" } */ + +double a = 1.dl; /* { dg-warning "decimal float" } */ +double b = 1.df; /* { dg-warning "decimal float" } */ +double c = 1.dd; /* { dg-warning "decimal float" } */ diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 5b941ff9cca7..31d96e8b6845 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,5 +1,7 @@ 2007-05-14 Janis Johnson + * expr.c (cpp_classify_number): Warn about dfp constant for -pedantic. + PR c/31924 * expr.c (interpret_float_suffix): Check for invalid suffix. diff --git a/libcpp/expr.c b/libcpp/expr.c index 8401daee032f..20090195acc1 100644 --- a/libcpp/expr.c +++ b/libcpp/expr.c @@ -273,6 +273,10 @@ cpp_classify_number (cpp_reader *pfile, const cpp_token *token) return CPP_N_INVALID; } + if ((result & CPP_N_DFLOAT) && CPP_PEDANTIC (pfile)) + cpp_error (pfile, CPP_DL_PEDWARN, + "decimal float constants are a GCC extension"); + result |= CPP_N_FLOATING; } else