git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Merge branch 'renamer' into tcocase
6b261b6Phil Freeman
examples/passing/DeepCase.pursnew file+14
@@ -0,0 +1,14 @@
1+module Main where
2+
3+import Debug.Trace
4+import Control.Monad.Eff
5+import Control.Monad.ST
6+
7+f x y =
8+ let
9+ g = case y of
10+ 0 -> x
11+ x -> 1 + x * x
12+ in g + x + y
13+
14+main = print $ f 1 10
src/Language/PureScript/Renamer.hs+2−2
@@ -158,8 +158,8 @@ renameInValue v = return v
158-- Renames within case alternatives.
158-- Renames within case alternatives.
159--
159--
160renameInCaseAlternative :: CaseAlternative -> Rename CaseAlternative
160renameInCaseAlternative :: CaseAlternative -> Rename CaseAlternative
161−renameInCaseAlternative (CaseAlternative bs g v) =
161+renameInCaseAlternative (CaseAlternative bs g v) =
162− CaseAlternative <$> mapM renameInBinder bs <*> maybeM renameInValue g <*> renameInValue v
162+ newScope $ CaseAlternative <$> mapM renameInBinder bs <*> maybeM renameInValue g <*> renameInValue v
163
163
164-- |
164-- |
165-- Renames within binders.
165-- Renames within binders.