summaryrefslogtreecommitdiff
path: root/testsuite/tests/rebindable/rebindable6.stderr
blob: a12cef09f22861fae42e32584c7933f1b62ef72e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67

rebindable6.hs:106:17:
    No instance for (HasSeq (IO a -> t0 -> IO b))
      arising from a do statement
    The type variable `t0' is ambiguous
    Relevant bindings include
      test_do :: IO a -> IO (Maybe b) -> IO b
        (bound at rebindable6.hs:104:9)
      f :: IO a (bound at rebindable6.hs:104:17)
      g :: IO (Maybe b) (bound at rebindable6.hs:104:19)
    Note: there is a potential instance available:
      instance HasSeq (IO a -> IO b -> IO b)
        -- Defined at rebindable6.hs:52:18
    In a stmt of a 'do' block: f
    In the expression:
      do { f;
           Just (b :: b) <- g;
           return b }
    In an equation for `test_do':
        test_do f g
          = do { f;
                 Just (b :: b) <- g;
                 return b }

rebindable6.hs:107:17:
    No instance for (HasBind (IO (Maybe b) -> (Maybe b -> t1) -> t0))
      arising from a do statement
    The type variables `t0', `t1' are ambiguous
    Relevant bindings include
      test_do :: IO a -> IO (Maybe b) -> IO b
        (bound at rebindable6.hs:104:9)
      g :: IO (Maybe b) (bound at rebindable6.hs:104:19)
    Note: there is a potential instance available:
      instance HasBind (IO a -> (a -> IO b) -> IO b)
        -- Defined at rebindable6.hs:47:18
    In a stmt of a 'do' block: Just (b :: b) <- g
    In the expression:
      do { f;
           Just (b :: b) <- g;
           return b }
    In an equation for `test_do':
        test_do f g
          = do { f;
                 Just (b :: b) <- g;
                 return b }

rebindable6.hs:108:17:
    No instance for (HasReturn (b -> t1))
      arising from a use of `return'
    The type variable `t1' is ambiguous
    Relevant bindings include
      test_do :: IO a -> IO (Maybe b) -> IO b
        (bound at rebindable6.hs:104:9)
      g :: IO (Maybe b) (bound at rebindable6.hs:104:19)
      b :: b (bound at rebindable6.hs:107:23)
    Note: there is a potential instance available:
      instance HasReturn (a -> IO a) -- Defined at rebindable6.hs:42:18
    In a stmt of a 'do' block: return b
    In the expression:
      do { f;
           Just (b :: b) <- g;
           return b }
    In an equation for `test_do':
        test_do f g
          = do { f;
                 Just (b :: b) <- g;
                 return b }