Backport: These changes need to be manually distributed to previous commits

This commit is contained in:
Kay Hayen
2025-11-29 11:41:28 +00:00
parent 9238839def
commit b4f8864e56
2 changed files with 12 additions and 3 deletions

View File

@@ -456,6 +456,14 @@ class LocalsDictVariable(Variable):
else:
return trace_collection.initVariableUnknown(self, None)
def inhibitsClassScopeForwardPropagation(self):
for traces in self.traces.values():
for trace in traces.values():
if trace.inhibitsClassScopeForwardPropagation():
return True
return False
def _updateVariablesFromCollectionFirst(new_collection):
for variable, variable_traces in iterItems(new_collection.getVariableTracesAll()):

View File

@@ -246,6 +246,8 @@ class LocalsDictHandleBase(object):
temp_type="object",
)
trace_collection.initVariableLate(self.propagation[variable_name])
return self.propagation[variable_name]
def getPropagationVariables(self):
@@ -334,9 +336,8 @@ class LocalsDictHandle(LocalsDictHandleBase):
return
for variable in self.variables.values():
for variable_trace in variable.traces:
if variable_trace.inhibitsClassScopeForwardPropagation():
return
if variable.inhibitsClassScopeForwardPropagation():
return
trace_collection.signalChange(
"var_usage",