diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-02-05 05:52:24 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-02-05 05:52:24 +0000 |
commit | a4dc51b46861eb52626f89183da7610437baba93 (patch) | |
tree | d739e9b53f7280857759856b8d0388059a183ed3 /lib/Sema/SemaInit.cpp | |
parent | 152ea0e4711f7aed75f6a1d1995b0bd94eb31c98 (diff) |
Add some missing diagnostics for C++11 narrowing conversions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174337 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaInit.cpp')
-rw-r--r-- | lib/Sema/SemaInit.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/Sema/SemaInit.cpp b/lib/Sema/SemaInit.cpp index 95f6c76be7..87e6648d92 100644 --- a/lib/Sema/SemaInit.cpp +++ b/lib/Sema/SemaInit.cpp @@ -4729,7 +4729,8 @@ PerformConstructorInitialization(Sema &S, // call. if (S.CompleteConstructorCall(Constructor, Args, Loc, ConstructorArgs, - AllowExplicitConv)) + AllowExplicitConv, + IsListInitialization)) return ExprError(); @@ -5474,9 +5475,9 @@ InitializationSequence::Perform(Sema &S, for (unsigned i = 0; i < NumInits; ++i) { Element.setElementIndex(i); ExprResult Init = S.Owned(ILE->getInit(i)); - ExprResult Res = S.PerformCopyInitialization(Element, - Init.get()->getExprLoc(), - Init); + ExprResult Res = S.PerformCopyInitialization( + Element, Init.get()->getExprLoc(), Init, + /*TopLevelOfInitList=*/ true); assert(!Res.isInvalid() && "Result changed since try phase."); Converted[i] = Res.take(); } @@ -6189,7 +6190,11 @@ void InitializationSequence::dump(raw_ostream &OS) const { OS << "OpenCL event_t from zero"; break; } + + OS << " [" << S->Type.getAsString() << ']'; } + + OS << '\n'; } void InitializationSequence::dump() const { |