Namespacing for fixity signatures (#14032)
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