aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
diff options
context:
space:
mode:
authorMatheus Izvekov <mizvekov@gmail.com>2025-10-02 23:47:09 -0300
committerGitHub <noreply@github.com>2025-10-02 23:47:09 -0300
commitc64d4cee657020a65723604ff4f0f81dbcb620e3 (patch)
tree12326d5d9638c0f65fdfb7558d456b60be5710de /llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
parentd0e15f99ead47a077eb9c574e9614dd11a8f1ec1 (diff)
downloadllvm-c64d4cee657020a65723604ff4f0f81dbcb620e3.zip
llvm-c64d4cee657020a65723604ff4f0f81dbcb620e3.tar.gz
llvm-c64d4cee657020a65723604ff4f0f81dbcb620e3.tar.bz2
[clang] fix lambda dependency issue with late parse attributes (#161765)
This fixes a regression introduced in #147835 When parsing a lambda where the call operator has a late parsed attribute, we would try to build a 'this' type for the lambda, but in a lambda 'this' never refers to the lambda class itself. This late parsed attribute can be added implicitly by the -ftrapping-math flag. This patch patch makes it so CXXThisScopeRAII ignores lambdas. This became observable in #147835 because that made clang lazily create tag types, and it removed a workaround for a lambda dependency bug where any previously created tag type for the lambda is discarded after its dependency is recalculated. But the 'this' scope created above would defeat this laziness and create the lambda type too soon, before its dependency was updated. Since this regression was never released, there are no release notes. Fixes #161657
Diffstat (limited to 'llvm/lib/Analysis/ModuleSummaryAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions