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

T2664.hs:31:52:
    Could not deduce (a ~ b)
    from the context ((a :*: b) ~ Dual c, c ~ Dual (a :*: b))
      bound by the type signature for
                 newPChan :: ((a :*: b) ~ Dual c, c ~ Dual (a :*: b)) =>
                             IO (PChan (a :*: b), PChan c)
      at T2664.hs:23:5-12
      ‘a’ is a rigid type variable bound by
          the instance declaration at T2664.hs:22:10
      ‘b’ is a rigid type variable bound by
          the instance declaration at T2664.hs:22:10
    Expected type: Dual (Dual a)
      Actual type: b
    Relevant bindings include
      v :: MVar (Either (PChan a) (PChan b)) (bound at T2664.hs:24:9)
      newPChan :: IO (PChan (a :*: b), PChan c) (bound at T2664.hs:23:5)
    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)