[clang] [dataflow] Add global condition to DataflowAnalysisContext (PR #65949)
Sam McCall via cfe-commits
cfe-commits at lists.llvm.org
Wed Sep 13 02:46:45 PDT 2023
================
@@ -108,6 +108,16 @@ class DataflowAnalysisContext {
/// A null `PointeeType` can be used for the pointee of `std::nullptr_t`.
PointerValue &getOrCreateNullPointerValue(QualType PointeeType);
+ /// Adds `Constraint` to current and future flow conditions in this context.
+ ///
+ /// The global condition must contain only flow-insensitive information, i.e.
----------------
sam-mccall wrote:
This is a much more accurate descriptor, but IME "flow insensitive" is not good as an actual name. We used "non-flow-sensitive" extensively in nullability and gradually phasing it out in favor of the "type" metaphor, as after many months reading it still requires "deciphering". Mostly it's too long, it's a negative definition, and too technical I think.
The parallel between `addFlowConditionConstraint` and `addFlowInsensitiveInvariant` is also IMO not clear enough. (I'd be in favor of dropping "Constraint" from both, but that's a different change)
I've tried `Common` instead of `Global` which might more clearly emphasize the sharing that happens here - WDYT?
If you feel strongly about `FlowInsensitive` I can use that, it might be more consistent with the framework's style.
https://github.com/llvm/llvm-project/pull/65949
More information about the cfe-commits
mailing list