-
Simon Peyton Jones authored
---------------------------------------- Class ops that do not introduce for-alls ---------------------------------------- MERGE TO STABLE (if poss) The handling of class ops that do not add an extra for-all was utterly bogus. For example: class C a where fc :: (?p :: String) => a; class D a where fd :: (Ord a) => [a] -> [a] De-bogus-ing means a) Being careful when taking apart the class op type in MkIface.tcClassOpSig b) Ditto when making the method Id in an instance binding. Hence new function Inst.tcInstClassOp, and its calls in TcInstDcls, and TcClassDcls
4e84be0c