summaryrefslogtreecommitdiff
path: root/compiler/vectorise
diff options
context:
space:
mode:
authorAdam Gundry <adam@well-typed.com>2015-12-11 22:43:26 +0100
committerBen Gamari <ben@smart-cactus.org>2015-12-11 22:44:36 +0100
commit6e56ac58a6905197412d58e32792a04a63b94d7e (patch)
treea204c6ffc3b72c35ad4b44292acdd7a4994d77b0 /compiler/vectorise
parentceaf0f4683a3e0ba85ae420956cfc394824e9a38 (diff)
downloadhaskell-6e56ac58a6905197412d58e32792a04a63b94d7e.tar.gz
Fix infix record field fixity (#11167 and #11173).
This extends D1585 with proper support for infix duplicate record fields. In particular, it is now possible to declare record fields as infix in a module for which `DuplicateRecordFields` is enabled, fixity is looked up correctly and a readable (although unpleasant) error message is generated if multiple fields with different fixities are in scope. As a bonus, `DEPRECATED` and `WARNING` pragmas now work for duplicate record fields. The pragma applies to all fields with the given label. In addition, a couple of minor `DuplicateRecordFields` bugs, which were pinpointed by the `T11167_ambig` test case, are fixed by this patch: - Ambiguous infix fields can now be disambiguated by putting a type signature on the first argument - Polymorphic type constructor signatures (such as `ContT () IO a` in `T11167_ambig`) now work for disambiguation Parts of this patch are from D1585 authored by @KaneTW. Test Plan: New tests added. Reviewers: KaneTW, bgamari, austin Reviewed By: bgamari Subscribers: thomie, hvr Differential Revision: https://phabricator.haskell.org/D1600 GHC Trac Issues: #11167, #11173
Diffstat (limited to 'compiler/vectorise')
0 files changed, 0 insertions, 0 deletions