1 Sep
2006
1 Sep
'06
4:51 p.m.
On Fri, Sep 01, 2006 at 05:41:44PM +0100, Neil Mitchell wrote:
Here is a small failing example, with context and stuff its hard to know when I get it minimal:
data Maybe1 a = Just1 a | Nothing1 deriving Eq data Maybe2 a = Just2 (Maybe1 a) | Nothing2 deriving Eq crash_me = g (Just2 (Just1 1)) g x = f Nothing2 where f y | x == y && False = undefined
Run crash_me to see a lot of output.
OK, that gives: pattern match failure: g_v1624 (Num__sc0_Num instNum_v32) (Maybe2_Just2 (Maybe1_Just1 (Num_fromInt instNum_v32 1))) Maybe2_Nothing2 after my patch: pattern match failure: g (Just2 (Just1 (fromInt 1))) Nothing2 which is almost readable. Maybe I should hide fromInt/fromDouble too.