[project @ 2000-09-14 12:12:23 by simonpj]
[ghc-hetmet.git] / ghc / tests / typecheck / should_compile / tc003.hs
1 module ShouldSucceed where
2
3 -- This is a somewhat surprising program.
4 -- It shows up the monomorphism restriction, *and* ambiguity resolution!
5 -- The binding is a pattern binding without a signature, so it is monomorphic.
6 -- Hence the types of c,d,e are not universally quantified.  But then
7 -- their type variables are ambiguous, so the ambiguity resolution leaps
8 -- into action, and resolves them to Integer.
9
10 -- That's why we check the interface file in the test suite.
11
12 (c@(d,e)) = if True then (1,2) else (1,3)