idInfo id
new_idinfo | opt_OmitInterfacePragmas
- = vanillaIdInfo
+ = constantIdInfo
| otherwise
= core_idinfo `setArityInfo` arity_info
`setCafInfo` cafInfo stg_idinfo
idUnfolding, idStrictness,
mkVanillaId, idInfo
)
-import IdInfo ( StrictnessInfo(..), ArityInfo, atLeastArity, vanillaIdInfo )
+import IdInfo ( StrictnessInfo(..), ArityInfo, atLeastArity )
import Maybes ( maybeToBool, catMaybes )
import Name ( setNameUnique )
import Demand ( isStrict )
tcInstTyVars, zonkTcTyVars,
)
import Id ( idName, mkUserLocal, isDataConWrapId_maybe )
-import IdInfo ( vanillaIdInfo )
+import IdInfo ( constantIdInfo )
import MkId ( mkSpecPragmaId )
import Var ( TyVar, Id, idType, lazySetIdInfo, idInfo )
import VarSet
-- The Id must be returned without a data dependency on maybe_id
where
new_info = case tcLookupRecId env (idName id) of
- Nothing -> vanillaIdInfo
+ Nothing -> constantIdInfo
Just imported_id -> idInfo imported_id
-- ToDo: could check that types are the same
import TcEnv ( TcEnv, RecTcEnv, tcExtendTyVarEnv,
tcExtendGlobalValEnv, tcSetEnv,
- tcLookupGlobal_maybe, tcLookupRecId, tcEnvIds
+ tcLookupGlobal_maybe, tcLookupRecId
)
import RnHsSyn ( RenamedHsDecl )
tcAddErrCtxt (ifaceSigCtxt name) $
tcHsType ty `thenTc` \ sigma_ty ->
tcIdInfo unf_env in_scope_vars name
- sigma_ty vanillaIdInfo id_infos `thenTc` \ id_info ->
+ sigma_ty id_infos `thenTc` \ id_info ->
returnTc (mkId name sigma_ty id_info)
\end{code}
\begin{code}
-tcIdInfo unf_env in_scope_vars name ty info info_ins
+tcIdInfo unf_env in_scope_vars name ty info_ins
= foldlTc tcPrag constantIdInfo info_ins
where
tcPrag info (HsArity arity) = returnTc (info `setArityInfo` arity)