summaryrefslogtreecommitdiff
path: root/testsuite/tests/quantified-constraints/T15290a.stderr
blob: 2efd784f31b13e7ed71d3506164af80a4ea4519e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

T15290a.hs:25:12: error:
    • Couldn't match representation of type ‘m (Int, IntStateT m a1)’
                               with that of ‘m (Int, StateT Int m a1)’
        arising from a use of ‘coerce’
      NB: We cannot know what roles the parameters to ‘m’ have;
        we must assume that the role is nominal
    • In the expression:
        coerce
          @(forall a. StateT Int m (StateT Int m a) -> StateT Int m a)
          @(forall a. IntStateT m (IntStateT m a) -> IntStateT m a)
          join
      In an equation for ‘join’:
          join
            = coerce
                @(forall a. StateT Int m (StateT Int m a) -> StateT Int m a)
                @(forall a. IntStateT m (IntStateT m a) -> IntStateT m a)
                join
      In the instance declaration for ‘Monad (IntStateT m)’
    • Relevant bindings include
        join :: IntStateT m (IntStateT m a) -> IntStateT m a
          (bound at T15290a.hs:25:5)