[commit: ghc] master: Permit empty closed type families (4efa421)

git at git.haskell.org git at git.haskell.org
Mon May 4 14:41:28 UTC 2015


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

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/4efa421327cf127ebefde59b2eece693e37dc3c6/ghc

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

commit 4efa421327cf127ebefde59b2eece693e37dc3c6
Author: Adam Gundry <adam at well-typed.com>
Date:   Mon May 4 15:30:37 2015 +0100

    Permit empty closed type families
    
    Fixes #9840 and #10306, and includes an alternative resolution to #8028.
    This permits empty closed type families, and documents them in the user
    guide. It updates the Haddock submodule to support the API change.
    
    Test Plan: Added `indexed-types/should_compile/T9840` and updated
    `indexed-types/should_fail/ClosedFam4` and `th/T8028`.
    
    Reviewers: austin, simonpj, goldfire
    
    Reviewed By: goldfire
    
    Subscribers: bgamari, jstolarek, thomie, goldfire
    
    Differential Revision: https://phabricator.haskell.org/D841
    
    GHC Trac Issues: #9840, #10306


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

4efa421327cf127ebefde59b2eece693e37dc3c6
 compiler/deSugar/DsMeta.hs                         | 14 ++++----
 compiler/hsSyn/Convert.hs                          |  5 +--
 compiler/hsSyn/HsDecls.hs                          | 15 +++++----
 compiler/iface/IfaceSyn.hs                         | 33 ++++++++++---------
 compiler/iface/MkIface.hs                          |  5 ++-
 compiler/iface/TcIface.hs                          |  4 +--
 compiler/main/HscTypes.hs                          |  2 +-
 compiler/parser/Parser.y                           | 13 ++++----
 compiler/prelude/TysPrim.hs                        |  2 +-
 compiler/rename/RnSource.hs                        |  6 ++--
 compiler/typecheck/TcRnDriver.hs                   |  7 ++--
 compiler/typecheck/TcSplice.hs                     | 17 +++++-----
 compiler/typecheck/TcTyClsDecls.hs                 | 37 ++++++++++++----------
 compiler/types/FamInstEnv.hs                       |  2 +-
 compiler/types/TyCon.hs                            | 22 ++++++++-----
 docs/users_guide/glasgow_exts.xml                  | 14 +++++++-
 .../tests/indexed-types/should_compile/T9840.hs    | 12 +++++++
 .../indexed-types/should_compile/T9840.hs-boot     | 10 ++++++
 .../tests/indexed-types/should_compile/T9840a.hs   | 10 ++++++
 testsuite/tests/indexed-types/should_compile/all.T |  4 +++
 .../tests/indexed-types/should_fail/ClosedFam4.hs  |  0
 .../indexed-types/should_fail/ClosedFam4.stderr    |  2 +-
 testsuite/tests/th/T10306.hs                       | 14 ++++++++
 testsuite/tests/th/T8028.hs                        | 12 ++++++-
 testsuite/tests/th/T8028.stderr                    |  4 ---
 testsuite/tests/th/TH_abstractFamily.hs            | 11 +++++++
 testsuite/tests/th/TH_abstractFamily.stderr        |  5 +++
 testsuite/tests/th/all.T                           |  5 ++-
 utils/haddock                                      |  2 +-
 29 files changed, 199 insertions(+), 90 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 4efa421327cf127ebefde59b2eece693e37dc3c6


More information about the ghc-commits mailing list