Skip to content

Promotable type synonyms (or: synonyms to promoted types)

I want to use synonyms to promoted types in the same places where I can use the promoted types:

{-# LANGUAGE DataKinds, KindSignatures #-}
module PromotableTypeSynonyms where

data B = T | F
data P :: B -> *

type B' = B
data P' :: B' -> * -- using B' synonym here is currently not allowed
Trac metadata
Trac field Value
Version
Type FeatureRequest
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler (Type checker)
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information