This bug is already fixed in 5.02.2, which is available now.

Simon

| -----Original Message-----
| From: Ashley Yakeley [mailto:[EMAIL PROTECTED]] 
| Sent: 04 February 2002 02:23
| To: Haskell List
| Subject: Implicit Parameter Bug?
| 
| 
| What's wrong with this?
| 
|     f :: ((?param :: a) => b) -> a -> b
|     f foo a = foo with ?param=a
| 
|     g :: (?param :: a) => a
|     g = ?param
| 
|     h :: a -> a
|     h = f g
| 
| 'ghci -fglasgow-exts' (5.02) gives this error:
| 
|     Could not deduce (?param :: a) from the context ()
|     Probable fix:
|         Add (?param :: a) to the type signature(s) for h
|     arising from use of `g' at Implicit.hs:10
|     In the first argument of `f', namely `g'
|     In the definition of `h': f g
| 
| 'hugs -98' (Feb 2000) gets as far as this:
| 
| Reading file "/usr/share/hugs98/lib/Prelude.hs":
| Reading file "Implicit.hs":
| Type checking      
| 
| ...and spins there.
| 
| There's a workaround for ghci, but it doesn't help hugs:
| 
|     h :: a -> a
|     h = f (g with ?param = ?param)
| 
| This is very odd, as surely the type of (g with ?param = 
| ?param) is the 
| same as the type of g?
| 
| -- 
| Ashley Yakeley, Seattle WA
| 
| _______________________________________________
| Haskell mailing list
| [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
| 
_______________________________________________
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to