Commit 40f9546b authored by Simon Peyton Jones's avatar Simon Peyton Jones
Browse files

Monster patch of testsuite changes with the new typechecker

Very many of these changes are minor error-message wibbles,
but there are some to do with higher-rank and impredicativity
that are more substantial.  I'm looking at those separately,
but meanwhile validate works.
parent d07507d6
annfail05.hs:11:1:
No instance for (Data.Data.Data NoInstances)
arising from an annotation at annfail05.hs:11:1-25
arising from an annotation
Possible fix:
add an instance declaration for (Data.Data.Data NoInstances)
In the expression: NoInstances
......
annfail07.hs:9:17:
Couldn't match expected type `[a]' against inferred type `Bool'
Couldn't match expected type `[a]' with actual type `Bool'
In the first argument of `head', namely `True'
In the expression: (head True)
In the annotation: {-# ANN f (head True) #-}
annfail08.hs:9:1:
No instance for (Data.Data.Data (a -> a))
arising from an annotation at annfail08.hs:9:1-22
arising from an annotation
Possible fix:
add an instance declaration for (Data.Data.Data (a -> a))
In the expression: (id + 1)
......@@ -9,7 +9,7 @@ annfail08.hs:9:1:
annfail08.hs:9:17:
No instance for (Num (a -> a))
arising from the literal `1' at annfail08.hs:9:17
arising from the literal `1'
Possible fix: add an instance declaration for (Num (a -> a))
In the second argument of `(+)', namely `1'
In the expression: (id + 1)
......
annfail10.hs:9:11:
Ambiguous type variable `t' in the constraints:
`Num t' arising from the literal `1' at annfail10.hs:9:11
`Data.Data.Data t'
arising from an annotation at annfail10.hs:9:1-15
Ambiguous type variable `a' in the constraints:
(Num a) arising from the literal `1' at annfail10.hs:9:11
(Data.Data.Data a) arising from an annotation
at annfail10.hs:9:1-15
Probable fix: add a type signature that fixes these type variable(s)
In the expression: 1
In the annotation: {-# ANN f 1 #-}
arrowfail001.hs:16:36:
Ambiguous type variable `a' in the constraint:
`Foo a' arising from a use of `foo' at arrowfail001.hs:16:36-38
(Foo a) arising from a use of `foo'
Probable fix: add a type signature that fixes these type variable(s)
In the expression: foo
In the expression: proc x -> case x of { Bar a -> foo -< a }
In an equation for `get':
get = proc x -> case x of { Bar a -> foo -< a }
......@@ -4,11 +4,11 @@ arrowfail003.hs:8:7:
returnA -< []
was found where an expression was expected
In the expression: returnA -< []
In the definition of `foo': foo = returnA -< []
In an equation for `foo': foo = returnA -< []
arrowfail003.hs:9:7:
The arrow command
(|zeroArrow |)
was found where an expression was expected
In the expression: (|zeroArrow |)
In the definition of `bar': bar = (|zeroArrow |)
In an equation for `bar': bar = (|zeroArrow |)
arrowfail004.hs:12:15:
Illegal constructor `T' in a 'proc' pattern
Proc patterns cannot use existentials or GADTs
Proc patterns cannot use existential or GADT data constructors
In the pattern: T x
In the expression: proc (T x) -> do { returnA -< T x }
In the definition of `panic':
In an equation for `panic':
panic = proc (T x) -> do { returnA -< T x }
GadtOverlap.hs:19:1:
Warning: Pattern match(es) are non-exhaustive
In the definition of `h': Patterns not matched: T3
In an equation for `h': Patterns not matched: T3
T2395.hs:12:1:
Warning: Pattern match(es) are overlapped
In the definition of `bar': bar _ = ...
In an equation for `bar': bar _ = ...
ds002.hs:7:1:
Warning: Pattern match(es) are overlapped
In the definition of `f':
f y = ...
f z = ...
In an equation for `f':
f y = ...
f z = ...
ds002.hs:11:1:
Warning: Pattern match(es) are overlapped
In the definition of `g': g x y z = ...
In an equation for `g': g x y z = ...
ds003.hs:5:1:
Warning: Pattern match(es) are overlapped
In the definition of `f':
f (x : x1 : x2 : x3) ~(y, ys) z = ...
f x y True = ...
In an equation for `f':
f (x : x1 : x2 : x3) ~(y, ys) z = ...
f x y True = ...
ds019.hs:5:1:
Warning: Pattern match(es) are overlapped
In the definition of `f':
f d (j, k) p = ...
f (e, f, g) l q = ...
f h (m, n) r = ...
In an equation for `f':
f d (j, k) p = ...
f (e, f, g) l q = ...
f h (m, n) r = ...
ds020.hs:8:1:
Warning: Pattern match(es) are overlapped
In the definition of `a': a ~(~[], ~[], ~[]) = ...
ds020.hs:11:1:
Warning: Pattern match(es) are overlapped
In the definition of `b': b ~(~x : ~xs : ~ys) = ...
ds020.hs:16:1:
Warning: Pattern match(es) are overlapped
In the definition of `d':
d ~(n+43) = ...
d ~(n+999) = ...
ds020.hs:22:1:
Warning: Pattern match(es) are overlapped
In the definition of `f': f x@(~[]) = ...
ds020.hs:8:1:
Warning: Pattern match(es) are overlapped
In an equation for `a': a ~(~[], ~[], ~[]) = ...
ds020.hs:11:1:
Warning: Pattern match(es) are overlapped
In an equation for `b': b ~(~x : ~xs : ~ys) = ...
ds020.hs:16:1:
Warning: Pattern match(es) are overlapped
In an equation for `d':
d ~(n+43) = ...
d ~(n+999) = ...
ds020.hs:22:1:
Warning: Pattern match(es) are overlapped
In an equation for `f': f x@(~[]) = ...
ds022.hs:20:1:
Warning: Pattern match(es) are overlapped
In the definition of `i':
i 1 1.1 = ...
i 2 2.2 = ...
In an equation for `i':
i 1 1.1 = ...
i 2 2.2 = ...
ds041.hs:15:7:
Warning: Fields of `Foo' not initialised: x
In the expression: Foo {}
In the definition of `foo': foo = Foo {}
In the expression: Foo {}
In an equation for `foo': foo = Foo {}
ds051.hs:6:1:
Warning: Pattern match(es) are overlapped
In the definition of `f1': f1 "ab" = ...
In an equation for `f1': f1 "ab" = ...
ds051.hs:11:1:
Warning: Pattern match(es) are overlapped
In the definition of `f2': f2 ('a' : 'b' : []) = ...
In an equation for `f2': f2 ('a' : 'b' : []) = ...
ds051.hs:16:1:
Warning: Pattern match(es) are overlapped
In the definition of `f3': f3 "ab" = ...
In an equation for `f3': f3 "ab" = ...
ds056.hs:8:1:
Warning: Pattern match(es) are overlapped
In the definition of `g': g _ = ...
In an equation for `g': g _ = ...
......@@ -2,9 +2,7 @@
T2851.hs:9:15:
No instance for (Show (F a))
arising from the 'deriving' clause of a data type declaration
at T2851.hs:9:15-18
Possible fix:
add an instance declaration for (Show (F a))
or use a standalone 'deriving instance' declaration instead,
so you can specify the instance context yourself
Possible fix: add an instance declaration for (Show (F a))
Alternatively, use a standalone 'deriving instance' declaration,
so you can specify the instance context yourself
When deriving the instance for (Show (D a))
drvfail-foldable-traversable1.hs:9:23:
No instance for (Functor Trivial1)
arising from the 'deriving' clause of a data type declaration
at drvfail-foldable-traversable1.hs:9:23-33
Possible fix:
add an instance declaration for (Functor Trivial1)
or use a standalone 'deriving instance' declaration instead,
so you can specify the instance context yourself
When deriving the instance for (Traversable Trivial1)
drvfail-foldable-traversable1.hs:13:22:
No instance for (Foldable Trivial2)
arising from the 'deriving' clause of a data type declaration
at drvfail-foldable-traversable1.hs:13:22-32
Possible fix:
add an instance declaration for (Foldable Trivial2)
or use a standalone 'deriving instance' declaration instead,
so you can specify the instance context yourself
When deriving the instance for (Traversable Trivial2)
drvfail-foldable-traversable1.hs:17:22:
Can't make a derived instance of `Foldable Infinite':
Constructor `Infinite' contains function types
In the data type declaration for `Infinite'
drvfail-foldable-traversable1.hs:17:31:
Can't make a derived instance of `Traversable Infinite':
Constructor `Infinite' contains function types
In the data type declaration for `Infinite'
drvfail-foldable-traversable1.hs:21:22:
Can't make a derived instance of `Foldable (Cont r)':
Constructor `Cont' contains function types
In the data type declaration for `Cont'
drvfail-foldable-traversable1.hs:21:31:
Can't make a derived instance of `Traversable (Cont r)':
Constructor `Cont' contains function types
In the data type declaration for `Cont'
drvfail-foldable-traversable1.hs:9:23:
No instance for (Functor Trivial1)
arising from the 'deriving' clause of a data type declaration
Possible fix: add an instance declaration for (Functor Trivial1)
Alternatively, use a standalone 'deriving instance' declaration,
so you can specify the instance context yourself
When deriving the instance for (Traversable Trivial1)
drvfail-foldable-traversable1.hs:13:22:
No instance for (Foldable Trivial2)
arising from the 'deriving' clause of a data type declaration
Possible fix: add an instance declaration for (Foldable Trivial2)
Alternatively, use a standalone 'deriving instance' declaration,
so you can specify the instance context yourself
When deriving the instance for (Traversable Trivial2)
drvfail-foldable-traversable1.hs:17:22:
Can't make a derived instance of `Foldable Infinite':
Constructor `Infinite' contains function types
In the data type declaration for `Infinite'
drvfail-foldable-traversable1.hs:17:31:
Can't make a derived instance of `Traversable Infinite':
Constructor `Infinite' contains function types
In the data type declaration for `Infinite'
drvfail-foldable-traversable1.hs:21:22:
Can't make a derived instance of `Foldable (Cont r)':
Constructor `Cont' contains function types
In the data type declaration for `Cont'
drvfail-foldable-traversable1.hs:21:31:
Can't make a derived instance of `Traversable (Cont r)':
Constructor `Cont' contains function types
In the data type declaration for `Cont'
......@@ -2,9 +2,7 @@
drvfail001.hs:16:33:
No instance for (Show (f (f a)))
arising from the 'deriving' clause of a data type declaration
at drvfail001.hs:16:33-36
Possible fix:
add an instance declaration for (Show (f (f a)))
or use a standalone 'deriving instance' declaration instead,
so you can specify the instance context yourself
Possible fix: add an instance declaration for (Show (f (f a)))
Alternatively, use a standalone 'deriving instance' declaration,
so you can specify the instance context yourself
When deriving the instance for (Show (SM f a))
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment