Don't warn about use of hex floats in c++ mode by default,

matching G++'s behavior.

Warn when -pedantic or -Wc++-hex-floats is passed, and
don't warn if -pedantic -Wno-c++-hex-floats are both passed.

llvm-svn: 104295
This commit is contained in:
Chris Lattner 2010-05-20 23:33:51 +00:00
parent 4401f8873c
commit fd8fb3c4cd
2 changed files with 4 additions and 4 deletions

View File

@ -84,9 +84,9 @@ def err_exponent_has_no_digits : Error<"exponent has no digits">;
def ext_imaginary_constant : Extension<"imaginary constants are an extension">;
def err_hexconstant_requires_exponent : Error<
"hexadecimal floating constants require an exponent">;
def ext_hexconstant_cplusplus : ExtWarn<
def ext_hexconstant_cplusplus : Extension<
"hexadecimal floating constants are a C99 feature that is incompatible with "
"C++0x">;
"C++0x">, InGroup<DiagGroup<"c++-hex-floats">>;
def ext_hexconstant_invalid : Extension<
"hexadecimal floating constants are a C99 feature">;
def ext_binary_literal : Extension<

View File

@ -1,5 +1,5 @@
//RUN: %clang_cc1 -fsyntax-only -verify
//RUN: %clang_cc1 -std=c++0x -fsyntax-only -verify
// RUN: %clang_cc1 -fsyntax-only -verify -pedantic
// RUN: %clang_cc1 -std=c++0x -fsyntax-only -verify
#ifndef __GXX_EXPERIMENTAL_CXX0X__
float f = 0x1p+1; // expected-warning {{incompatible with C++0x}}