Fixed missing Alive detection in current scope
This commit is contained in:
parent
a14d0a8790
commit
0fda08b36e
|
@ -242,7 +242,8 @@ getVariableFlow t =
|
||||||
|
|
||||||
findSubshelled :: [StackData] -> [[(Id,String)]] -> (Map.Map String VariableState) -> State (Map.Map Id Metadata) ()
|
findSubshelled :: [StackData] -> [[(Id,String)]] -> (Map.Map String VariableState) -> State (Map.Map Id Metadata) ()
|
||||||
findSubshelled [] _ _ = return ()
|
findSubshelled [] _ _ = return ()
|
||||||
findSubshelled ((Assignment x):rest) (scope:lol) deadVars = findSubshelled rest ((x:scope):lol) deadVars
|
findSubshelled ((Assignment x@(id, str)):rest) (scope:lol) deadVars =
|
||||||
|
findSubshelled rest ((x:scope):lol) $ Map.insert str Alive deadVars
|
||||||
findSubshelled ((Reference (readId, str)):rest) scopes deadVars = do
|
findSubshelled ((Reference (readId, str)):rest) scopes deadVars = do
|
||||||
case Map.findWithDefault Alive str deadVars of
|
case Map.findWithDefault Alive str deadVars of
|
||||||
Alive -> return ()
|
Alive -> return ()
|
||||||
|
|
Loading…
Reference in New Issue