cvs commit: fptools/ghc/compiler/typecheck TcArrows.lhs TcRnMonad.lhs TcRnTypes.lhs fptools/testsuite/tests/ghc-regress/arrows arrowapply5.hs all.T
Ross Paterson <[email protected]>
| Newsgroups | gmane.comp.lang.haskell.cvs.fptools |
|---|---|
| Message-ID | <200503151159.j2FBxaW9009649__16889.9894379594$1110888024$gmane$org@glass.cse.ogi.edu> |
ross 2005/03/15 03:59:36 PST
Modified files:
ghc/compiler/typecheck TcArrows.lhs TcRnMonad.lhs
TcRnTypes.lhs
testsuite/tests/ghc-regress/arrows all.T
Added files:
testsuite/tests/ghc-regress/arrows arrowapply5.hs
Log:
Fix (and test) for SourceForge bug 1161624: erroneous rejection of
foo = proc x -> arr (\y -> y-1) -< x
Now open a new level for the left side of -<, so that variables bound
in the proc are illegal, but variables bound in the expression are OK.
Note that the levels gimmick doesn't really implement holes in the
scope: it rules out nasty obfuscations like
foo x = proc x -> arr (\y -> x-1) -< x
Also added the same treatment to the head of a `form', where it was
missing.
(for STABLE)
Revision Changes Path
1.11 +3 -3 fptools/ghc/compiler/typecheck/TcArrows.lhs
1.45 +1 -1 fptools/ghc/compiler/typecheck/TcRnMonad.lhs
1.54 +5 -3 fptools/ghc/compiler/typecheck/TcRnTypes.lhs
1.12 +1 -0 fptools/testsuite/tests/ghc-regress/arrows/all.T