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

T2664.hs:32:52: error:
    • Could not deduce (b ~ a) arising from a use of ‘newPChan’
      from the context: ((a :*: b) ~ Dual c, c ~ Dual (a :*: b))
        bound by the type signature for:
                   newPChan :: forall c.
                               ((a :*: b) ~ Dual c, c ~ Dual (a :*: b)) =>
                               IO (PChan (a :*: b), PChan c)
        at T2664.hs:24:5-12
      ‘b’ is a rigid type variable bound by
        the instance declaration
        at T2664.hs:23:10-52
      ‘a’ is a rigid type variable bound by
        the instance declaration
        at T2664.hs:23:10-52
    • In the third argument of ‘pchoose’, namely ‘newPChan’
      In the first argument of ‘E’, namely ‘(pchoose Right v newPChan)’
      In the expression:
        E (pchoose Right v newPChan) (pchoose Left v newPChan)
    • Relevant bindings include
        v :: MVar (Either (PChan a) (PChan b)) (bound at T2664.hs:25:9)
        newPChan :: IO (PChan (a :*: b), PChan c) (bound at T2664.hs:24:5)