packages feed

singletons-2.5: tests/compile-and-dump/Singletons/T229.ghc86.template

Singletons/T229.hs:(0,0)-(0,0): Splicing declarations
    singletons
      [d| ___foo :: Bool -> Bool
          ___foo _ = True |]
  ======>
    ___foo :: Bool -> Bool
    ___foo _ = True
    type US___fooSym1 (a0123456789876543210 :: Bool) =
        US___foo a0123456789876543210
    instance SuppressUnusedWarnings US___fooSym0 where
      suppressUnusedWarnings = snd (((,) US___fooSym0KindInference) ())
    data US___fooSym0 :: (~>) Bool Bool
      where
        US___fooSym0KindInference :: forall a0123456789876543210
                                            arg. SameKind (Apply US___fooSym0 arg) (US___fooSym1 arg) =>
                                     US___fooSym0 a0123456789876543210
    type instance Apply US___fooSym0 a0123456789876543210 = US___foo a0123456789876543210
    type family US___foo (a :: Bool) :: Bool where
      US___foo _ = TrueSym0
    ___sfoo ::
      forall (t :: Bool). Sing t -> Sing (Apply US___fooSym0 t :: Bool)
    ___sfoo _ = STrue
    instance SingI (US___fooSym0 :: (~>) Bool Bool) where
      sing = (singFun1 @US___fooSym0) ___sfoo