diff options
Diffstat (limited to 'testsuite/tests/gadt')
-rw-r--r-- | testsuite/tests/gadt/T3169.stderr | 38 | ||||
-rw-r--r-- | testsuite/tests/gadt/T7558.stderr | 30 | ||||
-rw-r--r-- | testsuite/tests/gadt/gadt-escape1.stderr | 38 | ||||
-rw-r--r-- | testsuite/tests/gadt/rw.stderr | 60 |
4 files changed, 83 insertions, 83 deletions
diff --git a/testsuite/tests/gadt/T3169.stderr b/testsuite/tests/gadt/T3169.stderr index 433333f21d..4bc39a731b 100644 --- a/testsuite/tests/gadt/T3169.stderr +++ b/testsuite/tests/gadt/T3169.stderr @@ -1,19 +1,19 @@ -
-T3169.hs:13:22: error:
- • Couldn't match type ‘elt’ with ‘Map b elt’
- ‘elt’ is a rigid type variable bound by
- the type signature for:
- lookup :: forall elt. (a, b) -> Map (a, b) elt -> Maybe elt
- at T3169.hs:12:3-8
- Expected type: Map a (Map b elt)
- Actual type: Map (a, b) elt
- • In the second argument of ‘lookup’, namely ‘m’
- In the expression: lookup a m :: Maybe (Map b elt)
- In the expression:
- case lookup a m :: Maybe (Map b elt) of {
- Just (m2 :: Map b elt) -> lookup b m2 :: Maybe elt }
- • Relevant bindings include
- m :: Map (a, b) elt (bound at T3169.hs:12:17)
- b :: b (bound at T3169.hs:12:13)
- lookup :: (a, b) -> Map (a, b) elt -> Maybe elt
- (bound at T3169.hs:12:3)
+ +T3169.hs:13:22: error: + • Couldn't match type ‘elt’ with ‘Map b elt’ + ‘elt’ is a rigid type variable bound by + the type signature for: + lookup :: forall elt. (a, b) -> Map (a, b) elt -> Maybe elt + at T3169.hs:12:3-8 + Expected type: Map a (Map b elt) + Actual type: Map (a, b) elt + • In the second argument of ‘lookup’, namely ‘m’ + In the expression: lookup a m :: Maybe (Map b elt) + In the expression: + case lookup a m :: Maybe (Map b elt) of { + Just (m2 :: Map b elt) -> lookup b m2 :: Maybe elt } + • Relevant bindings include + m :: Map (a, b) elt (bound at T3169.hs:12:17) + b :: b (bound at T3169.hs:12:13) + lookup :: (a, b) -> Map (a, b) elt -> Maybe elt + (bound at T3169.hs:12:3) diff --git a/testsuite/tests/gadt/T7558.stderr b/testsuite/tests/gadt/T7558.stderr index 34ade9778e..ff90037ff6 100644 --- a/testsuite/tests/gadt/T7558.stderr +++ b/testsuite/tests/gadt/T7558.stderr @@ -1,15 +1,15 @@ -
-T7558.hs:8:4: error:
- • Couldn't match type ‘a’ with ‘Maybe a’
- ‘a’ is a rigid type variable bound by
- the type signature for:
- f :: forall a. T a a -> Bool
- at T7558.hs:7:1-18
- Inaccessible code in
- a pattern with constructor:
- MkT :: forall a b. a ~ Maybe b => a -> Maybe b -> T a b,
- in an equation for ‘f’
- • In the pattern: MkT x y
- In an equation for ‘f’: f (MkT x y) = [x, y] `seq` True
- • Relevant bindings include
- f :: T a a -> Bool (bound at T7558.hs:8:1)
+ +T7558.hs:8:4: error: + • Couldn't match type ‘a’ with ‘Maybe a’ + ‘a’ is a rigid type variable bound by + the type signature for: + f :: forall a. T a a -> Bool + at T7558.hs:7:1-18 + Inaccessible code in + a pattern with constructor: + MkT :: forall a b. a ~ Maybe b => a -> Maybe b -> T a b, + in an equation for ‘f’ + • In the pattern: MkT x y + In an equation for ‘f’: f (MkT x y) = [x, y] `seq` True + • Relevant bindings include + f :: T a a -> Bool (bound at T7558.hs:8:1) diff --git a/testsuite/tests/gadt/gadt-escape1.stderr b/testsuite/tests/gadt/gadt-escape1.stderr index ccd428f106..056d451a09 100644 --- a/testsuite/tests/gadt/gadt-escape1.stderr +++ b/testsuite/tests/gadt/gadt-escape1.stderr @@ -1,19 +1,19 @@ -
-gadt-escape1.hs:19:58: error:
- • Couldn't match type ‘t’ with ‘ExpGADT Int’
- ‘t’ is untouchable
- inside the constraints: t1 ~ Int
- bound by a pattern with constructor: ExpInt :: Int -> ExpGADT Int,
- in a case alternative
- at gadt-escape1.hs:19:43-50
- ‘t’ is a rigid type variable bound by
- the inferred type of weird1 :: t at gadt-escape1.hs:19:1-58
- Possible fix: add a type signature for ‘weird1’
- Expected type: t
- Actual type: ExpGADT t1
- • In the expression: a
- In a case alternative: Hidden (ExpInt _) a -> a
- In the expression:
- case (hval :: Hidden) of { Hidden (ExpInt _) a -> a }
- • Relevant bindings include
- weird1 :: t (bound at gadt-escape1.hs:19:1)
+ +gadt-escape1.hs:19:58: error: + • Couldn't match type ‘t’ with ‘ExpGADT Int’ + ‘t’ is untouchable + inside the constraints: t1 ~ Int + bound by a pattern with constructor: ExpInt :: Int -> ExpGADT Int, + in a case alternative + at gadt-escape1.hs:19:43-50 + ‘t’ is a rigid type variable bound by + the inferred type of weird1 :: t at gadt-escape1.hs:19:1-58 + Possible fix: add a type signature for ‘weird1’ + Expected type: t + Actual type: ExpGADT t1 + • In the expression: a + In a case alternative: Hidden (ExpInt _) a -> a + In the expression: + case (hval :: Hidden) of { Hidden (ExpInt _) a -> a } + • Relevant bindings include + weird1 :: t (bound at gadt-escape1.hs:19:1) diff --git a/testsuite/tests/gadt/rw.stderr b/testsuite/tests/gadt/rw.stderr index 4c53ff2aa1..067595f2d7 100644 --- a/testsuite/tests/gadt/rw.stderr +++ b/testsuite/tests/gadt/rw.stderr @@ -1,30 +1,30 @@ -
-rw.hs:14:47: error:
- • Couldn't match expected type ‘a’ with actual type ‘Int’
- ‘a’ is a rigid type variable bound by
- the type signature for:
- writeInt :: forall a. T a -> IORef a -> IO ()
- at rw.hs:12:1-34
- • In the second argument of ‘writeIORef’, namely ‘(1 :: Int)’
- In the expression: writeIORef ref (1 :: Int)
- In a case alternative: ~(Li x) -> writeIORef ref (1 :: Int)
- • Relevant bindings include
- ref :: IORef a (bound at rw.hs:13:12)
- v :: T a (bound at rw.hs:13:10)
- writeInt :: T a -> IORef a -> IO () (bound at rw.hs:13:1)
-
-rw.hs:19:43: error:
- • Couldn't match type ‘a’ with ‘Bool’
- ‘a’ is a rigid type variable bound by
- the type signature for:
- readBool :: forall a. T a -> IORef a -> IO ()
- at rw.hs:16:1-34
- Expected type: a -> IO ()
- Actual type: Bool -> IO ()
- • In the second argument of ‘(>>=)’, namely ‘(print . not)’
- In the expression: readIORef ref >>= (print . not)
- In a case alternative: ~(Lb x) -> readIORef ref >>= (print . not)
- • Relevant bindings include
- ref :: IORef a (bound at rw.hs:17:12)
- v :: T a (bound at rw.hs:17:10)
- readBool :: T a -> IORef a -> IO () (bound at rw.hs:17:1)
+ +rw.hs:14:47: error: + • Couldn't match expected type ‘a’ with actual type ‘Int’ + ‘a’ is a rigid type variable bound by + the type signature for: + writeInt :: forall a. T a -> IORef a -> IO () + at rw.hs:12:1-34 + • In the second argument of ‘writeIORef’, namely ‘(1 :: Int)’ + In the expression: writeIORef ref (1 :: Int) + In a case alternative: ~(Li x) -> writeIORef ref (1 :: Int) + • Relevant bindings include + ref :: IORef a (bound at rw.hs:13:12) + v :: T a (bound at rw.hs:13:10) + writeInt :: T a -> IORef a -> IO () (bound at rw.hs:13:1) + +rw.hs:19:43: error: + • Couldn't match type ‘a’ with ‘Bool’ + ‘a’ is a rigid type variable bound by + the type signature for: + readBool :: forall a. T a -> IORef a -> IO () + at rw.hs:16:1-34 + Expected type: a -> IO () + Actual type: Bool -> IO () + • In the second argument of ‘(>>=)’, namely ‘(print . not)’ + In the expression: readIORef ref >>= (print . not) + In a case alternative: ~(Lb x) -> readIORef ref >>= (print . not) + • Relevant bindings include + ref :: IORef a (bound at rw.hs:17:12) + v :: T a (bound at rw.hs:17:10) + readBool :: T a -> IORef a -> IO () (bound at rw.hs:17:1) |