summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_compile
diff options
context:
space:
mode:
authorDimitrios.Vytiniotis <dimitris@microsoft.com>2012-06-08 16:13:56 +0100
committerDimitrios.Vytiniotis <dimitris@microsoft.com>2012-06-08 16:13:56 +0100
commitf3cb7ecb5f4de4141dfae763f15d3a70a2654ab5 (patch)
tree49fb43c0a5f1385780ef66045adac19ddab1dd0f /testsuite/tests/typecheck/should_compile
parent2ed41c1c70b6b5a1aae1baca62eec69a1e8609d8 (diff)
parent751f030645095661bf55a0a838b910653a17e61a (diff)
downloadhaskell-f3cb7ecb5f4de4141dfae763f15d3a70a2654ab5.tar.gz
Merge branch 'master' of http://darcs.haskell.org/testsuite
Conflicts: tests/typecheck/should_compile/all.T
Diffstat (limited to 'testsuite/tests/typecheck/should_compile')
-rw-r--r--testsuite/tests/typecheck/should_compile/T6134.hs8
-rw-r--r--testsuite/tests/typecheck/should_compile/all.T2
-rw-r--r--testsuite/tests/typecheck/should_compile/tc141.stderr86
3 files changed, 52 insertions, 44 deletions
diff --git a/testsuite/tests/typecheck/should_compile/T6134.hs b/testsuite/tests/typecheck/should_compile/T6134.hs
new file mode 100644
index 0000000000..90f1504a48
--- /dev/null
+++ b/testsuite/tests/typecheck/should_compile/T6134.hs
@@ -0,0 +1,8 @@
+{-# LANGUAGE MultiParamTypeClasses, FlexibleContexts, FunctionalDependencies #-}
+
+module T6134 where
+
+class C a b | a -> b
+
+f :: C Int b => Int -> Int
+f = undefined
diff --git a/testsuite/tests/typecheck/should_compile/all.T b/testsuite/tests/typecheck/should_compile/all.T
index f4b8d9ed24..9464c27b1a 100644
--- a/testsuite/tests/typecheck/should_compile/all.T
+++ b/testsuite/tests/typecheck/should_compile/all.T
@@ -379,6 +379,6 @@ test('T5792',normal,run_command,
test('PolytypeDecomp', normal, compile, [''])
test('T6011', normal, compile, [''])
test('T6055', normal, compile, [''])
-
test('DfltProb1', normal, compile, [''])
test('DfltProb2', normal, compile, [''])
+test('T6134', normal, compile, [''])
diff --git a/testsuite/tests/typecheck/should_compile/tc141.stderr b/testsuite/tests/typecheck/should_compile/tc141.stderr
index db8448f464..a22689b10f 100644
--- a/testsuite/tests/typecheck/should_compile/tc141.stderr
+++ b/testsuite/tests/typecheck/should_compile/tc141.stderr
@@ -1,43 +1,43 @@
-
-tc141.hs:11:12:
- You cannot bind scoped type variable `a'
- in a pattern binding signature
- In the pattern: p :: a
- In the pattern: (p :: a, q :: a)
- In a pattern binding: (p :: a, q :: a) = x
-
-tc141.hs:11:31:
- Couldn't match expected type `a1' with actual type `a'
- `a1' is a rigid type variable bound by
- an expression type signature: a1 at tc141.hs:11:31
- `a' is a rigid type variable bound by
- the inferred type of f :: (a, a) -> (t, a) at tc141.hs:11:1
- In the expression: q :: a
- In the expression: (q :: a, p)
- In the expression: let (p :: a, q :: a) = x in (q :: a, p)
-
-tc141.hs:13:13:
- You cannot bind scoped type variable `a'
- in a pattern binding signature
- In the pattern: y :: a
- In a pattern binding: y :: a = a
- In the expression:
- let y :: a = a in
- let
- v :: a
- v = b
- in v
-
-tc141.hs:15:18:
- Couldn't match expected type `a2' with actual type `t'
- `a2' is a rigid type variable bound by
- the type signature for v :: a2 at tc141.hs:14:19
- `t' is a rigid type variable bound by
- the inferred type of g :: a -> t -> a1 at tc141.hs:13:1
- In the expression: b
- In an equation for `v': v = b
- In the expression:
- let
- v :: a
- v = b
- in v
+
+tc141.hs:11:12:
+ You cannot bind scoped type variable `a'
+ in a pattern binding signature
+ In the pattern: p :: a
+ In the pattern: (p :: a, q :: a)
+ In a pattern binding: (p :: a, q :: a) = x
+
+tc141.hs:11:31:
+ Couldn't match expected type `a1' with actual type `a'
+ `a1' is a rigid type variable bound by
+ an expression type signature: a1 at tc141.hs:11:31
+ `a' is a rigid type variable bound by
+ the inferred type of f :: (a, a) -> (t, a) at tc141.hs:11:1
+ In the expression: q :: a
+ In the expression: (q :: a, p)
+ In the expression: let (p :: a, q :: a) = x in (q :: a, p)
+
+tc141.hs:13:13:
+ You cannot bind scoped type variable `a'
+ in a pattern binding signature
+ In the pattern: y :: a
+ In a pattern binding: y :: a = a
+ In the expression:
+ let y :: a = a in
+ let
+ v :: a
+ v = b
+ in v
+
+tc141.hs:15:18:
+ Couldn't match expected type `a2' with actual type `t'
+ `a2' is a rigid type variable bound by
+ the type signature for v :: a2 at tc141.hs:14:19
+ `t' is a rigid type variable bound by
+ the inferred type of g :: a -> t -> a1 at tc141.hs:13:1
+ In the expression: b
+ In an equation for `v': v = b
+ In the expression:
+ let
+ v :: a
+ v = b
+ in v