Skip to content

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
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information