Promote/Newtypes.hs:0:0: Splicing declarations promote [d| newtype Foo = Foo Nat deriving (Eq) newtype Bar = Bar {unBar :: Nat} |] ======> Promote/Newtypes.hs:(0,0)-(0,0) newtype Foo = Foo Nat deriving (Eq) newtype Bar = Bar {unBar :: Nat} type UnBarSym1 (t :: Bar) = UnBar t instance SuppressUnusedWarnings UnBarSym0 where suppressUnusedWarnings _ = snd (GHC.Tuple.(,) UnBarSym0KindInference GHC.Tuple.()) data UnBarSym0 (l :: TyFun Bar Nat) = forall arg. KindOf (Apply UnBarSym0 arg) ~ KindOf (UnBarSym1 arg) => UnBarSym0KindInference type instance Apply UnBarSym0 l = UnBarSym1 l type family UnBar (a :: Bar) :: Nat where UnBar (Bar field) = field type family Equals_0123456789 (a :: Foo) (b :: Foo) :: Bool where Equals_0123456789 (Foo a) (Foo b) = (:==) a b Equals_0123456789 (a :: Foo) (b :: Foo) = FalseSym0 instance PEq (KProxy :: KProxy Foo) where type (:==) (a :: Foo) (b :: Foo) = Equals_0123456789 a b type FooSym1 (t :: Nat) = Foo t instance SuppressUnusedWarnings FooSym0 where suppressUnusedWarnings _ = snd (GHC.Tuple.(,) FooSym0KindInference GHC.Tuple.()) data FooSym0 (l :: TyFun Nat Foo) = forall arg. KindOf (Apply FooSym0 arg) ~ KindOf (FooSym1 arg) => FooSym0KindInference type instance Apply FooSym0 l = FooSym1 l type BarSym1 (t :: Nat) = Bar t instance SuppressUnusedWarnings BarSym0 where suppressUnusedWarnings _ = snd (GHC.Tuple.(,) BarSym0KindInference GHC.Tuple.()) data BarSym0 (l :: TyFun Nat Bar) = forall arg. KindOf (Apply BarSym0 arg) ~ KindOf (BarSym1 arg) => BarSym0KindInference type instance Apply BarSym0 l = BarSym1 l