Core Lint error when compiling c2hs with GHC 9.2.5
Summary
c2hs-0.28.8
fails to compile with -dcore-lint
Steps to reproduce
$ cabal get c2hs-0.28.8
$ cat > cabal.project << EOF
packages: .
package c2hs
ghc-options: -dcore-lint
EOF
$ cabal build
Click to expand
*** Core Lint errors : in result of Worker Wrapper binds ***
<no location info>: warning:
Kinds don't match in type application:
Type variable: a_11 :: *
Arg type:
(# State# RealWorld,
(BaseState SwitchBoard, CState GBState,
Either (String, String) [CHSFrag]) #) :: TYPE
('TupleRep '[ 'TupleRep '[], LiftedRep])
Linted Arg kind: TYPE ('TupleRep '[ 'TupleRep '[], LiftedRep])
In the RHS of expandFrags_s13RN :: [CHSFrag]
-> BaseState SwitchBoard
-> (AttrC, GBState)
-> State# RealWorld
-> (# State# RealWorld,
(BaseState SwitchBoard, (AttrC, GBState),
Either (String, String) [CHSFrag]) #)
In the body of lambda with binder x_aUn :: [CHSFrag]
In the body of lambda with binder eta_X1q :: BaseState SwitchBoard
In the body of lambda with binder eta_X1r :: (AttrC, GBState)
In the body of lambda with binder eta_X1s :: State# RealWorld
In the RHS of go1_s15xn :: [CHSFrag]
-> BaseState SwitchBoard
-> CState GBState
-> State# RealWorld
-> (# State# RealWorld,
(BaseState SwitchBoard, CState GBState,
Either (String, String) [[CHSFrag]]) #)
In the body of lambda with binder ds_aWl :: [CHSFrag]
In the body of lambda with binder eta_X1t :: BaseState SwitchBoard
In the body of lambda with binder eta_X1u :: CState GBState
In the body of lambda with binder eta_X1v :: State# RealWorld
In a case alternative: (: y_aWo :: CHSFrag, ys_aWp :: [CHSFrag])
In the body of letrec with binders $w$j_s15Sk :: State# RealWorld
-> BaseState SwitchBoard
-> (AttrC, GBState)
-> Either
(String, String)
([[CHSFrag]] -> [[CHSFrag]])
-> (# State# RealWorld,
(BaseState SwitchBoard, CState GBState,
Either (String, String) [[CHSFrag]]) #)
In the body of letrec with binders $j_s15xM :: State# RealWorld
-> (BaseState SwitchBoard, (AttrC, GBState),
Either
(String, String)
([[CHSFrag]] -> [[CHSFrag]]))
-> (# State# RealWorld,
(BaseState SwitchBoard, CState GBState,
Either (String, String) [[CHSFrag]]) #)
In a case alternative: (CHSHook h_aXVO :: CHSHook,
pos_aXVP :: Position)
In the body of lambda with binder w_s15Sv :: State# RealWorld
In the body of lambda with binder ww_s15Sz :: BaseState SwitchBoard
In the body of lambda with binder ww_s15SA :: (AttrC, GBState)
In the body of lambda with binder ww_s15SB :: Either
(String, String) String
In the body of letrec with binders w_s15Sw :: (BaseState
SwitchBoard,
(AttrC, GBState), Either (String, String) String)
In the body of letrec with binders ipv_ifkD :: State# RealWorld
In the body of letrec with binders ipv1_ifkE :: (BaseState
SwitchBoard,
(AttrC, GBState),
Either (String, String) String)
In a case alternative: ((,,) bs'_ifkH :: BaseState SwitchBoard,
gs'_ifkI :: (AttrC, GBState),
res_ifkJ :: Either (String, String) String)
In the body of lambda with binder w_s15Sl :: State# RealWorld
In the body of lambda with binder ww_s15Sq :: BaseState SwitchBoard
In the body of lambda with binder ww_s15Sr :: CState GBState
In the body of lambda with binder ww_s15Ss :: Either
(String, String) [CHSFrag]
In the body of letrec with binders w_s15Sm :: (BaseState
SwitchBoard,
CState GBState,
Either (String, String) [CHSFrag])
Substitution: [TCvSubst
In scope: InScope {}
Type env: []
Co env: []]
<no location info>: warning:
The type of this binder is unlifted: w_s15Sn
Binder's type: (# State# RealWorld,
(BaseState SwitchBoard, CState GBState,
Either (String, String) [CHSFrag]) #)
In the RHS of expandFrags_s13RN :: [CHSFrag]
-> BaseState SwitchBoard
-> (AttrC, GBState)
-> State# RealWorld
-> (# State# RealWorld,
(BaseState SwitchBoard, (AttrC, GBState),
Either (String, String) [CHSFrag]) #)
In the body of lambda with binder x_aUn :: [CHSFrag]
In the body of lambda with binder eta_X1q :: BaseState SwitchBoard
In the body of lambda with binder eta_X1r :: (AttrC, GBState)
In the body of lambda with binder eta_X1s :: State# RealWorld
In the RHS of go1_s15xn :: [CHSFrag]
-> BaseState SwitchBoard
-> CState GBState
-> State# RealWorld
-> (# State# RealWorld,
(BaseState SwitchBoard, CState GBState,
Either (String, String) [[CHSFrag]]) #)
In the body of lambda with binder ds_aWl :: [CHSFrag]
In the body of lambda with binder eta_X1t :: BaseState SwitchBoard
In the body of lambda with binder eta_X1u :: CState GBState
In the body of lambda with binder eta_X1v :: State# RealWorld
In a case alternative: (: y_aWo :: CHSFrag, ys_aWp :: [CHSFrag])
In the body of letrec with binders $w$j_s15Sk :: State# RealWorld
-> BaseState SwitchBoard
-> (AttrC, GBState)
-> Either
(String, String)
([[CHSFrag]] -> [[CHSFrag]])
-> (# State# RealWorld,
(BaseState SwitchBoard, CState GBState,
Either (String, String) [[CHSFrag]]) #)
In the body of letrec with binders $j_s15xM :: State# RealWorld
-> (BaseState SwitchBoard, (AttrC, GBState),
Either
(String, String)
([[CHSFrag]] -> [[CHSFrag]]))
-> (# State# RealWorld,
(BaseState SwitchBoard, CState GBState,
Either (String, String) [[CHSFrag]]) #)
In a case alternative: (CHSHook h_aXVO :: CHSHook,
pos_aXVP :: Position)
In the body of lambda with binder w_s15Sv :: State# RealWorld
In the body of lambda with binder ww_s15Sz :: BaseState SwitchBoard
In the body of lambda with binder ww_s15SA :: (AttrC, GBState)
In the body of lambda with binder ww_s15SB :: Either
(String, String) String
In the body of letrec with binders w_s15Sw :: (BaseState
SwitchBoard,
(AttrC, GBState), Either (String, String) String)
In the body of letrec with binders ipv_ifkD :: State# RealWorld
In the body of letrec with binders ipv1_ifkE :: (BaseState
SwitchBoard,
(AttrC, GBState),
Either (String, String) String)
In a case alternative: ((,,) bs'_ifkH :: BaseState SwitchBoard,
gs'_ifkI :: (AttrC, GBState),
res_ifkJ :: Either (String, String) String)
In the body of lambda with binder w_s15Sl :: State# RealWorld
In the body of lambda with binder ww_s15Sq :: BaseState SwitchBoard
In the body of lambda with binder ww_s15Sr :: CState GBState
In the body of lambda with binder ww_s15Ss :: Either
(String, String) [CHSFrag]
In the body of letrec with binders w_s15Sm :: (BaseState
SwitchBoard,
CState GBState,
Either (String, String) [CHSFrag])
Substitution: [TCvSubst
In scope: InScope {}
Type env: []
Co env: []]
Environment
- GHC version used: 9.2.5