diff options
author | dim <dim@FreeBSD.org> | 2015-02-14 12:18:48 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2015-02-14 12:18:48 +0000 |
commit | ff28d95d1f024411955913aaa68c17f2b09c46fd (patch) | |
tree | dfd4e4f0fa9ce6e010e098662d5f00a37c9ff0e3 /lib/Parse/ParseExprCXX.cpp | |
parent | cf8e1ca250cdf4ade1e7d628e56040eb27797b5d (diff) | |
download | FreeBSD-src-ff28d95d1f024411955913aaa68c17f2b09c46fd.zip FreeBSD-src-ff28d95d1f024411955913aaa68c17f2b09c46fd.tar.gz |
Vendor import of clang RELEASE_360/rc3 tag r229040 (effectively, 3.6.0 RC3):
https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_360/rc3@229040
Diffstat (limited to 'lib/Parse/ParseExprCXX.cpp')
-rw-r--r-- | lib/Parse/ParseExprCXX.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/Parse/ParseExprCXX.cpp b/lib/Parse/ParseExprCXX.cpp index 355503c..67496ed 100644 --- a/lib/Parse/ParseExprCXX.cpp +++ b/lib/Parse/ParseExprCXX.cpp @@ -894,11 +894,16 @@ Optional<unsigned> Parser::ParseLambdaIntroducer(LambdaIntroducer &Intro, // to save the necessary state, and restore it later. EnterExpressionEvaluationContext EC(Actions, Sema::PotentiallyEvaluated); - TryConsumeToken(tok::equal); + bool HadEquals = TryConsumeToken(tok::equal); - if (!SkippedInits) + if (!SkippedInits) { + // Warn on constructs that will change meaning when we implement N3922 + if (!HadEquals && Tok.is(tok::l_brace)) { + Diag(Tok, diag::warn_init_capture_direct_list_init) + << FixItHint::CreateInsertion(Tok.getLocation(), "="); + } Init = ParseInitializer(); - else if (Tok.is(tok::l_brace)) { + } else if (Tok.is(tok::l_brace)) { BalancedDelimiterTracker Braces(*this, tok::l_brace); Braces.consumeOpen(); Braces.skipToEnd(); |