1 2 3 4 5 6 7 8 9
{-# LANGUAGE TypeInType #-} module T12081 where data Nat = Z | S Nat class C (n :: Nat) where type T n :: Nat f :: (a :: T n)