[GHC] #15149: Identical distinct type family fields miscompiled
GHC
ghc-devs at haskell.org
Wed May 23 20:54:39 UTC 2018
#15149: Identical distinct type family fields miscompiled
-------------------------------------+-------------------------------------
Reporter: NeilMitchell | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone: 8.6.1
Component: Compiler | Version: 8.4.2
Resolution: | Keywords: ORF
Operating System: Unknown/Multiple | Architecture:
Type of failure: GHC rejects | Unknown/Multiple
valid program | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by adamgundry):
I think this would work, and would amount to eliminating the distinction
between `HsRecField` (containing `FieldOcc`) and `HsRecUpdField`
(containing `AmbiguousFieldOcc`). At the moment, the former is used for
record construction and pattern matching (fields always resolved by the
renamer), while the latter is used for selection and update (ambiguous
fields resolved by the type-checker). Here "ambiguous" really means
"ambiguous from the renamer's perspective, but not necessarily the type-
checker".
It would probably be simpler to defer all field resolution to the type-
checker, though we've also considered going in the opposite direction, and
moving all field resolution back to the renamer (see https://github.com
/ghc-proposals/ghc-proposals/pull/84). I'm not really sure which is
better!
There's an awkward corner if we were to defer all field resolution to the
type-checker, which is that `Ambiguous` fields are not currently supported
by `DsMeta`. That is, using them inside a TH bracket will fail with a "not
supported" error. The basic problem is that `DsMeta` works on renamed
syntax, even though it runs after type-checking. Would that be difficult
to change?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15149#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list