wiki:Records/OverloadedRecordFields

OverloadedRecordFields

The OverloadedRecordFields family of extensions for GHC allow multiple record datatypes to share the same field names, and make it possible for type information to disambiguate selectors. For more information, see:

Content previously on this page has been moved to the SORF page.

Issues

Add ORF to the ticket's keywords to include it in these lists.

Open Tickets:

#4479
Implement TDNR
#11228
Interaction between ORF and record pattern synonyms needs to be resolved.
#11343
Unable to infer type when using DuplicateRecordFields
#11352
Allow applying type to label
#11671
Allow labels starting with uppercase with OverloadedLabels
#13352
Strange requirement for re-exported duplicate record fields
#13438
ghci :browse does not work with DuplicateRecordFields
#14848
-XDuplicateRecordFields breaks record expression splices
#14892
Field imposters with DuplicateRecordFields and NamedFieldPuns.
#15149
Identical distinct type family fields miscompiled
#15277
Move field name resolution to the type-checker

Closed Tickets:

#11103
DuplicateRecordFields + TemplateHaskell
#11167
Fixity of field-deconstructors incorrect
#11173
Infix declarations for record fields with DuplicateRecordFields are broken
#11227
Interaction between ORF and record pattern synonyms needs to be resolved.
#11328
Auto complete in ghci shows $sel:function:Type for DuplicateRecordFields fields
#11662
Regression using NamedFieldPuns with qualified field names
#12097
DuplicateRecordFields appears not to work in GHCi
#12243
RebindableSyntax and OverloadedLabels
#12459
UnboxedTuple makes overloaded labels fail to parse
#12609
unused-top-binds wrongly warns about underscore-prefixed field names when DuplicateRecordFields enabled
#13132
Compilation fails with a panic: get_op runContT
#13847
record construction accepts local unqualified name instead of qualified imported name
#13947
GHC 8.2 gives misleading error message for out-of-scope infix type constructor
#14487
Can't Hide Field When DuplicateRecordFields Is Enabled
#14783
Initializing record with similarly named field from a different record results in warning rather than error
#14953
Panic when exporting duplicate record fields from separate modules

Code

History

The extension was implemented in 2013 as a Google Summer of Code project, by Adam Gundry under the mentorship of Simon Peyton Jones.

Last modified 6 months ago Last modified on Feb 3, 2018 3:49:46 PM