panic
Simon Peyton-Jones
simonpj at microsoft.com
Mon Dec 19 05:51:17 EST 2005
It's another example of the fact that the Template Haskell data type
does not support all GHC's extensions. (It started as Haskell 98, but
has various extensions beyond that.)
In this case the extension you are using is the idea that a pattern type
signature can bring a new scoped type variable into scope.
let (_ :: b) = ...
TH doesn't understand this, so it's complaining that the 'b' is not in
scope.
I'll improve the error message. Better yet would be to make TH have
scoped type variables too... but the exact design of scoped type
variables is still in flux, so I'd suggest working around it some other
way.
Simon
| -----Original Message-----
| From: glasgow-haskell-bugs-bounces at haskell.org
[mailto:glasgow-haskell-bugs-
| bounces at haskell.org] On Behalf Of Frederik Eaton
| Sent: 16 December 2005 21:54
| To: glasgow-haskell-bugs at haskell.org
| Subject: panic
|
| $ ghc --make Vector.hs -fth
| Chasing modules from: Vector.hs
| [1 of 2] Skipping Fu.Prepose ( Fu/Prepose.hs, Fu/Prepose.o )
| [2 of 2] Compiling Fu.Vector ( Vector.hs, Vector.o )
| ghc-6.5.20051208: panic! (the `impossible' happened, GHC version
6.5.20051208):
| Failed binder lookup: b{tv a1hL}
|
| Please report it as a compiler bug to
glasgow-haskell-bugs at haskell.org,
| or http://sourceforge.net/projects/ghc/.
More information about the Glasgow-haskell-bugs
mailing list