[commit: ghc] wip/tc-plugins: Split-out the type of TcSMonad into a separate module TcSTypes. (9215da8)

git at git.haskell.org git at git.haskell.org
Thu Oct 9 23:02:14 UTC 2014


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/tc-plugins
Link       : http://ghc.haskell.org/trac/ghc/changeset/9215da81a190dfabc4fa598012aa93c937f0aaf2/ghc

>---------------------------------------------------------------

commit 9215da81a190dfabc4fa598012aa93c937f0aaf2
Author: Iavor S. Diatchki <diatchki at galois.com>
Date:   Thu Oct 9 15:40:36 2014 -0700

    Split-out the type of TcSMonad into a separate module TcSTypes.
    
    We do this, because we'd like to mention the type `TcS` in `TcRnTypes`.
    The reason for this is that type-checker plugins are stored in the
    global environment of `TcM`, which is defined in `TcRnTypes`.
    
    If `TcRnTypes` depends on the whole of `TcSMonad`, then we have
    to add very many dependencies to `gc.mk` (see note about building DLLs
    on Windows).
    
    For this reason, we split-up TcSMonad in twp parts: `TcSTypes`, which
    has relatively few dependencies, and `TcSMonad`, which contains most
    of the code.
    
    `TcSMonad` was getting quite large anyway, so hopefully this is OK.


>---------------------------------------------------------------

9215da81a190dfabc4fa598012aa93c937f0aaf2
 compiler/ghc.cabal.in           |   1 +
 compiler/typecheck/TcSMonad.lhs | 350 +-----------------------------------
 compiler/typecheck/TcSTypes.hs  | 385 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 387 insertions(+), 349 deletions(-)

Diff suppressed because of size. To see it, use:

    git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 9215da81a190dfabc4fa598012aa93c937f0aaf2


More information about the ghc-commits mailing list