Breaks the PrelVal loop and the PrelInfo loop caused by primOpNameInfo. \begin{code} interface PrelLoop where import PreludePS ( _PackedString ) import Class ( GenClass ) import CoreUnfold ( mkMagicUnfolding, UnfoldingDetails ) import IdUtils ( primOpNameInfo ) import Name ( Name, OrigName, mkPrimitiveName, mkWiredInName ) import PrimOp ( PrimOp ) import RnHsSyn ( RnName ) import Type ( mkSigmaTy, mkFunTys, GenType ) import TyVar ( GenTyVar ) import Unique ( Unique ) import Usage ( GenUsage ) mkMagicUnfolding :: Unique -> UnfoldingDetails mkPrimitiveName :: Unique -> OrigName -> Name mkWiredInName :: Unique -> OrigName -> Name mkSigmaTy :: [a] -> [(GenClass (GenTyVar (GenUsage Unique)) Unique, GenType a b)] -> GenType a b -> GenType a b mkFunTys :: [GenType a b] -> GenType a b -> GenType a b primOpNameInfo :: PrimOp -> (_PackedString, RnName) \end{code}