------- Comment #3 from janis at gcc dot gnu dot org  2009-05-07 22:34 -------
Subject: Bug 39037

Author: janis
Date: Thu May  7 22:34:08 2009
New Revision: 147259

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=147259
Log:
gcc/
        PR c/39037
        * c-common.h (mark_valid_location_for_stdc_pragma,
        valid_location_for_stdc_pragma_p, set_float_const_decimal64,
        clear_float_const_decimal64, float_const_decimal64_p): New.
        * c.opt (Wunsuffixed-float-constants): New.
        * c-lex.c (interpret_float): Use pragma FLOAT_CONST_DECIMAL64 for
        unsuffixed float constant, handle new warning.
        * c-cppbuiltin.c (c_cpp_builtins): Use cast for double constants.
        * c-decl.c (c_scope): New flag float_const_decimal64.
        (set_float_const_decimal64, clear_float_const_decimal64,
        float_const_decimal64_p): New.
        (push_scope): Set new flag.
        * c-parser.c (c_parser_translation_unit): Mark when it's valid
        to use STDC pragmas.
        (c_parser_external_declaration): Ditto.
        (c_parser_compound_statement_nostart): Ditto.
        * c-pragma.c (valid_location_for_stdc_pragma,
        mark_valid_location_for_stdc_pragma,
        valid_location_for_stdc_pragma_p, handle_stdc_pragma,
        handle_pragma_float_const_decimal64): New.
        (init_pragma): Register new pragma FLOAT_CONST_DECIMAL64.
        * cp/semantics.c (valid_location_for_stdc_pragma_p,
        set_float_const_decimal64, clear_float_const_decimal64,
        float_const_decimal64_p): New dummy functions.
        * doc/extend.texi (Decimal Float): Remove statement that the
        pragma, and suffix for double constants, are not supported.
        * doc/invoke.texi (Warning Options): List new option.
        (-Wunsuffixed-float-constants): New.

gcc/testsuite
        PR c/39037
        * gcc.dg/Wunsuffixed-float-constants-1.c: New test.
        * gcc.dg/cpp/pragma-float-const-decimal64-1.c: New test.
        * gcc.dg/dfp/float-constant-double.c: New test.
        * gcc.dg/dfp/pragma-float-const-decimal64-1.c: New test.
        * gcc.dg/dfp/pragma-float-const-decimal64-2.c: New test.
        * gcc.dg/dfp/pragma-float-const-decimal64-3.c: New test.
        * gcc.dg/dfp/pragma-float-const-decimal64-4.c: New test.
        * gcc.dg/dfp/pragma-float-const-decimal64-5.c: New test.
        * gcc.dg/dfp/pragma-float-const-decimal64-6.c: New test.
        * gcc.dg/dfp/pragma-float-const-decimal64-7.c: New test.
        * gcc.dg/dfp/pragma-float-const-decimal64-8.c: New test.
        * g++.dg/cpp/pragma-float-const-decimal64-1.C: New test.

Added:
    trunk/gcc/testsuite/g++.dg/cpp/pragma-float-const-decimal64-1.C
    trunk/gcc/testsuite/gcc.dg/Wunsuffixed-float-constants-1.c
    trunk/gcc/testsuite/gcc.dg/cpp/pragma-float-const-decimal64-1.c
    trunk/gcc/testsuite/gcc.dg/dfp/float-constant-double.c
    trunk/gcc/testsuite/gcc.dg/dfp/pragma-float-const-decimal64-1.c
    trunk/gcc/testsuite/gcc.dg/dfp/pragma-float-const-decimal64-2.c
    trunk/gcc/testsuite/gcc.dg/dfp/pragma-float-const-decimal64-3.c
    trunk/gcc/testsuite/gcc.dg/dfp/pragma-float-const-decimal64-4.c
    trunk/gcc/testsuite/gcc.dg/dfp/pragma-float-const-decimal64-5.c
    trunk/gcc/testsuite/gcc.dg/dfp/pragma-float-const-decimal64-6.c
    trunk/gcc/testsuite/gcc.dg/dfp/pragma-float-const-decimal64-7.c
    trunk/gcc/testsuite/gcc.dg/dfp/pragma-float-const-decimal64-8.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/c-common.h
    trunk/gcc/c-cppbuiltin.c
    trunk/gcc/c-decl.c
    trunk/gcc/c-lex.c
    trunk/gcc/c-parser.c
    trunk/gcc/c-pragma.c
    trunk/gcc/c.opt
    trunk/gcc/cp/semantics.c
    trunk/gcc/doc/extend.texi
    trunk/gcc/doc/invoke.texi
    trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39037

Reply via email to