diff options
| author | Richard Smith <richard-llvm@metafoo.co.uk> | 2011-09-30 00:33:19 +0000 | 
|---|---|---|
| committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2011-09-30 00:33:19 +0000 | 
| commit | 7b729cdbffab7b9b4c93f6350ba1307ec21fe2f8 (patch) | |
| tree | cc40035e2c051ed89ab8ece93d675bb9f9d1bef4 /clang/lib | |
| parent | 2c024b2d6a91274af3400e52e0ee06cdd818c3bd (diff) | |
| download | bcm5719-llvm-7b729cdbffab7b9b4c93f6350ba1307ec21fe2f8.tar.gz bcm5719-llvm-7b729cdbffab7b9b4c93f6350ba1307ec21fe2f8.zip  | |
Suggest adding 'constexpr' if the GNU extension for in-class initializers for static const float members is used in C++11 mode.
llvm-svn: 140828
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 4 | 
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index 7bb3aa15110..3ba9464cb12 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -5879,6 +5879,10 @@ void Sema::AddInitializerToDecl(Decl *RealDecl, Expr *Init,      } else if (T->isFloatingType()) { // also permits complex, which is ok        Diag(VDecl->getLocation(), diag::ext_in_class_initializer_float_type)          << T << Init->getSourceRange(); +      if (getLangOptions().CPlusPlus0x) +        Diag(VDecl->getLocation(), +             diag::note_in_class_initializer_float_type_constexpr) +          << FixItHint::CreateInsertion(VDecl->getLocStart(), "constexpr ");        if (!Init->isValueDependent() &&            !Init->isConstantInitializer(Context, false)) {  | 

