Testsuite: fix tcfail220 - Maybe is wired-in now
authorThomas Miedema <thomasmiedema@gmail.com>
Thu, 3 Sep 2015 15:01:10 +0000 (17:01 +0200)
committerThomas Miedema <thomasmiedema@gmail.com>
Thu, 3 Sep 2015 22:06:17 +0000 (00:06 +0200)
This fixes validate.

374457809de343f409fbeea0a885877947a133a2 (D202) mentions: "This patch
also wires-in Maybe data type".

A conflicting definition of a wired-in type in a .hsig file doesn't seem
to cause compilation to fail. This is probably a bug, but a small one.
Since SPJ in ffc21506894c7887d3620423aaf86bc6113a1071 swept this under
the rug, by removing `data Bool a b c d = False` from tcfail220.hsig,
I'm going to do the same here.

D1098 touches these files, so ezyang can decide whether this problem
warrants fixing when doing a rebase.

Differential Revision: https://phabricator.haskell.org/D1208

testsuite/tests/typecheck/should_fail/tcfail220.hsig
testsuite/tests/typecheck/should_fail/tcfail220.stderr

index 560fc31..c9e80e3 100644 (file)
@@ -1,4 +1,4 @@
 {-# LANGUAGE NoImplicitPrelude #-}
 module ShouldFail where
 
-data Maybe a b = Nothing
+data Either a b c = Left a
index 432dc4c..d78fa6d 100644 (file)
@@ -1,9 +1,9 @@
-[1 of 1] Compiling ShouldFail[sig of Prelude] ( tcfail220.hsig, nothing )\r
-\r
-tcfail220.hsig:4:1: error:\r
-    Type constructor ‘Maybe’ has conflicting definitions in the module\r
-    and its hsig file\r
-    Main module: data Maybe a = Nothing | Just a\r
-    Hsig file:  type role Maybe phantom phantom\r
-                data Maybe a b = Nothing\r
-    The types have different kinds\r
+[1 of 1] Compiling ShouldFail[sig of Prelude] ( tcfail220.hsig, nothing )
+
+tcfail220.hsig:4:1: error:
+    Type constructor ‘Either’ has conflicting definitions in the module
+    and its hsig file
+    Main module: data Either a b = Left a | Right b
+    Hsig file:  type role Either representational phantom phantom
+                data Either a b c = Left a
+    The types have different kinds