T10999.hs:5:6: error: • Found type wildcard ‘_’ standing for ‘Ord a’ Where: ‘a’ is a rigid type variable bound by the inferred type of f :: Ord a => () -> Set.Set a at T10999.hs:6:1-28 To use the inferred type, enable PartialTypeSignatures • In the type signature: f :: _ => () -> _ T10999.hs:5:17: error: • Found type wildcard ‘_’ standing for ‘Set.Set a’ Where: ‘a’ is a rigid type variable bound by the inferred type of f :: Ord a => () -> Set.Set a at T10999.hs:6:1-28 To use the inferred type, enable PartialTypeSignatures • In the type signature: f :: _ => () -> _ T10999.hs:8:28: error: • Ambiguous type variable ‘b0’ arising from a use of ‘f’ prevents the constraint ‘(Ord b0)’ from being solved. Relevant bindings include g :: [b0] (bound at T10999.hs:8:1) Probable fix: use a type annotation to specify what ‘b0’ should be. These potential instances exist: instance Ord a => Ord (Set.Set a) -- Defined in ‘Data.Set.Internal’ instance Ord Ordering -- Defined in ‘GHC.Classes’ instance Ord Integer -- Defined in ‘integer-gmp-1.0.1.0:GHC.Integer.Type’ ...plus 23 others ...plus three instances involving out-of-scope types (use -fprint-potential-instances to see them all) • In the second argument of ‘($)’, namely ‘f ()’ In the second argument of ‘($)’, namely ‘Set.toList $ f ()’ In the expression: map fst $ Set.toList $ f ()