[commit: ghc] master: Use Cxt for deriving clauses in TH (#10819) (04ab55d)

git at git.haskell.org git at git.haskell.org
Mon Dec 14 14:33:32 UTC 2015


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

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/04ab55d9a6fe311b7cb544211738caca6c00c720/ghc

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

commit 04ab55d9a6fe311b7cb544211738caca6c00c720
Author: Ben Gamari <bgamari.foss at gmail.com>
Date:   Mon Dec 14 15:01:12 2015 +0100

    Use Cxt for deriving clauses in TH (#10819)
    
    Summary:
    Deriving clauses in the TH representations of data, newtype, data
    instance, and newtype instance declarations previously were just [Name],
    which didn't allow for more complex derived classes, eg. multi-parameter
    typeclasses.
    
    This switches out [Name] for Cxt, representing the derived classes as
    types instead of names.
    
    Test Plan: validate
    
    Reviewers: goldfire, spinda, austin
    
    Reviewed By: goldfire, austin
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D1202
    
    GHC Trac Issues: #10819


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

04ab55d9a6fe311b7cb544211738caca6c00c720
 compiler/deSugar/DsMeta.hs                         | 28 +++++++++++-----------
 compiler/hsSyn/Convert.hs                          | 12 ++++------
 docs/users_guide/7.12.1-notes.rst                  |  6 +++++
 .../template-haskell/Language/Haskell/TH/Lib.hs    | 20 +++++++++-------
 .../template-haskell/Language/Haskell/TH/Ppr.hs    | 18 +++++++-------
 .../template-haskell/Language/Haskell/TH/Syntax.hs | 14 +++++------
 testsuite/tests/rts/T7919A.hs                      |  4 ++--
 testsuite/tests/th/T10819.hs                       | 25 +++++++++++++++++++
 testsuite/tests/th/T10819_Lib.hs                   |  6 +++++
 testsuite/tests/th/TH_dataD1.hs                    |  2 +-
 testsuite/tests/th/all.T                           |  5 +++-
 11 files changed, 92 insertions(+), 48 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 04ab55d9a6fe311b7cb544211738caca6c00c720


More information about the ghc-commits mailing list