diff --git a/ghc/compiler/rename/Rename.lhs b/ghc/compiler/rename/Rename.lhs index f9aafff5762f25b837392ccf79f1e74b86db87d4..1ca1b2733e7fb3abfd03e1db013b60d6f3d90e2c 100644 --- a/ghc/compiler/rename/Rename.lhs +++ b/ghc/compiler/rename/Rename.lhs @@ -37,6 +37,7 @@ import TyCon ( TyCon ) import PrelMods ( mAIN, pREL_MAIN ) import TysWiredIn ( unitTyCon, intTyCon, doubleTyCon ) import PrelInfo ( ioTyCon_NAME, thinAirIdNames ) +import Type ( funTyCon ) import ErrUtils ( pprBagOfErrors, pprBagOfWarnings, doIfSet, dumpIfSet, ghcExit ) @@ -174,7 +175,11 @@ addImplicits mod_name -- are the types to which ambigious type variables may be defaulted by -- the type checker; so they won't always appear explicitly. -- [The () one is a GHC extension for defaulting CCall results.] - default_tys = [getName intTyCon, getName doubleTyCon, getName unitTyCon ] + -- ALSO: funTyCon, since it occurs implicitly everywhere! + -- (we don't want to be bothered with addImplicitOcc at every + -- function application) + default_tys = [getName intTyCon, getName doubleTyCon, + getName unitTyCon, getName funTyCon] -- Add occurrences for IO or PrimIO implicit_main | mod_name == mAIN