Skip to content

Namespacing for fixity signatures (#14032)

Andrei Borzenkov requested to merge wip/sand-witch/infix-type-data into master

This patch implements a part of GHC proposal #65 about fixity signatures

Namespace specifiers were added to syntax of fixity signatures:

- sigdecl ::= infix prec ops | ...
+ sigdecl ::= infix prec namespace_spec ops | ...

To preserve namespace during renaming MiniFixityEnv type now has separate FastStringEnv fields for names that should be on the term level and for name that should be on the type level.

makeMiniFixityEnv function was changed to fill MiniFixityEnv in the right way:

  • signatures without namespace specifiers fill both fields
  • signatures with 'data' specifier fill data field only
  • signatures with 'type' specifier fill type field only

Was added helper function lookupMiniFixityEnv that takes care about looking for a name in an appropriate namespace.

Haddock MR can be found here: haddock!47 (merged)

Edited by Andrei Borzenkov

Merge request reports