[GHC] #14131: Difference between newtype and newtype instance

GHC ghc-devs at haskell.org
Tue Aug 29 18:01:18 UTC 2017


#14131: Difference between newtype and newtype instance
-------------------------------------+-------------------------------------
        Reporter:  Iceland_jack      |                Owner:  RyanGlScott
            Type:  bug               |               Status:  patch
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.2.1
      Resolution:                    |             Keywords:  TypeFamilies
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #7938, #9574,     |  Differential Rev(s):  Phab:D3872,
  #13985                             |  Phab:D3881
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by Ben Gamari <ben@…>):

 In [changeset:"895a7650a038131f3043f882c558c627abe9a61e/ghc"
 895a7650/ghc]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="895a7650a038131f3043f882c558c627abe9a61e"
 Refactor type family instance abstract syntax declarations

 This implements @simonpj's suggested refactoring of the abstract syntax
 for type/data family instances (from
 https://ghc.haskell.org/trac/ghc/ticket/14131#comment:9). This combines
 the previously separate `TyFamEqn` and `DataFamInstDecl` types into a
 single `FamEqn` datatype. This also factors the `HsImplicitBndrs` out of
 `HsTyPats` in favor of putting them just outside of `FamEqn` (as opposed
 to before, where all of the implicit binders were embedded inside of
 `TyFamEqn`/`DataFamInstDecl`). Finally, along the way I noticed that
 `dfid_fvs` and `tfid_fvs` were completely unused, so I removed them.

 Aside from some changes in parser test output, there is no change in
 behavior.

 Requires a Haddock submodule commit from my fork (at
 https://github.com/RyanGlScott/haddock/commit/815d2deb9c0222c916becccf84
 64b740c26255fd)

 Test Plan: ./validate

 Reviewers: simonpj, austin, goldfire, bgamari, alanz

 Reviewed By: bgamari

 Subscribers: mpickering, goldfire, rwbarton, thomie, simonpj

 GHC Trac Issues: #14131

 Differential Revision: https://phabricator.haskell.org/D3881
 }}}

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14131#comment:17>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list