[commit: ghc] master: Add TyCon.checkRecTc, and use in in typeArity (a1a67b5)

Simon Peyton Jones simonpj at microsoft.com
Thu Jun 6 15:30:21 CEST 2013


Repository : http://darcs.haskell.org/ghc.git/

On branch  : master

https://github.com/ghc/ghc/commit/a1a67b58d1fb32ee46809492bb01ac5d3a39d2dd

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

commit a1a67b58d1fb32ee46809492bb01ac5d3a39d2dd
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date:   Tue May 28 08:56:43 2013 +0100

    Add TyCon.checkRecTc, and use in in typeArity
    
    This just formalises an abstraction we've been using anyway,
    namely to expand "recursive" TyCons until we see them twice.
    We weren't doing this in typeArity, and that inconsistency
    was leading to a subsequent ASSERT failure, when compiling
    Stream.hs, which has a newtype like this
    
       newtype Stream m a b = Stream (m (Either b (a, Stream m a b)))

 compiler/coreSyn/CoreArity.lhs   | 52 ++++++++++++++++++++++-------------
 compiler/typecheck/TcForeign.lhs | 29 +++++++++-----------
 compiler/types/Coercion.lhs      | 13 +++------
 compiler/types/FamInstEnv.lhs    |  4 +--
 compiler/types/TyCon.lhs         | 58 +++++++++++++++++++++++++++++++++++++++-
 compiler/types/Type.lhs          | 35 +++---------------------
 6 files changed, 113 insertions(+), 78 deletions(-)


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

    git show a1a67b58d1fb32ee46809492bb01ac5d3a39d2dd



More information about the ghc-commits mailing list