No title

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 error:
     Couldn't match type State m0 with State m
      Expected type: TChan ServiceRequest
                     -> TChan Frame
                     -> State m Idle
                     -> Either StateMachineException (State m Offered)
        Actual type: TChan ServiceRequest
                     -> TChan Frame
                     -> State m0 Idle
                     -> Either StateMachineException (State m0 Offered)
      NB: State is a type function, and may not be injective
      The type variable m0 is ambiguous
     In the ambiguity check for offerServiceNegotiation
      To defer the ambiguity check to use sites, enable AllowAmbiguousTypes
      In the type signature:
        offerServiceNegotiation :: (ConnectionSetup m, MonadIO m) =>
                                   TChan ServiceRequest
                                   -> TChan Frame
                                      -> State m Idle
                                         -> Either StateMachineException (State m Offered)