diff options
Diffstat (limited to 'testsuite/tests/typecheck/should_fail/tcfail068.stderr')
-rw-r--r-- | testsuite/tests/typecheck/should_fail/tcfail068.stderr | 159 |
1 files changed, 84 insertions, 75 deletions
diff --git a/testsuite/tests/typecheck/should_fail/tcfail068.stderr b/testsuite/tests/typecheck/should_fail/tcfail068.stderr index 330b1dceb0..f80a2cf1bb 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail068.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail068.stderr @@ -1,70 +1,78 @@ -tcfail068.hs:14:9: - Couldn't match type ‘s1’ with ‘s’ +tcfail068.hs:14:9: error: + • Couldn't match type ‘s1’ with ‘s’ ‘s1’ is a rigid type variable bound by - a type expected by the context: ST s1 (IndTree s a) - at tcfail068.hs:13:9 + a type expected by the context: + forall s1. ST s1 (IndTree s a) + at tcfail068.hs:13:9 ‘s’ is a rigid type variable bound by - the type signature for: - itgen :: Constructed a => (Int, Int) -> a -> IndTree s a - at tcfail068.hs:11:10 - Expected type: ST s1 (IndTree s a) - Actual type: ST s1 (STArray s1 (Int, Int) a) - In the first argument of ‘runST’, namely - ‘(newSTArray ((1, 1), n) x)’ - In the expression: runST (newSTArray ((1, 1), n) x) - Relevant bindings include - itgen :: (Int, Int) -> a -> IndTree s a - (bound at tcfail068.hs:12:1) + the type signature for: + itgen :: forall a s. + Constructed a => + (Int, Int) -> a -> IndTree s a + at tcfail068.hs:11:10 + Expected type: ST s1 (IndTree s a) + Actual type: ST s1 (STArray s1 (Int, Int) a) + • In the first argument of ‘runST’, namely + ‘(newSTArray ((1, 1), n) x)’ + In the expression: runST (newSTArray ((1, 1), n) x) + • Relevant bindings include + itgen :: (Int, Int) -> a -> IndTree s a + (bound at tcfail068.hs:12:1) -tcfail068.hs:19:21: - Couldn't match type ‘s’ with ‘s1’ +tcfail068.hs:19:21: error: + • Couldn't match type ‘s’ with ‘s1’ ‘s’ is a rigid type variable bound by - the type signature for: - itiap :: Constructed a => + the type signature for: + itiap :: forall a s. + Constructed a => (Int, Int) -> (a -> a) -> IndTree s a -> IndTree s a - at tcfail068.hs:16:10 + at tcfail068.hs:16:10 ‘s1’ is a rigid type variable bound by - a type expected by the context: ST s1 (IndTree s a) - at tcfail068.hs:18:9 - Expected type: STArray s1 (Int, Int) a - Actual type: IndTree s a - In the first argument of ‘readSTArray’, namely ‘arr’ - In the first argument of ‘(>>=)’, namely ‘readSTArray arr i’ - Relevant bindings include - arr :: IndTree s a (bound at tcfail068.hs:17:11) - itiap :: (Int, Int) -> (a -> a) -> IndTree s a -> IndTree s a - (bound at tcfail068.hs:17:1) + a type expected by the context: + forall s1. ST s1 (IndTree s a) + at tcfail068.hs:18:9 + Expected type: STArray s1 (Int, Int) a + Actual type: IndTree s a + • In the first argument of ‘readSTArray’, namely ‘arr’ + In the first argument of ‘(>>=)’, namely ‘readSTArray arr i’ + • Relevant bindings include + arr :: IndTree s a (bound at tcfail068.hs:17:11) + itiap :: (Int, Int) -> (a -> a) -> IndTree s a -> IndTree s a + (bound at tcfail068.hs:17:1) -tcfail068.hs:24:36: - Couldn't match type ‘s’ with ‘s1’ +tcfail068.hs:24:36: error: + • Couldn't match type ‘s’ with ‘s1’ ‘s’ is a rigid type variable bound by - the type signature for: - itrap :: Constructed a => + the type signature for: + itrap :: forall a s. + Constructed a => ((Int, Int), (Int, Int)) -> (a -> a) -> IndTree s a -> IndTree s a - at tcfail068.hs:23:10 + at tcfail068.hs:23:10 ‘s1’ is a rigid type variable bound by - a type expected by the context: ST s1 (IndTree s a) - at tcfail068.hs:24:29 - Expected type: ST s1 (IndTree s a) - Actual type: ST s (IndTree s a) - In the first argument of ‘runST’, namely ‘(itrap' i k)’ - In the expression: runST (itrap' i k) - Relevant bindings include - itrap' :: Int -> Int -> ST s (IndTree s a) - (bound at tcfail068.hs:26:9) - itrapsnd :: Int -> Int -> ST s (IndTree s a) - (bound at tcfail068.hs:29:9) - arr :: IndTree s a (bound at tcfail068.hs:24:23) - itrap :: ((Int, Int), (Int, Int)) - -> (a -> a) -> IndTree s a -> IndTree s a - (bound at tcfail068.hs:24:1) + a type expected by the context: + forall s1. ST s1 (IndTree s a) + at tcfail068.hs:24:29 + Expected type: ST s1 (IndTree s a) + Actual type: ST s (IndTree s a) + • In the first argument of ‘runST’, namely ‘(itrap' i k)’ + In the expression: runST (itrap' i k) + • Relevant bindings include + itrap' :: Int -> Int -> ST s (IndTree s a) + (bound at tcfail068.hs:26:9) + itrapsnd :: Int -> Int -> ST s (IndTree s a) + (bound at tcfail068.hs:29:9) + arr :: IndTree s a (bound at tcfail068.hs:24:23) + itrap :: ((Int, Int), (Int, Int)) + -> (a -> a) -> IndTree s a -> IndTree s a + (bound at tcfail068.hs:24:1) -tcfail068.hs:36:46: - Couldn't match type ‘s’ with ‘s1’ +tcfail068.hs:36:46: error: + • Couldn't match type ‘s’ with ‘s1’ ‘s’ is a rigid type variable bound by - the type signature for: - itrapstate :: Constructed b => + the type signature for: + itrapstate :: forall b a c s. + Constructed b => ((Int, Int), (Int, Int)) -> (a -> b -> (a, b)) -> ((Int, Int) -> c -> a) @@ -72,25 +80,26 @@ tcfail068.hs:36:46: -> c -> IndTree s b -> (c, IndTree s b) - at tcfail068.hs:34:15 + at tcfail068.hs:34:15 ‘s1’ is a rigid type variable bound by - a type expected by the context: ST s1 (c, IndTree s b) - at tcfail068.hs:36:40 - Expected type: ST s1 (c, IndTree s b) - Actual type: ST s (c, IndTree s b) - In the first argument of ‘runST’, namely ‘(itrapstate' i k s)’ - In the expression: runST (itrapstate' i k s) - Relevant bindings include - itrapstate' :: Int -> Int -> c -> ST s (c, IndTree s b) - (bound at tcfail068.hs:38:9) - itrapstatesnd :: Int -> Int -> c -> ST s (c, IndTree s b) - (bound at tcfail068.hs:41:9) - arr :: IndTree s b (bound at tcfail068.hs:36:34) - itrapstate :: ((Int, Int), (Int, Int)) - -> (a -> b -> (a, b)) - -> ((Int, Int) -> c -> a) - -> (a -> c) - -> c - -> IndTree s b - -> (c, IndTree s b) - (bound at tcfail068.hs:36:1) + a type expected by the context: + forall s1. ST s1 (c, IndTree s b) + at tcfail068.hs:36:40 + Expected type: ST s1 (c, IndTree s b) + Actual type: ST s (c, IndTree s b) + • In the first argument of ‘runST’, namely ‘(itrapstate' i k s)’ + In the expression: runST (itrapstate' i k s) + • Relevant bindings include + itrapstate' :: Int -> Int -> c -> ST s (c, IndTree s b) + (bound at tcfail068.hs:38:9) + itrapstatesnd :: Int -> Int -> c -> ST s (c, IndTree s b) + (bound at tcfail068.hs:41:9) + arr :: IndTree s b (bound at tcfail068.hs:36:34) + itrapstate :: ((Int, Int), (Int, Int)) + -> (a -> b -> (a, b)) + -> ((Int, Int) -> c -> a) + -> (a -> c) + -> c + -> IndTree s b + -> (c, IndTree s b) + (bound at tcfail068.hs:36:1) |