[GHC] #12942: Add infix flag for class and data declarations
GHC
ghc-devs at haskell.org
Mon Dec 12 18:51:06 UTC 2016
#12942: Add infix flag for class and data declarations
-------------------------------------+-------------------------------------
Reporter: alanz | Owner: alanz
Type: task | Status: patch
Priority: normal | Milestone: 8.2.1
Component: Compiler | Version: 8.0.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: #3384 | Differential Rev(s): Phab:D2828
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Alan Zimmerman <alan.zimm@…>):
In [changeset:"8f6d241a74efa6f6280689a9b14c36c6a9f4c231/ghc"
8f6d241a/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="8f6d241a74efa6f6280689a9b14c36c6a9f4c231"
Add infix flag for class and data declarations
Summary:
At the moment, data and type declarations using infix formatting produce
the
same AST as those using prefix.
So
type a ++ b = c
and
type (++) a b = c
cannot be distinguished in the parsed source, without looking at the
OccName
details of the constructor being defined.
Having access to the OccName requires an additional constraint which
explodes
out over the entire AST because of its recursive definitions.
In keeping with moving the parsed source to more directly reflect the
source
code as parsed, add a specific flag to the declaration to indicate the
fixity,
as used in a Match now too.
Note: this flag is to capture the fixity used for the lexical definition
of the
type, primarily for use by ppr and ghc-exactprint.
Updates haddock submodule.
Test Plan: ./validate
Reviewers: mpickering, goldfire, bgamari, austin
Reviewed By: mpickering
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D2828
GHC Trac Issues: #12942
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12942#comment:10>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list