[clang-tidy] Fix `bugprone-use-after-move` check to also consider moves in constructor initializers
Fixes PR#38187. Constructors are actually already checked, but only as functions, i.e. the check only looks at the constructor body and not at the initializers, which misses the (common) case where constructor parameters are moved as part of an initializer expression. One remaining false negative is when both the move //and// the use-after-move occur in constructor initializers. This is a lot more difficult to handle, though, because the `bugprone-use-after-move` check is currently based on a CFG that only takes the body into account, not the initializers, so e.g. initialization order would have to manually be considered. I will file a follow-up issue for this once PR#38187 is closed. Reviewed By: carlosgalvezp Differential Revision: https://reviews.llvm.org/D113708
parent
d5730647
Please register or sign in to comment