[commit: ghc] wip/type-app: Testsuite wibbles (cf25338)

git at git.haskell.org git at git.haskell.org
Fri Aug 7 12:06:15 UTC 2015


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/type-app
Link       : http://ghc.haskell.org/trac/ghc/changeset/cf253385d1fc78777b74ba964414a4835a3a5949/ghc

>---------------------------------------------------------------

commit cf253385d1fc78777b74ba964414a4835a3a5949
Author: Richard Eisenberg <eir at cis.upenn.edu>
Date:   Tue Aug 4 22:18:15 2015 -0400

    Testsuite wibbles


>---------------------------------------------------------------

cf253385d1fc78777b74ba964414a4835a3a5949
 testsuite/tests/typecheck/should_fail/T5095.stderr |  2 +-
 testsuite/tests/typecheck/should_fail/T5689.stderr |  2 ++
 testsuite/tests/typecheck/should_fail/T5853.stderr |  2 +-
 testsuite/tests/typecheck/should_fail/T6022.stderr |  2 +-
 testsuite/tests/typecheck/should_fail/T7264.stderr |  1 +
 testsuite/tests/typecheck/should_fail/T7453.stderr | 28 +++++++++++++++-------
 testsuite/tests/typecheck/should_fail/T7734.stderr | 14 ++++++-----
 7 files changed, 33 insertions(+), 18 deletions(-)

diff --git a/testsuite/tests/typecheck/should_fail/T5095.stderr b/testsuite/tests/typecheck/should_fail/T5095.stderr
index 0cf8854..f7f8e93 100644
--- a/testsuite/tests/typecheck/should_fail/T5095.stderr
+++ b/testsuite/tests/typecheck/should_fail/T5095.stderr
@@ -1,5 +1,5 @@
 
-T5095.hs:9:11:
+T5095.hs:9:9: error:
     Overlapping instances for Eq a arising from a use of ‘==’
     Matching instances:
       instance [overlappable] Show a => Eq a -- Defined at T5095.hs:5:31
diff --git a/testsuite/tests/typecheck/should_fail/T5689.stderr b/testsuite/tests/typecheck/should_fail/T5689.stderr
index f8294f4..f5c71a0 100644
--- a/testsuite/tests/typecheck/should_fail/T5689.stderr
+++ b/testsuite/tests/typecheck/should_fail/T5689.stderr
@@ -6,3 +6,5 @@ T5689.hs:10:36: error:
       r :: IORef (t -> t) (bound at T5689.hs:7:14)
     In the expression: v
     In the expression: if v then False else True
+    In the second argument of ‘writeIORef’, namely
+      ‘(\ v -> if v then False else True)’
diff --git a/testsuite/tests/typecheck/should_fail/T5853.stderr b/testsuite/tests/typecheck/should_fail/T5853.stderr
index eb8f7b7..2bfee12 100644
--- a/testsuite/tests/typecheck/should_fail/T5853.stderr
+++ b/testsuite/tests/typecheck/should_fail/T5853.stderr
@@ -1,5 +1,5 @@
 
-T5853.hs:15:52: error:
+T5853.hs:15:46: error:
     Could not deduce: Subst t1 (Elem t2) ~ t2
     from the context: (F t0,
                        Subst t0 (Elem t2) ~ t2,
diff --git a/testsuite/tests/typecheck/should_fail/T6022.stderr b/testsuite/tests/typecheck/should_fail/T6022.stderr
index acde64e..7593b12 100644
--- a/testsuite/tests/typecheck/should_fail/T6022.stderr
+++ b/testsuite/tests/typecheck/should_fail/T6022.stderr
@@ -1,5 +1,5 @@
 
-T6022.hs:3:9: error:
+T6022.hs:3:7: error:
     No instance for (Eq ([a0] -> a0)) arising from a use of ‘==’
       (maybe you haven't applied a function to enough arguments?)
     In the expression: x == head
diff --git a/testsuite/tests/typecheck/should_fail/T7264.stderr b/testsuite/tests/typecheck/should_fail/T7264.stderr
index 3ed15e9..7dd90a1 100644
--- a/testsuite/tests/typecheck/should_fail/T7264.stderr
+++ b/testsuite/tests/typecheck/should_fail/T7264.stderr
@@ -10,3 +10,4 @@ T7264.hs:13:19: error:
       mkFoo2 :: a0 -> Maybe Foo (bound at T7264.hs:13:1)
     In the first argument of ‘mmap’, namely ‘Foo’
     In the expression: mmap Foo (Just val)
+    In an equation for ‘mkFoo2’: mkFoo2 val = mmap Foo (Just val)
diff --git a/testsuite/tests/typecheck/should_fail/T7453.stderr b/testsuite/tests/typecheck/should_fail/T7453.stderr
index c5383f1..0442983 100644
--- a/testsuite/tests/typecheck/should_fail/T7453.stderr
+++ b/testsuite/tests/typecheck/should_fail/T7453.stderr
@@ -1,6 +1,6 @@
 
 T7453.hs:10:30: error:
-    Couldn't match expected type ‘t’ with actual type ‘t0’
+    Couldn't match expected type ‘t’ with actual type ‘r0’
       because type variable ‘t’ would escape its scope
     This (rigid, skolem) type variable is bound by
       the type signature for: z :: Id t
@@ -8,13 +8,14 @@ T7453.hs:10:30: error:
     Relevant bindings include
       aux :: Id t (bound at T7453.hs:10:21)
       z :: Id t (bound at T7453.hs:9:11)
-      v :: t0 (bound at T7453.hs:7:7)
-      cast1 :: t0 -> a0 (bound at T7453.hs:7:1)
+      v :: r0 (bound at T7453.hs:7:7)
+      cast1 :: r0 -> a0 (bound at T7453.hs:7:1)
     In the first argument of ‘Id’, namely ‘v’
     In the expression: Id v
+    In an equation for ‘aux’: aux = Id v
 
 T7453.hs:16:33: error:
-    Couldn't match expected type ‘t’ with actual type ‘t0’
+    Couldn't match expected type ‘t’ with actual type ‘r0’
       because type variable ‘t’ would escape its scope
     This (rigid, skolem) type variable is bound by
       the type signature for: z :: () -> t
@@ -22,13 +23,14 @@ T7453.hs:16:33: error:
     Relevant bindings include
       aux :: b0 -> t (bound at T7453.hs:16:21)
       z :: () -> t (bound at T7453.hs:15:11)
-      v :: t0 (bound at T7453.hs:13:7)
-      cast2 :: t0 -> t1 (bound at T7453.hs:13:1)
+      v :: r0 (bound at T7453.hs:13:7)
+      cast2 :: r0 -> t0 (bound at T7453.hs:13:1)
     In the first argument of ‘const’, namely ‘v’
     In the expression: const v
+    In an equation for ‘aux’: aux = const v
 
 T7453.hs:21:15: error:
-    Couldn't match expected type ‘t’ with actual type ‘t0’
+    Couldn't match expected type ‘t’ with actual type ‘r0’
       because type variable ‘t’ would escape its scope
     This (rigid, skolem) type variable is bound by
       the type signature for: z :: t
@@ -36,10 +38,18 @@ T7453.hs:21:15: error:
     Relevant bindings include
       aux :: forall b0. b0 -> t (bound at T7453.hs:22:21)
       z :: t (bound at T7453.hs:21:11)
-      v :: t0 (bound at T7453.hs:19:7)
-      cast3 :: t0 -> t1 (bound at T7453.hs:19:1)
+      v :: r0 (bound at T7453.hs:19:7)
+      cast3 :: r0 -> forall t. t (bound at T7453.hs:19:1)
     In the expression: v
     In an equation for ‘z’:
         z = v
           where
               aux = const v
+    In an equation for ‘cast3’:
+        cast3 v
+          = z
+          where
+              z :: t
+              z = v
+                where
+                    aux = const v
diff --git a/testsuite/tests/typecheck/should_fail/T7734.stderr b/testsuite/tests/typecheck/should_fail/T7734.stderr
index ae19834..2c7c620 100644
--- a/testsuite/tests/typecheck/should_fail/T7734.stderr
+++ b/testsuite/tests/typecheck/should_fail/T7734.stderr
@@ -1,16 +1,18 @@
 
 T7734.hs:4:13: error:
-    Occurs check: cannot construct the infinite type: t2 ~ t2 -> t1
+    Occurs check: cannot construct the infinite type: r2 ~ r2 -> r1
     Relevant bindings include
-      x :: t2 -> t1 (bound at T7734.hs:4:1)
-      f :: (t2 -> t1) -> t0 -> t1 (bound at T7734.hs:4:1)
+      x :: r2 -> r1 (bound at T7734.hs:4:1)
+      f :: (r2 -> r1) -> r0 -> r1 (bound at T7734.hs:4:1)
     In the first argument of ‘x’, namely ‘x’
     In the expression: x x
+    In an equation for ‘f’: x `f` y = x x
 
 T7734.hs:5:13: error:
-    Occurs check: cannot construct the infinite type: t2 ~ t2 -> t1
+    Occurs check: cannot construct the infinite type: r2 ~ r2 -> r1
     Relevant bindings include
-      x :: t2 -> t1 (bound at T7734.hs:5:5)
-      (&) :: (t2 -> t1) -> t0 -> t1 (bound at T7734.hs:5:1)
+      x :: r2 -> r1 (bound at T7734.hs:5:5)
+      (&) :: (r2 -> r1) -> r0 -> r1 (bound at T7734.hs:5:1)
     In the first argument of ‘x’, namely ‘x’
     In the expression: x x
+    In an equation for ‘&’: (&) x y = x x



More information about the ghc-commits mailing list