Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/1687a666052ba19249186d0c4bb8e2dc3d7847f2 >--------------------------------------------------------------- commit 1687a666052ba19249186d0c4bb8e2dc3d7847f2 Merge: 6761dc2... 7fa2ce2... Author: Simon Peyton Jones <simo...@microsoft.com> Date: Wed Jan 2 16:40:13 2013 +0000 Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc compiler/basicTypes/BasicTypes.lhs | 51 -- compiler/basicTypes/DataCon.lhs | 52 ++- compiler/basicTypes/MkId.lhs | 260 ++++--- compiler/coreSyn/CoreLint.lhs | 59 ++- compiler/coreSyn/CoreSubst.lhs | 2 +- compiler/coreSyn/CoreUnfold.lhs | 4 +- compiler/coreSyn/ExternalCore.lhs | 1 + compiler/coreSyn/MkExternalCore.lhs | 5 +- compiler/coreSyn/PprExternalCore.lhs | 53 +- compiler/coreSyn/TrieMap.lhs | 60 +- compiler/deSugar/DsArrows.lhs | 76 +- compiler/deSugar/DsBinds.lhs | 3 +- compiler/deSugar/DsMeta.hs | 161 +++-- compiler/ghc.cabal.in | 1 + compiler/hsSyn/Convert.lhs | 114 ++-- compiler/hsSyn/HsDecls.lhs | 498 ++++++++----- compiler/hsSyn/HsTypes.lhs | 1 + compiler/hsSyn/HsUtils.lhs | 31 +- compiler/iface/BinIface.hs | 47 +- compiler/iface/BuildTyCl.lhs | 12 +- compiler/iface/IfaceSyn.lhs | 67 ++- compiler/iface/IfaceType.lhs | 12 +- compiler/iface/MkIface.lhs | 56 +- compiler/iface/TcIface.lhs | 77 ++- compiler/iface/TcIface.lhs-boot | 4 +- compiler/main/DynFlags.hs | 7 +- compiler/main/GHC.hs | 4 +- compiler/main/HscStats.hs | 19 +- compiler/main/HscStats.lhs | 6 +- compiler/main/HscTypes.lhs | 25 +- compiler/main/PprTyThing.hs | 3 +- compiler/main/TidyPgm.lhs | 14 +- compiler/parser/Parser.y.pp | 72 ++- compiler/parser/ParserCore.y | 20 +- compiler/parser/RdrHsSyn.lhs | 116 ++-- compiler/prelude/PrelNames.lhs | 4 +- compiler/prelude/TysWiredIn.lhs | 2 +- compiler/rename/RnNames.lhs | 21 +- compiler/rename/RnSource.lhs | 254 ++++--- compiler/rename/RnTypes.lhs | 10 +- compiler/simplCore/Simplify.lhs | 4 +- compiler/stranal/DmdAnal.lhs | 4 +- compiler/typecheck/FamInst.lhs | 134 +++- compiler/typecheck/Inst.lhs | 112 ++-- compiler/typecheck/TcBinds.lhs | 2 +- compiler/typecheck/TcCanonical.lhs | 10 +- compiler/typecheck/TcClassDcl.lhs | 11 +- compiler/typecheck/TcDeriv.lhs | 71 +- compiler/typecheck/TcEnv.lhs | 20 +- compiler/typecheck/TcEvidence.lhs | 63 +- compiler/typecheck/TcExpr.lhs | 12 +- compiler/typecheck/TcForeign.lhs | 2 +- compiler/typecheck/TcGenDeriv.lhs | 50 +- compiler/typecheck/TcGenGenerics.lhs | 34 +- compiler/typecheck/TcHsSyn.lhs | 3 +- compiler/typecheck/TcInstDcls.lhs | 205 ++++-- compiler/typecheck/TcInteract.lhs | 47 +- compiler/typecheck/TcMType.lhs | 71 ++- compiler/typecheck/TcPat.lhs | 2 +- compiler/typecheck/TcRnDriver.lhs | 23 +- compiler/typecheck/TcRnTypes.lhs | 2 +- compiler/typecheck/TcSMonad.lhs | 6 +- compiler/typecheck/TcSimplify.lhs | 27 +- compiler/typecheck/TcSplice.lhs | 65 +- compiler/typecheck/TcTyClsDecls.lhs | 379 ++++++---- compiler/typecheck/TcTyDecls.lhs | 2 +- compiler/typecheck/TcType.lhs | 49 +- compiler/types/Class.lhs | 2 +- compiler/types/CoAxiom.lhs | 292 +++++++ compiler/types/Coercion.lhs | 128 ++-- compiler/types/FamInstEnv.lhs | 841 +++++++++++++++------ compiler/types/FunDeps.lhs | 12 +- compiler/types/InstEnv.lhs | 136 ++-- compiler/types/OptCoercion.lhs | 52 +- compiler/types/TyCon.lhs | 112 +--- compiler/types/Type.lhs | 9 + compiler/types/TypeRep.lhs | 3 +- compiler/types/Unify.lhs | 168 +++-- compiler/vectorise/Vectorise.hs | 3 +- compiler/vectorise/Vectorise/Env.hs | 2 +- compiler/vectorise/Vectorise/Generic/PADict.hs | 4 +- compiler/vectorise/Vectorise/Generic/PAMethods.hs | 20 +- compiler/vectorise/Vectorise/Generic/PData.hs | 15 +- compiler/vectorise/Vectorise/Monad/InstEnv.hs | 4 +- compiler/vectorise/Vectorise/Type/Env.hs | 15 +- compiler/vectorise/Vectorise/Type/TyConDecl.hs | 4 +- compiler/vectorise/Vectorise/Utils/Base.hs | 16 +- compiler/vectorise/Vectorise/Utils/PADict.hs | 11 +- docs/core-spec/CoreLint.ott | 36 +- docs/core-spec/CoreSyn.ott | 37 +- docs/core-spec/core-spec.mng | 21 +- docs/core-spec/core-spec.pdf | Bin 303537 -> 308357 bytes docs/users_guide/flags.xml | 7 + docs/users_guide/glasgow_exts.xml | 276 ++----- docs/users_guide/sooner.xml | 11 +- docs/users_guide/using.xml | 19 + ghc/InteractiveUI.hs | 2 +- 97 files changed, 3682 insertions(+), 2270 deletions(-) diff --cc compiler/coreSyn/CoreSubst.lhs index 87e64fb,02aa562..d8a1d2e --- a/compiler/coreSyn/CoreSubst.lhs +++ b/compiler/coreSyn/CoreSubst.lhs @@@ -1193,10 -1192,10 +1193,10 @@@ exprIsConApp_maybe id_unf exp -- Look through dictionary functions; see Note [Unfolding DFuns] | DFunUnfolding dfun_nargs con ops <- unfolding , length args == dfun_nargs -- See Note [DFun arity check] - , let (dfun_tvs, _n_theta, _cls, dfun_res_tys) = tcSplitDFunTy (idType fun) + , let (dfun_tvs, _theta, _cls, dfun_res_tys) = tcSplitDFunTy (idType fun) subst = zipOpenTvSubst dfun_tvs (stripTypeArgs (takeList dfun_tvs args)) mk_arg (DFunPolyArg e) = mkApps e args - mk_arg (DFunLamArg i) = args !! i + mk_arg (DFunLamArg i) = getNth args i = dealWithCoercion co (con, substTys subst dfun_res_tys, map mk_arg ops) -- Look through unfoldings, but only arity-zero one; _______________________________________________ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc