================
@@ -286,6 +286,35 @@ class StoreManager {
/// iterBindings - Iterate over the bindings in the Store.
virtual void iterBindings(Store store, BindingsHandler& f) = 0;
+ /// The kind of a binding: either \c Direct, a value bound to one specific
+ /// location, or \c Default, a value covering every location of a region
+ /// without its own direct binding. Can't reuse BindingKey::Kind because it
is
+ /// a file-local in RegionStore.cpp. Symbolic-ness is tracked by \c BitOffset
+ /// instead of in the enum.
----------------
NagyDonat wrote:
Actually now that I see the complications with the bitflag semantics (which I
didn't check before writing my original suggestion), I prefer the original
approach instead of
https://github.com/llvm/llvm-project/pull/188128/commits/779e82185a41cd5b99b3794a857116c466aebeb7.
The code fragment `enum {Default, Direct}` is so trivial that duplicating it is
not a serious issue; and the new approach adds roughly a dozen lines of
additional "glue" code that is avoided in the original variant.
https://github.com/llvm/llvm-project/pull/188128
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits