Singletons/EmptyShowDeriving.hs:(0,0)-(0,0): Splicing declarations singletons [d| data Foo deriving instance Show Foo |] ======> data Foo deriving instance Show Foo type family Case_0123456789876543210 v_0123456789876543210 a_0123456789876543210 t where type family ShowsPrec_0123456789876543210 (a :: GHC.Types.Nat) (a :: Foo) (a :: GHC.Types.Symbol) :: GHC.Types.Symbol where ShowsPrec_0123456789876543210 _ v_0123456789876543210 a_0123456789876543210 = Apply (Case_0123456789876543210 v_0123456789876543210 a_0123456789876543210 v_0123456789876543210) a_0123456789876543210 type ShowsPrec_0123456789876543210Sym3 (t :: GHC.Types.Nat) (t :: Foo) (t :: GHC.Types.Symbol) = ShowsPrec_0123456789876543210 t t t instance SuppressUnusedWarnings ShowsPrec_0123456789876543210Sym2 where suppressUnusedWarnings = snd ((GHC.Tuple.(,) ShowsPrec_0123456789876543210Sym2KindInference) GHC.Tuple.()) data ShowsPrec_0123456789876543210Sym2 (l :: GHC.Types.Nat) (l :: Foo) (l :: TyFun GHC.Types.Symbol GHC.Types.Symbol) = forall arg. SameKind (Apply (ShowsPrec_0123456789876543210Sym2 l l) arg) (ShowsPrec_0123456789876543210Sym3 l l arg) => ShowsPrec_0123456789876543210Sym2KindInference type instance Apply (ShowsPrec_0123456789876543210Sym2 l l) l = ShowsPrec_0123456789876543210 l l l instance SuppressUnusedWarnings ShowsPrec_0123456789876543210Sym1 where suppressUnusedWarnings = snd ((GHC.Tuple.(,) ShowsPrec_0123456789876543210Sym1KindInference) GHC.Tuple.()) data ShowsPrec_0123456789876543210Sym1 (l :: GHC.Types.Nat) (l :: TyFun Foo (TyFun GHC.Types.Symbol GHC.Types.Symbol -> GHC.Types.Type)) = forall arg. SameKind (Apply (ShowsPrec_0123456789876543210Sym1 l) arg) (ShowsPrec_0123456789876543210Sym2 l arg) => ShowsPrec_0123456789876543210Sym1KindInference type instance Apply (ShowsPrec_0123456789876543210Sym1 l) l = ShowsPrec_0123456789876543210Sym2 l l instance SuppressUnusedWarnings ShowsPrec_0123456789876543210Sym0 where suppressUnusedWarnings = snd ((GHC.Tuple.(,) ShowsPrec_0123456789876543210Sym0KindInference) GHC.Tuple.()) data ShowsPrec_0123456789876543210Sym0 (l :: TyFun GHC.Types.Nat (TyFun Foo (TyFun GHC.Types.Symbol GHC.Types.Symbol -> GHC.Types.Type) -> GHC.Types.Type)) = forall arg. SameKind (Apply ShowsPrec_0123456789876543210Sym0 arg) (ShowsPrec_0123456789876543210Sym1 arg) => ShowsPrec_0123456789876543210Sym0KindInference type instance Apply ShowsPrec_0123456789876543210Sym0 l = ShowsPrec_0123456789876543210Sym1 l instance PShow Foo where type ShowsPrec a a a = Apply (Apply (Apply ShowsPrec_0123456789876543210Sym0 a) a) a data instance Sing (z :: Foo) type SFoo = (Sing :: Foo -> GHC.Types.Type) instance SingKind Foo where type Demote Foo = Foo fromSing x = case x of toSing x = SomeSing (case x of) instance SShow Foo where sShowsPrec :: forall (t1 :: GHC.Types.Nat) (t2 :: Foo) (t3 :: GHC.Types.Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun GHC.Types.Nat (TyFun Foo (TyFun GHC.Types.Symbol GHC.Types.Symbol -> GHC.Types.Type) -> GHC.Types.Type) -> GHC.Types.Type) t1) t2) t3) sShowsPrec _ (sV_0123456789876543210 :: Sing v_0123456789876543210) (sA_0123456789876543210 :: Sing a_0123456789876543210) = (applySing (case sV_0123456789876543210 of :: Sing (Case_0123456789876543210 v_0123456789876543210 a_0123456789876543210 v_0123456789876543210))) sA_0123456789876543210 instance Data.Singletons.ShowSing.ShowSing Foo where Data.Singletons.ShowSing.showsSingPrec _ v_0123456789876543210 = case v_0123456789876543210 of instance Show (Sing (z :: Foo)) where showsPrec = Data.Singletons.ShowSing.showsSingPrec