Documentation for (&&) and (&&) states that they are lazy in their second argument...
[ghc.git] / testsuite / tests / typecheck / should_compile / tc063.hs
1 module ShouldSucceed where
2
3 data X a = Tag a
4
5 class Reps r where
6 f :: r -> r -> r
7
8 instance Reps (X q) where
9 -- f (Tag x) (Tag y) = Tag y
10 f x y = y
11
12 instance Reps Bool where
13 f True True = True
14 f x y = False
15
16 g x = f x x
17
18