File tree Expand file tree Collapse file tree
unified/ql/lib/codeql/unified/internal Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -335,14 +335,19 @@ module Track<TrackInputSig Input> {
335335 }
336336}
337337
338+ pragma [ nomagic]
339+ private predicate derivedStoreReadStep0 ( NamespaceNode namespace , string name , NameBindingNode node2 ) {
340+ readStep ( namespace .ref ( ) , pragma [ only_bind_into ] ( name ) , node2 )
341+ }
342+
338343/**
339344 * Holds if `node1 -> node2` is derived by combining a store and a read step, with zero or more value steps and inheritance steps in-between.
340345 */
341346pragma [ nomagic]
342347private predicate derivedStoreReadStep ( NameBindingNode node1 , NameBindingNode node2 ) {
343348 exists ( NamespaceNode namespace , string name |
344- node1 = namespace .getMember ( pragma [ only_bind_into ] ( name ) ) and // getMember() combines a store step with subsequent inheritance steps
345- readStep ( namespace . ref ( ) , pragma [ only_bind_into ] ( name ) , node2 ) and
349+ node1 = namespace .getMember ( name ) and // getMember() combines a store step with subsequent inheritance steps
350+ derivedStoreReadStep0 ( namespace , name , node2 ) and
346351 node1 != node2
347352 )
348353}
You can’t perform that action at this time.
0 commit comments