================
@@ -162,22 +161,22 @@ class ExprEngine {
/// which has three independent roles:
/// - It holds a pointer to the CFGBlock that is currently under analysis.
/// (This is the primary way to get the current block.)
- /// - It holds a pointer to the current LocationContext. (This is rarely
- /// used, the location context is usually queried from a recent
+ /// - It holds a pointer to the current StackFrame. (This is rarely
+ /// used, the stack frame is usually queried from a recent
/// ExplodedNode. Unfortunately it seems that these two sources of truth
/// are not always consistent.)
/// - It can be used for constructing `NodeBuilder`s. Practically all
/// `NodeBuilder` objects are useless complications in the code, so I
/// intend to replace them with direct use of `CoreEngine::makeNode`.
/// TODO: Eventually `currBldrCtx` should be replaced by two separate fields:
- /// `const CFGBlock *CurrBlock` & `const LocationContext
*CurrLocationContext`
+ /// `const CFGBlock *CurrBlock` & `const StackFrame *CurrStackFrame`
/// that are kept up-to-date and are almost always non-null during the
/// analysis. I will switch to this more natural representation when
/// `NodeBuilder`s are eliminated from the code.
const NodeBuilderContext *currBldrCtx = nullptr;
/// Historically `currBldrCtx` pointed to a local variable in some stack
/// frame. This field is introduced as a temporary measure to allow a gradual
- /// transition. Only use this in {re,}setLocationContextAndBlock!
+ /// transition. Only use this in {re,}setStackFrameAndBlock!
----------------
tigbr wrote:
Yes, there are, however, they are called `setCurrStackFrameAndBlock` and
`resetCurrStackFrameAndBlock`. I will update the comment.
https://github.com/llvm/llvm-project/pull/198211
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits