Tons of error message wibbles
[ghc.git] / testsuite / tests / typecheck / should_fail / FrozenErrorTests.stderr
index d4ce2ce..0e2ec6c 100644 (file)
@@ -7,22 +7,7 @@ FrozenErrorTests.hs:10:8:
     Inaccessible code in
       the type signature for foo :: a ~ T a => a -> a
 
-FrozenErrorTests.hs:14:12:
-    Couldn't match type `b' with `T b'
-      `b' is a rigid type variable bound by
-          a pattern with constructor
-            MkT2 :: forall a b. b ~ T b => b -> T a,
-          in a case alternative
-          at FrozenErrorTests.hs:14:12
-    Inaccessible code in
-      a pattern with constructor
-        MkT2 :: forall a b. b ~ T b => b -> T a,
-      in a case alternative
-    In the pattern: MkT2 y
-    In a case alternative: MkT2 y -> ()
-    In the expression: case x of { MkT2 y -> () }
-
-FrozenErrorTests.hs:19:12:
+FrozenErrorTests.hs:16:12:
     Couldn't match type `Int' with `Bool'
     Inaccessible code in
       a pattern with constructor
@@ -32,14 +17,16 @@ FrozenErrorTests.hs:19:12:
     In a case alternative: MkT3 -> ()
     In the expression: case x of { MkT3 -> () }
 
-FrozenErrorTests.hs:33:9:
-    Occurs check: cannot construct the infinite type: a0 = [a0]
-    Expected type: [a0]
-      Actual type: F a0 Bool
+FrozenErrorTests.hs:30:9:
+    Occurs check: cannot construct the infinite type: a ~ [a]
+    Expected type: [a]
+      Actual type: F a Bool
+    Relevant bindings include
+      test1 :: a (bound at FrozenErrorTests.hs:30:1)
     In the expression: goo1 False undefined
     In an equation for `test1': test1 = goo1 False undefined
 
-FrozenErrorTests.hs:36:15:
+FrozenErrorTests.hs:33:15:
     Couldn't match type `Int' with `[Int]'
     Expected type: [[Int]]
       Actual type: F [Int] Bool
@@ -47,24 +34,28 @@ FrozenErrorTests.hs:36:15:
     In the expression: goo2 (goo1 False undefined)
     In an equation for `test2': test2 = goo2 (goo1 False undefined)
 
-FrozenErrorTests.hs:37:9:
-    Couldn't match type `[Int]' with `Int'
+FrozenErrorTests.hs:34:9:
+    Couldn't match type `Int' with `[Int]'
     Expected type: [[Int]]
       Actual type: F [Int] Bool
     In the expression: goo1 False (goo2 undefined)
     In an equation for `test3': test3 = goo1 False (goo2 undefined)
 
-FrozenErrorTests.hs:52:15:
-    Couldn't match type `T2 c0 c0' with `M (T2 (T2 c0 c0) c0)'
-    Expected type: T2 (M (T2 (T2 c0 c0) c0)) (T2 (T2 c0 c0) c0)
-      Actual type: F (T2 (T2 c0 c0) c0) Bool
+FrozenErrorTests.hs:49:15:
+    Couldn't match type `T2 c c' with `M (T2 (T2 c c) c)'
+    Expected type: T2 (M (T2 (T2 c c) c)) (T2 (T2 c c) c)
+      Actual type: F (T2 (T2 c c) c) Bool
+    Relevant bindings include
+      test4 :: T2 (T2 c c) c (bound at FrozenErrorTests.hs:49:1)
     In the first argument of `goo4', namely `(goo3 False undefined)'
     In the expression: goo4 (goo3 False undefined)
     In an equation for `test4': test4 = goo4 (goo3 False undefined)
 
-FrozenErrorTests.hs:53:9:
-    Couldn't match type `T2 c0 c0' with `M (T2 (T2 c0 c0) c0)'
-    Expected type: T2 (M (T2 (T2 c0 c0) c0)) (T2 (T2 c0 c0) c0)
-      Actual type: F (T2 (T2 c0 c0) c0) Bool
+FrozenErrorTests.hs:50:9:
+    Couldn't match type `T2 c c' with `M (T2 (T2 c c) c)'
+    Expected type: T2 (M (T2 (T2 c c) c)) (T2 (T2 c c) c)
+      Actual type: F (T2 (T2 c c) c) Bool
+    Relevant bindings include
+      test5 :: T2 (T2 c c) c (bound at FrozenErrorTests.hs:50:1)
     In the expression: goo3 False (goo4 undefined)
     In an equation for `test5': test5 = goo3 False (goo4 undefined)