1 2 3 4 5 6 7 8 9 10 11
{-# LANGUAGE GADTs, PatternSynonyms #-} module T10997a where data Exp ty where LitB :: Bool -> Exp Bool pattern Tru :: () => b ~ Bool => Exp b pattern Tru = LitB True