[commit: ghc] master: Associate pattern synonyms with types in module exports (96621b1)
git at git.haskell.org
git at git.haskell.org
Wed Nov 11 09:53:29 UTC 2015
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/96621b1b4979f449e873513e9de8d806257c9493/ghc
>---------------------------------------------------------------
commit 96621b1b4979f449e873513e9de8d806257c9493
Author: Matthew Pickering <matthewtpickering at gmail.com>
Date: Wed Nov 11 10:49:44 2015 +0100
Associate pattern synonyms with types in module exports
This patch implements #10653.
It adds the ability to bundle pattern synonyms with type constructors in
export lists so that users can treat pattern synonyms more like data
constructors.
Updates haddock submodule.
Test Plan: ./validate
Reviewers: goldfire, austin, bgamari
Reviewed By: bgamari
Subscribers: simonpj, gridaphobe, thomie
Differential Revision: https://phabricator.haskell.org/D1258
GHC Trac Issues: #10653
>---------------------------------------------------------------
96621b1b4979f449e873513e9de8d806257c9493
compiler/basicTypes/Avail.hs | 41 ++++--
compiler/basicTypes/RdrName.hs | 13 +-
compiler/hsSyn/HsImpExp.hs | 41 ++++--
compiler/iface/LoadIface.hs | 2 +-
compiler/iface/MkIface.hs | 2 +-
compiler/main/HscTypes.hs | 2 +-
compiler/parser/Parser.y | 52 +++++---
compiler/parser/RdrHsSyn.hs | 54 +++++++-
compiler/prelude/PrelInfo.hs | 4 +-
compiler/rename/RnEnv.hs | 4 +-
compiler/rename/RnNames.hs | 120 +++++++++++------
compiler/rename/RnPat.hs | 1 +
compiler/rename/RnSource.hs | 4 +-
compiler/typecheck/TcDeriv.hs | 2 +-
compiler/typecheck/TcRnDriver.hs | 142 ++++++++++++++++++++-
compiler/typecheck/TcRnTypes.hs | 2 +
compiler/types/TyCon.hs | 16 +++
.../tests/ghc-api/annotations/BundleExport.hs | 9 ++
testsuite/tests/ghc-api/annotations/Makefile | 4 +
testsuite/tests/ghc-api/annotations/all.T | 1 +
.../tests/ghc-api/annotations/bundle-export.stdout | 31 +++++
.../tests/patsyn/should_compile/Associated.hs | 9 ++
.../tests/patsyn/should_compile/Associated1.hs | 9 ++
.../patsyn/should_compile/AssociatedInternal.hs | 8 ++
.../patsyn/should_compile/AssociatedInternal1.hs | 8 ++
.../tests/patsyn/should_compile/ExportSyntax.hs | 17 +++
.../patsyn/should_compile/ExportSyntaxImport.hs | 7 +
.../tests/patsyn/should_compile/TransAssociated.hs | 9 ++
testsuite/tests/patsyn/should_compile/all.T | 12 ++
.../should_compile/export-record-selector.hs | 8 ++
.../patsyn/should_compile/export-super-class.hs | 22 ++++
.../tests/patsyn/should_compile/multi-export.hs | 11 ++
.../tests/patsyn/should_compile/poly-export.hs | 17 +++
.../tests/patsyn/should_compile/poly-export2.hs | 11 ++
.../tests/patsyn/should_compile/poly-export3.hs | 10 ++
testsuite/tests/patsyn/should_fail/all.T | 8 ++
testsuite/tests/patsyn/should_fail/export-class.hs | 8 ++
.../tests/patsyn/should_fail/export-class.stderr | 4 +
.../tests/patsyn/should_fail/export-ps-rec-sel.hs | 8 ++
.../patsyn/should_fail/export-ps-rec-sel.stderr | 12 ++
.../patsyn/should_fail/export-super-class-fail.hs | 24 ++++
.../tests/patsyn/should_fail/export-syntax.hs | 3 +
.../tests/patsyn/should_fail/export-syntax.stderr | 3 +
.../patsyn/should_fail/export-type-synonym.hs | 11 ++
.../patsyn/should_fail/export-type-synonym.stderr | 6 +
testsuite/tests/patsyn/should_fail/export-type.hs | 15 +++
.../tests/patsyn/should_fail/export-type.stderr | 18 +++
.../tests/patsyn/should_fail/import-syntax.hs | 4 +
.../tests/patsyn/should_fail/import-syntax.stderr | 3 +
.../tests/patsyn/should_fail/poly-export-fail2.hs | 9 ++
.../patsyn/should_fail/poly-export-fail2.stderr | 7 +
utils/haddock | 2 +-
52 files changed, 755 insertions(+), 95 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 96621b1b4979f449e873513e9de8d806257c9493
More information about the ghc-commits
mailing list