Make type import/export API Annotation friendly
At the moment an export of the form
type C(..)
is parsed by the rule
| 'type' oqtycon {% amms (mkTypeImpExp (sLL $1 $> (unLoc $2)))
[mj AnnType $1,mj AnnVal $2] }
This means that the origiinal oqtycon
loses its location which is then retained in the AnnVal
annotation.
The problem is if the oqtycon
has its own annotations, these get lost.
e.g. in
type (?)(..)
the parens annotations for (?)
get lost.
This can be solved by introducing a new IE
constructor IEVarType
, treated exactly the same as IEVar
in the rest of the processing.
Trac metadata
Trac field | Value |
---|---|
Version | 8.0.1 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler (Parser) |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | mpickering |
Operating system | |
Architecture |