diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2015-10-05 20:05:21 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2015-10-05 20:05:21 +0000 |
commit | 42fd9efa38e6f6e04824ede2cbb8bb1f73d0e9ad (patch) | |
tree | e2729d331ebba930eeed3c798bac69830c95f687 /clang/lib/Sema/SemaTemplateInstantiate.cpp | |
parent | 478a8eb2b6da49b2f018c1ed925c9e4ee4213ae8 (diff) | |
download | bcm5719-llvm-42fd9efa38e6f6e04824ede2cbb8bb1f73d0e9ad.tar.gz bcm5719-llvm-42fd9efa38e6f6e04824ede2cbb8bb1f73d0e9ad.zip |
Revert r107690 (for PR7417) and add a testcase that it breaks. The approach of
that change turns out to not be reasonable: mutating the AST of a parsed
template during instantiation is not a sound thing to do, does not work across
chained PCH / modules builds, and is in any case a special-case workaround to a
more general problem that should be solved centrally.
llvm-svn: 249342
Diffstat (limited to 'clang/lib/Sema/SemaTemplateInstantiate.cpp')
-rw-r--r-- | clang/lib/Sema/SemaTemplateInstantiate.cpp | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/clang/lib/Sema/SemaTemplateInstantiate.cpp b/clang/lib/Sema/SemaTemplateInstantiate.cpp index 014fe1db7e7..3a3f6323d4b 100644 --- a/clang/lib/Sema/SemaTemplateInstantiate.cpp +++ b/clang/lib/Sema/SemaTemplateInstantiate.cpp @@ -817,14 +817,6 @@ namespace { QualType TransformSubstTemplateTypeParmPackType(TypeLocBuilder &TLB, SubstTemplateTypeParmPackTypeLoc TL); - ExprResult TransformCallExpr(CallExpr *CE) { - getSema().CallsUndergoingInstantiation.push_back(CE); - ExprResult Result = - TreeTransform<TemplateInstantiator>::TransformCallExpr(CE); - getSema().CallsUndergoingInstantiation.pop_back(); - return Result; - } - ExprResult TransformLambdaExpr(LambdaExpr *E) { LocalInstantiationScope Scope(SemaRef, /*CombineWithOuterScope=*/true); return TreeTransform<TemplateInstantiator>::TransformLambdaExpr(E); |