]> granicus.if.org Git - clang/commit
Revert rL362358 : PR42104: Support instantiations of lambdas that implicitly capture...
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Mon, 3 Jun 2019 09:56:09 +0000 (09:56 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Mon, 3 Jun 2019 09:56:09 +0000 (09:56 +0000)
commit396b66e348f1ade4a0ae032e173f9269596a5556
tree662cf58885dffd39ac22617e03f8c26c97dc03d3
parent6767591efeeb1b46faa558f0707bb4efc4315cb9
Revert rL362358 : PR42104: Support instantiations of lambdas that implicitly capture packs.

Two changes:
 * Track odr-use via FunctionParmPackExprs to properly handle dependent
   odr-uses of packs in generic lambdas.
 * Do not instantiate implicit captures; instead, regenerate them by
   instantiating the body of the lambda. This is necessary to
   distinguish between cases where only one element of a pack is
   captured and cases where the entire pack is captured.
........
Fixes http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-win buildbot failures

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@362375 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Sema/ScopeInfo.h
include/clang/Sema/Sema.h
lib/Sema/ScopeInfo.cpp
lib/Sema/SemaExpr.cpp
lib/Sema/SemaExprCXX.cpp
lib/Sema/SemaTemplateInstantiate.cpp
lib/Sema/TreeTransform.h
test/SemaCXX/cxx1y-generic-lambdas-capturing.cpp
test/SemaTemplate/lambda-capture-pack.cpp [deleted file]