Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/f15f210baa9e6bb24e060470e120efe67af68572 >--------------------------------------------------------------- commit f15f210baa9e6bb24e060470e120efe67af68572 Author: Ian Lynagh <[email protected]> Date: Wed Jul 6 12:25:27 2011 +0100 Remove mention of -fno-method-sharing from comments and docs >--------------------------------------------------------------- compiler/typecheck/TcExpr.lhs | 16 ---------------- docs/users_guide/flags.xml | 7 ------- 2 files changed, 0 insertions(+), 23 deletions(-) diff --git a/compiler/typecheck/TcExpr.lhs b/compiler/typecheck/TcExpr.lhs index ee6a34a..e547340 100644 --- a/compiler/typecheck/TcExpr.lhs +++ b/compiler/typecheck/TcExpr.lhs @@ -1050,22 +1050,6 @@ Here's a concrete example that does this (test tc200): Current solution: only do the "method sharing" thing for the first type/dict application, not for the iterated ones. A horribly subtle point. -Note [No method sharing] -~~~~~~~~~~~~~~~~~~~~~~~~ -The -fno-method-sharing flag controls what happens so far as the LIE -is concerned. The default case is that for an overloaded function we -generate a "method" Id, and add the Method Inst to the LIE. So you get -something like - f :: Num a => a -> a - f = /\a (d:Num a) -> let m = (+) a d in \ (x:a) -> m x x -If you specify -fno-method-sharing, the dictionary application -isn't shared, so we get - f :: Num a => a -> a - f = /\a (d:Num a) (x:a) -> (+) a d x x -This gets a bit less sharing, but - a) it's better for RULEs involving overloaded functions - b) perhaps fewer separated lambdas - \begin{code} doStupidChecks :: TcId -> [TcType] diff --git a/docs/users_guide/flags.xml b/docs/users_guide/flags.xml index 8b352d0..e8e262d 100644 --- a/docs/users_guide/flags.xml +++ b/docs/users_guide/flags.xml @@ -1397,13 +1397,6 @@ </row> <row> - <entry><option>-fmethod-sharing</option></entry> - <entry>Share specialisations of overloaded functions (default)</entry> - <entry>dynamic</entry> - <entry><option>-fno-method-sharing</option></entry> - </row> - - <row> <entry><option>-fdo-eta-reduction</option></entry> <entry>Enable eta-reduction. Implied by <option>-O</option>.</entry> <entry>dynamic</entry> _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
