[commit: ghc] master: Add UInfixT to TH types (fixes #10522) (2178273)

git at git.haskell.org git at git.haskell.org
Mon Jul 27 11:49:13 UTC 2015


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

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/217827393dcacd0ef696c4f9f6136e21b3be63a8/ghc

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

commit 217827393dcacd0ef696c4f9f6136e21b3be63a8
Author: Michael Smith <michael at diglumi.com>
Date:   Mon Jul 27 13:19:01 2015 +0200

    Add UInfixT to TH types (fixes #10522)
    
    UInfixT is like UInfixE or UInfixP but for types. Template Haskell
    splices can use it to punt fixity handling to GHC when constructing
    types.
    
    UInfixT is converted in compiler/hsSyn/Convert to a right-biased tree of
    HsOpTy, which is already rearranged in compiler/rename/RnTypes to match
    operator fixities.
    
    This patch consists of (1) adding UInfixT to the AST, (2) implementing
    the conversion and updating relevant comments, (3) updating
    pretty-printing and library support, and (4) adding tests.
    
    Test Plan: validate
    
    Reviewers: austin, goldfire, bgamari
    
    Reviewed By: bgamari
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D1088
    
    GHC Trac Issues: #10522


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

217827393dcacd0ef696c4f9f6136e21b3be63a8
 compiler/hsSyn/Convert.hs                          | 45 +++++++++++++++++++---
 docs/users_guide/7.12.1-notes.xml                  | 12 ++++++
 libraries/template-haskell/Language/Haskell/TH.hs  |  5 ++-
 .../template-haskell/Language/Haskell/TH/Lib.hs    | 14 +++++++
 .../template-haskell/Language/Haskell/TH/Ppr.hs    |  7 ++++
 .../template-haskell/Language/Haskell/TH/Syntax.hs | 21 ++++++----
 testsuite/tests/th/TH_unresolvedInfix.hs           | 31 +++++++++++++++
 testsuite/tests/th/TH_unresolvedInfix.stdout       |  4 ++
 testsuite/tests/th/TH_unresolvedInfix_Lib.hs       | 20 ++++++++++
 9 files changed, 143 insertions(+), 16 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 217827393dcacd0ef696c4f9f6136e21b3be63a8


More information about the ghc-commits mailing list