import Util ( equalLength )
import BasicTypes( IPName(..), mapIPName, ipNameName )
import UniqSupply( uniqsFromSupply )
-import Bag
import Outputable
\end{code}
-- always a class op, but with -fno-implicit-prelude GHC is
-- meant to find whatever thing is in scope, and that may
-- be an ordinary function.
- newMethod origin id [ty] `thenM` \ inst ->
- returnM (instToId inst)
+ newMethod origin id [ty]
newMethod :: InstOrigin
-> TcId
-> [TcType]
- -> TcM Inst
+ -> TcM Id
newMethod orig id tys
= -- Get the Id type and instantiate it at the specified types
let
= getInstLoc orig `thenM` \ loc ->
newMethodWith loc id tys theta tau `thenM` \ inst ->
extendLIE inst `thenM_`
- returnM inst
+ returnM (instToId inst)
--------------------------------------------
-- newMethodWith and newMethodAtLoc do *not* drop the