[project @ 2005-03-15 11:59:32 by ross]
authorross <unknown>
Tue, 15 Mar 2005 11:59:36 +0000 (11:59 +0000)
committerross <unknown>
Tue, 15 Mar 2005 11:59:36 +0000 (11:59 +0000)
commit1dfb756e01201c62ddde93010b3384d4d9644ad6
tree4b7c12773bfa1fa6b6517d4acfbbc01572879b5c
parenteace8501f73b0b2ee55e02d84e45cec03ab898d7
[project @ 2005-03-15 11:59:32 by ross]
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)
ghc/compiler/typecheck/TcArrows.lhs
ghc/compiler/typecheck/TcRnMonad.lhs
ghc/compiler/typecheck/TcRnTypes.lhs