Change EvNum to EvNum :: Natural -> EvLit
Currently we carry Nat
kind as an Integer internally.
Just changing the type of EvNum (and related isomorphic types like HsTyLit
etc) does pretty far. The core problem is that we should be able to output Natural literals into Core.
Also this would need change to parser, to accept only Naturals in types. Currently negative literals are caught in the renamer (due the fact that template-haskell might inject negative integers as well).
This will propagate to template-haskell, changing TyLit there as well.
Trac metadata
Trac field | Value |
---|---|
Version | 8.0.1 |
Type | FeatureRequest |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | bgamari |
Operating system | |
Architecture |