[commit: ghc] master: Track specified/invisible more carefully. (35e9379)

git at git.haskell.org git at git.haskell.org
Mon Mar 21 20:10:35 UTC 2016


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

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/35e937973f61a7e5534ecd0b1c67111cd82d4238/ghc

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

commit 35e937973f61a7e5534ecd0b1c67111cd82d4238
Author: Richard Eisenberg <eir at cis.upenn.edu>
Date:   Sat Mar 19 16:55:50 2016 -0400

    Track specified/invisible more carefully.
    
    In particular, this allows correct tracking of specified/invisible
    for variables in Haskell98 data constructors and in pattern synonyms.
    GADT-syntax constructors are harder, and are left until #11721.
    
    This was all inspired by Simon's comments to my fix for #11512,
    which this subsumes.
    
    Test case: ghci/scripts/TypeAppData
    
    [skip ci]  (The test case fails because of an unrelated problem
    fixed in the next commit.)


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

35e937973f61a7e5534ecd0b1c67111cd82d4238
 compiler/basicTypes/DataCon.hs                     |  96 ++++++++++---
 compiler/basicTypes/DataCon.hs-boot                |   6 +-
 compiler/basicTypes/MkId.hs                        |  14 +-
 compiler/basicTypes/PatSyn.hs                      |  25 +++-
 compiler/iface/BuildTyCl.hs                        |  48 ++++---
 compiler/iface/IfaceSyn.hs                         |  20 +--
 compiler/iface/IfaceType.hs                        |   6 +
 compiler/iface/MkIface.hs                          |  19 +--
 compiler/iface/TcIface.hs                          |  43 +++---
 compiler/prelude/TysWiredIn.hs                     |   6 +-
 compiler/typecheck/TcHsSyn.hs                      |   2 +-
 compiler/typecheck/TcHsType.hs                     |   4 +-
 compiler/typecheck/TcInstDcls.hs                   |   6 +-
 compiler/typecheck/TcPatSyn.hs                     | 140 +++++++++++--------
 compiler/typecheck/TcRnTypes.hs                    |  14 +-
 compiler/typecheck/TcTyClsDecls.hs                 | 151 ++++++++++++++++-----
 compiler/typecheck/TcType.hs                       |   4 +-
 compiler/types/Coercion.hs                         |   2 +-
 compiler/types/TyCoRep.hs                          |  25 +++-
 compiler/types/Type.hs                             |  10 +-
 compiler/vectorise/Vectorise/Generic/PData.hs      |   8 +-
 compiler/vectorise/Vectorise/Type/TyConDecl.hs     |   5 +-
 docs/users_guide/glasgow_exts.rst                  |  13 ++
 testsuite/tests/ghci/scripts/T11524a.stdout        |  28 ++--
 testsuite/tests/ghci/scripts/TypeAppData.script    |  31 +++++
 testsuite/tests/ghci/scripts/TypeAppData.stdout    |  14 ++
 testsuite/tests/ghci/scripts/all.T                 |   1 +
 .../tests/rename/should_fail/rnfail055.stderr      |   3 +-
 testsuite/tests/roles/should_compile/Roles1.stderr |   4 +-
 29 files changed, 514 insertions(+), 234 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 35e937973f61a7e5534ecd0b1c67111cd82d4238


More information about the ghc-commits mailing list