Changes between Version 72 and Version 73 of Records/OverloadedRecordFields/Implementation


Ignore:
Timestamp:
Feb 15, 2014 2:21:31 PM (19 months ago)
Author:
adamgundry
Comment:

Extensions enabled by OverloadedRecordFields

Legend:

Unmodified
Added
Removed
Modified
  • Records/OverloadedRecordFields/Implementation

    v72 v73  
    246246* The `minf_exports` field of `ModuleInfo` is now of type `[AvailInfo]` rather than `NameSet`, as this provides accurate export information. An extra function `modInfoExportsWithSelectors` gives a list of the exported names including overloaded record selectors (whereas `modInfoExports` includes only non-mangled selectors).
    247247* The `HsExpr`, `hsRecField` and `ConDeclField` AST types have changed as described above.
     248
     249
     250== Extensions enabled by `-XOverloadedRecordFields` ==
     251
     252Turning on the `OverloadedRecordFields` extension automatically enables:
     253
     254* `DisambiguateRecordFields`, because ORF strictly generalises it
     255* `FlexibleContexts`, because `r { x :: a }` decodes to `Has r "x" a` which contains a non-variable
     256* `ConstraintKinds`, because `r { x :: a, y :: b }` decodes to a tuple constraint
    248257
    249258