summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2013-01-12 01:05:20 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2013-01-12 01:05:20 +0000
commita7edaad3b66ceb038b6240e32a96e14803e7802c (patch)
tree16c0f5400a8b92017907699f78518bf31d68475d /clang/lib/Sema
parent873c724b4a1662ec5468a055758c11b19ad19ee8 (diff)
downloadbcm5719-llvm-a7edaad3b66ceb038b6240e32a96e14803e7802c.tar.gz
bcm5719-llvm-a7edaad3b66ceb038b6240e32a96e14803e7802c.zip
Only produce one -Wc++98-compat warning when initializing a reference from an init list with multiple elements.
llvm-svn: 172285
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r--clang/lib/Sema/SemaInit.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaInit.cpp b/clang/lib/Sema/SemaInit.cpp
index 111f81e4499..94dd2aa45c7 100644
--- a/clang/lib/Sema/SemaInit.cpp
+++ b/clang/lib/Sema/SemaInit.cpp
@@ -4877,6 +4877,7 @@ InitializationSequence::Perform(Sema &S,
if (S.getLangOpts().CPlusPlus11 && Entity.getType()->isReferenceType() &&
Args.size() == 1 && isa<InitListExpr>(Args[0]) &&
+ cast<InitListExpr>(Args[0])->getNumInits() == 1 &&
Entity.getKind() != InitializedEntity::EK_Parameter) {
// Produce a C++98 compatibility warning if we are initializing a reference
// from an initializer list. For parameters, we produce a better warning
OpenPOWER on IntegriCloud