diff options
author | Eric Li <li.zhe.hua@gmail.com> | 2022-05-25 20:15:46 +0000 |
---|---|---|
committer | Eric Li <li.zhe.hua@gmail.com> | 2022-05-25 20:58:02 +0000 |
commit | 5520c5839016d1d98d8e01789eb17c910381bd6f (patch) | |
tree | a9c02651bb4bb9404df77f33aa4fee1d83ced55d /llvm/lib/Transforms/Utils/LoopUtils.cpp | |
parent | 33b598a808b9ef1a019e798f19855f203e09ad48 (diff) | |
download | llvm-5520c5839016d1d98d8e01789eb17c910381bd6f.zip llvm-5520c5839016d1d98d8e01789eb17c910381bd6f.tar.gz llvm-5520c5839016d1d98d8e01789eb17c910381bd6f.tar.bz2 |
[clang][dataflow] Fix incorrect CXXThisExpr pointee for lambdas
When constructing the `Environment`, the `this` pointee is established
for a `CXXMethodDecl` by looking at its parent. However, inside of
lambdas, a `CXXThisExpr` refers to the captured `this` coming from the
enclosing member function.
When establishing the `this` pointee for a function, we check whether
the function is a lambda, and check for an enclosing member function
to establish the `this` pointee storage location.
Differential Revision: https://reviews.llvm.org/D126413
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUtils.cpp')
0 files changed, 0 insertions, 0 deletions