Fri Oct 3 07:04:23 PDT 2008 [EMAIL PROTECTED]
* Expunge ThFake, cure Trac #2632
This patch fixes a dirty hack (the fake ThFake module), which in turn
was causing Trac #2632.
The new scheme is that the top-level binders in a TH [d| ... |] decl splice
get Internal names. That breaks a previous invariant that things like
TyCons always have External names, but these TyCons are never long-lived;
they live only long enough to typecheck the TH quotation; the result is
discarded. So it seems cool.
Nevertheless -- Template Haskell folk: please test your code. The testsuite
is OK but it's conceivable that I've broken something in TH. Let's see.
M ./compiler/basicTypes/RdrName.lhs -7 +14
M ./compiler/iface/IfaceEnv.lhs -3 +10
M ./compiler/prelude/PrelNames.lhs -2 +1
M ./compiler/rename/RnBinds.lhs -1
M ./compiler/rename/RnEnv.lhs -2 +11
M ./compiler/rename/RnExpr.lhs -24 +9
M ./compiler/rename/RnNames.lhs -22 +38
M ./compiler/rename/RnSource.lhs -9 +4
M ./compiler/typecheck/TcEnv.lhs -3 +12
M ./compiler/typecheck/TcRnDriver.lhs -4 +3
View patch online:
http://darcs.haskell.org/ghc-6.10/ghc/_darcs/patches/20081003140423-1287e-1b531500fa22bceecef7ce74e0b32b8393e8d449.gz
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc