packages feed

singletons-1.0: tests/compile-and-dump/Singletons/T33.ghc78.template

Singletons/T33.hs:0:0: Splicing declarations
    singletons
      [d| foo :: (Bool, Bool) -> ()
          foo ~(_, _) = () |]
  ======>
    Singletons/T33.hs:(0,0)-(0,0)
    foo :: (Bool, Bool) -> ()
    foo ~(_, _) = GHC.Tuple.()
    type FooSym1 (t :: GHC.Tuple.(,) Bool Bool) = Foo t
    instance SuppressUnusedWarnings FooSym0 where
      suppressUnusedWarnings _
        = snd (GHC.Tuple.(,) FooSym0KindInference GHC.Tuple.())
    data FooSym0 (l :: TyFun (GHC.Tuple.(,) Bool Bool) GHC.Tuple.())
      = forall arg. (GHC.Types.~) (KindOf (Apply FooSym0 arg)) (KindOf (FooSym1 arg)) =>
        FooSym0KindInference
    type instance Apply FooSym0 l = FooSym1 l
    type family Foo (a :: GHC.Tuple.(,) Bool Bool) :: GHC.Tuple.() where
      Foo (GHC.Tuple.(,) z z) = Tuple0Sym0
    sFoo ::
      forall (t :: GHC.Tuple.(,) Bool Bool).
      Sing t -> Sing (Apply FooSym0 t)
    sFoo (STuple2 _ _)
      = let
          lambda ::
            forall wild
                   wild. (GHC.Types.~) t (Apply (Apply Tuple2Sym0 wild) wild) =>
            Sing (Apply FooSym0 (Apply (Apply Tuple2Sym0 wild) wild))
          lambda = STuple0
        in lambda

Singletons/T33.hs:0:0: Warning:
    Lazy pattern converted into regular pattern in promotion

Singletons/T33.hs:0:0: Warning:
    Lazy pattern converted into regular pattern during singleton generation.