1 2 3 4 5 6 7 8 9 10
{-# LANGUAGE GADTs #-} module T3638 where data T a where TInt :: T Int foo :: T Int -> Int foo TInt = 0 {-# RULES "foo" forall x. foo x = case x of { TInt -> 0 } #-}