T14172.hs:6:46: error: • Found type wildcard ‘_’ standing for ‘a'’ Where: ‘a'’ is a rigid type variable bound by the inferred type of traverseCompose :: (a -> f b) -> g a -> f (h a') at T14172.hs:7:1-46 To use the inferred type, enable PartialTypeSignatures • In the first argument of ‘h’, namely ‘_’ In the first argument of ‘f’, namely ‘(h _)’ In the type ‘(a -> f b) -> g a -> f (h _)’ T14172.hs:7:19: error: • Occurs check: cannot construct the infinite type: a ~ g'0 a Expected type: (f'0 a -> f (f'0 b)) -> Compose f'0 g'0 a -> f (h a') Actual type: (Unwrapped (Compose f'0 g'0 a) -> f (Unwrapped (h a'))) -> Compose f'0 g'0 a -> f (h a') • In the first argument of ‘(.)’, namely ‘_Wrapping Compose’ In the expression: _Wrapping Compose . traverse In an equation for ‘traverseCompose’: traverseCompose = _Wrapping Compose . traverse • Relevant bindings include traverseCompose :: (a -> f b) -> g a -> f (h a') (bound at T14172.hs:7:1)