summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/TreeTransform.h
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2014-07-10 20:53:43 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2014-07-10 20:53:43 +0000
commit95b83e917e40bafd7e5bf0a4cdc592745b3b1fcc (patch)
tree1986b9372b0df622f7c861e17b6ce74c887aa0db /clang/lib/Sema/TreeTransform.h
parent31fd9d09b2ac07e0bae0a81d387db89d5090769d (diff)
downloadbcm5719-llvm-95b83e917e40bafd7e5bf0a4cdc592745b3b1fcc.tar.gz
bcm5719-llvm-95b83e917e40bafd7e5bf0a4cdc592745b3b1fcc.zip
PR20256: don't accidentally instantiate non-dependent default-initialization as
value-initialization. llvm-svn: 212764
Diffstat (limited to 'clang/lib/Sema/TreeTransform.h')
-rw-r--r--clang/lib/Sema/TreeTransform.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Sema/TreeTransform.h b/clang/lib/Sema/TreeTransform.h
index 5626ad59241..269a3bd8a84 100644
--- a/clang/lib/Sema/TreeTransform.h
+++ b/clang/lib/Sema/TreeTransform.h
@@ -2891,6 +2891,13 @@ ExprResult TreeTransform<Derived>::TransformInitializer(Expr *Init,
// Build a ParenListExpr to represent anything else.
SourceRange Parens = Construct->getParenOrBraceRange();
+ if (Parens.isInvalid()) {
+ // This was a variable declaration's initialization for which no initializer
+ // was specified.
+ assert(NewArgs.empty() &&
+ "no parens or braces but have direct init with arguments?");
+ return ExprEmpty();
+ }
return getDerived().RebuildParenListExpr(Parens.getBegin(), NewArgs,
Parens.getEnd());
}
OpenPOWER on IntegriCloud