packages feed

hs-bindgen-1.0.0.0: test-artefacts/fixtures/macros/macro_in_fundecl/th.txt

-- addDependentFile test-artefacts/headers/golden/macros/macro_in_fundecl.h
-- #include <macros/macro_in_fundecl.h>
-- char hs_bindgen_d345c332b6547629 (
--   F arg1,
--   char arg2
-- )
-- {
--   return (quux)(arg1, arg2);
-- }
-- C *hs_bindgen_195036c94aad554b (
--   float arg1,
--   C *arg2
-- )
-- {
--   return (wam)(arg1, arg2);
-- }
-- char *hs_bindgen_a40b504a8f7c1d11 (
--   float arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return (foo1)(arg1, arg2);
-- }
-- char *hs_bindgen_83392129a2035c99 (
--   F arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return (foo2)(arg1, arg2);
-- }
-- C *hs_bindgen_0c7f4bce7905d355 (
--   float arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return (foo3)(arg1, arg2);
-- }
-- signed int (*hs_bindgen_3471ca0525deb2c0 (
--   signed long arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return (bar1)(arg1);
-- }
-- signed int (*hs_bindgen_d5a4af88f772ff72 (
--   L arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return (bar2)(arg1);
-- }
-- signed int (*hs_bindgen_b289d62136acab77 (
--   signed long arg1
-- )) (
--   S arg1
-- )
-- {
--   return (bar3)(arg1);
-- }
-- I (*hs_bindgen_2b5b36cf49f0e40e (
--   signed long arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return (bar4)(arg1);
-- }
-- signed int (*hs_bindgen_b56f5f3515f3cc33 (
--   signed int const arg1
-- ))[2][3]
-- {
--   return (baz1)(arg1);
-- }
-- signed int (*hs_bindgen_0b9b2e4d1699b6f3 (
--   I const arg1
-- ))[2][3]
-- {
--   return (baz2)(arg1);
-- }
-- I (*hs_bindgen_459eabcbd019687c (
--   signed int const arg1
-- ))[2][3]
-- {
--   return (baz3)(arg1);
-- }
-- I hs_bindgen_7ae4ab0ad4fb8cad (void)
-- {
--   return (no_args_no_void)();
-- }
-- char hs_bindgen_ab9081efcd629826 (
--   F arg1,
--   char arg2
-- )
-- {
--   return (quux)(arg1, arg2);
-- }
-- C *hs_bindgen_7db4d5f10d9904d8 (
--   float arg1,
--   C *arg2
-- )
-- {
--   return (wam)(arg1, arg2);
-- }
-- char *hs_bindgen_18401e906d384fd5 (
--   float arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return (foo1)(arg1, arg2);
-- }
-- char *hs_bindgen_1e16ebe63a290ff6 (
--   F arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return (foo2)(arg1, arg2);
-- }
-- C *hs_bindgen_091043692da958ac (
--   float arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return (foo3)(arg1, arg2);
-- }
-- signed int (*hs_bindgen_cf4fa39c5b4ef431 (
--   signed long arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return (bar1)(arg1);
-- }
-- signed int (*hs_bindgen_9092ebfb46f7f31b (
--   L arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return (bar2)(arg1);
-- }
-- signed int (*hs_bindgen_a5e6607b472003eb (
--   signed long arg1
-- )) (
--   S arg1
-- )
-- {
--   return (bar3)(arg1);
-- }
-- I (*hs_bindgen_050bd8903c7b13dd (
--   signed long arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return (bar4)(arg1);
-- }
-- signed int (*hs_bindgen_f378b374e8c8c095 (
--   signed int const arg1
-- ))[2][3]
-- {
--   return (baz1)(arg1);
-- }
-- signed int (*hs_bindgen_27cf571d08ac8c04 (
--   I const arg1
-- ))[2][3]
-- {
--   return (baz2)(arg1);
-- }
-- I (*hs_bindgen_c4035ef23b908e27 (
--   signed int const arg1
-- ))[2][3]
-- {
--   return (baz3)(arg1);
-- }
-- I hs_bindgen_77a9149f03b2767f (void)
-- {
--   return (no_args_no_void)();
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_quux */
-- __attribute__ ((const))
-- char (*hs_bindgen_930b4f8122942dae (void)) (
--   F arg1,
--   char arg2
-- )
-- {
--   return &quux;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_wam */
-- __attribute__ ((const))
-- C *(*hs_bindgen_31f433dd4aceda85 (void)) (
--   float arg1,
--   C *arg2
-- )
-- {
--   return &wam;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_foo1 */
-- __attribute__ ((const))
-- char *(*hs_bindgen_8d7a85b3867041bf (void)) (
--   float arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return &foo1;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_foo2 */
-- __attribute__ ((const))
-- char *(*hs_bindgen_c9dcd020e5be4af9 (void)) (
--   F arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return &foo2;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_foo3 */
-- __attribute__ ((const))
-- C *(*hs_bindgen_c2295c3f61edf4e7 (void)) (
--   float arg1,
--   signed int (*arg2) (
--   signed int arg1
-- )
-- )
-- {
--   return &foo3;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_bar1 */
-- __attribute__ ((const))
-- signed int (*(*hs_bindgen_d9b2e6e188ecbfea (void)) (
--   signed long arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return &bar1;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_bar2 */
-- __attribute__ ((const))
-- signed int (*(*hs_bindgen_111db9707ae2a631 (void)) (
--   L arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return &bar2;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_bar3 */
-- __attribute__ ((const))
-- signed int (*(*hs_bindgen_00996e2c7c9e793b (void)) (
--   signed long arg1
-- )) (
--   S arg1
-- )
-- {
--   return &bar3;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_bar4 */
-- __attribute__ ((const))
-- I (*(*hs_bindgen_aa46ba685e4693da (void)) (
--   signed long arg1
-- )) (
--   signed short arg1
-- )
-- {
--   return &bar4;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_baz1 */
-- __attribute__ ((const))
-- signed int (*(*hs_bindgen_86b147342f608069 (void)) (
--   signed int const arg1
-- ))[2][3]
-- {
--   return &baz1;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_baz2 */
-- __attribute__ ((const))
-- signed int (*(*hs_bindgen_a7194966e4f375df (void)) (
--   I const arg1
-- ))[2][3]
-- {
--   return &baz2;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_baz3 */
-- __attribute__ ((const))
-- I (*(*hs_bindgen_cd69bb91c3e6d7ea (void)) (
--   signed int const arg1
-- ))[2][3]
-- {
--   return &baz3;
-- }
-- /* test_macrosmacro_in_fundecl_Example_get_no_args_no_void */
-- __attribute__ ((const))
-- I (*hs_bindgen_d5b5e70d96cc6b8d (void)) (void)
-- {
--   return &no_args_no_void;
-- }
{-| __C declaration:__ @macro I@

    __defined at:__ @macros\/macro_in_fundecl.h 5:9@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
newtype I
    = I {unwrapI :: CInt}
    deriving stock (Eq, Generic, Ord, Read, Show)
    deriving newtype (Bitfield,
                      Bits,
                      Bounded,
                      Enum,
                      FiniteBits,
                      HasFFIType,
                      Integral,
                      Ix,
                      Num,
                      Prim,
                      ReadRaw,
                      Real,
                      StaticSize,
                      Storable,
                      WriteRaw)
instance (~) ty CInt => HasField "unwrapI" I ty
    where hasField = \x_0 -> (\y_1 -> I{unwrapI = y_1},
                              getField @"unwrapI" x_0)
instance (~) ty CInt => HasField "unwrapI" (Ptr I) (Ptr ty)
    where getField = fromPtr (Proxy @"unwrapI")
instance HasCField I "unwrapI"
    where type CFieldType I "unwrapI" = CInt
          offset# = \_ -> \_ -> 0
{-| __C declaration:__ @macro C@

    __defined at:__ @macros\/macro_in_fundecl.h 6:9@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
newtype C
    = C {unwrapC :: CChar}
    deriving stock (Eq, Generic, Ord, Read, Show)
    deriving newtype (Bitfield,
                      Bits,
                      Bounded,
                      Enum,
                      FiniteBits,
                      HasFFIType,
                      Integral,
                      Ix,
                      Num,
                      Prim,
                      ReadRaw,
                      Real,
                      StaticSize,
                      Storable,
                      WriteRaw)
instance (~) ty CChar => HasField "unwrapC" C ty
    where hasField = \x_0 -> (\y_1 -> C{unwrapC = y_1},
                              getField @"unwrapC" x_0)
instance (~) ty CChar => HasField "unwrapC" (Ptr C) (Ptr ty)
    where getField = fromPtr (Proxy @"unwrapC")
instance HasCField C "unwrapC"
    where type CFieldType C "unwrapC" = CChar
          offset# = \_ -> \_ -> 0
{-| __C declaration:__ @macro F@

    __defined at:__ @macros\/macro_in_fundecl.h 7:9@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
newtype F
    = F {unwrapF :: CFloat}
    deriving stock (Eq, Generic, Ord, Read, Show)
    deriving newtype (Enum,
                      Floating,
                      Fractional,
                      HasFFIType,
                      Num,
                      Prim,
                      ReadRaw,
                      Real,
                      RealFloat,
                      RealFrac,
                      StaticSize,
                      Storable,
                      WriteRaw)
instance (~) ty CFloat => HasField "unwrapF" F ty
    where hasField = \x_0 -> (\y_1 -> F{unwrapF = y_1},
                              getField @"unwrapF" x_0)
instance (~) ty CFloat => HasField "unwrapF" (Ptr F) (Ptr ty)
    where getField = fromPtr (Proxy @"unwrapF")
instance HasCField F "unwrapF"
    where type CFieldType F "unwrapF" = CFloat
          offset# = \_ -> \_ -> 0
{-| __C declaration:__ @macro L@

    __defined at:__ @macros\/macro_in_fundecl.h 8:9@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
newtype L
    = L {unwrapL :: CLong}
    deriving stock (Eq, Generic, Ord, Read, Show)
    deriving newtype (Bitfield,
                      Bits,
                      Bounded,
                      Enum,
                      FiniteBits,
                      HasFFIType,
                      Integral,
                      Ix,
                      Num,
                      Prim,
                      ReadRaw,
                      Real,
                      StaticSize,
                      Storable,
                      WriteRaw)
instance (~) ty CLong => HasField "unwrapL" L ty
    where hasField = \x_0 -> (\y_1 -> L{unwrapL = y_1},
                              getField @"unwrapL" x_0)
instance (~) ty CLong => HasField "unwrapL" (Ptr L) (Ptr ty)
    where getField = fromPtr (Proxy @"unwrapL")
instance HasCField L "unwrapL"
    where type CFieldType L "unwrapL" = CLong
          offset# = \_ -> \_ -> 0
{-| __C declaration:__ @macro S@

    __defined at:__ @macros\/macro_in_fundecl.h 9:9@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
newtype S
    = S {unwrapS :: CShort}
    deriving stock (Eq, Generic, Ord, Read, Show)
    deriving newtype (Bitfield,
                      Bits,
                      Bounded,
                      Enum,
                      FiniteBits,
                      HasFFIType,
                      Integral,
                      Ix,
                      Num,
                      Prim,
                      ReadRaw,
                      Real,
                      StaticSize,
                      Storable,
                      WriteRaw)
instance (~) ty CShort => HasField "unwrapS" S ty
    where hasField = \x_0 -> (\y_1 -> S{unwrapS = y_1},
                              getField @"unwrapS" x_0)
instance (~) ty CShort => HasField "unwrapS" (Ptr S) (Ptr ty)
    where getField = fromPtr (Proxy @"unwrapS")
instance HasCField S "unwrapS"
    where type CFieldType S "unwrapS" = CShort
          offset# = \_ -> \_ -> 0
-- __unique:__ @instance ToFunPtr (BG.CShort -> IO I)@
foreign import ccall safe "wrapper" hs_bindgen_03e9923d8d301cca_base ::
    CShort -> IO CInt
 -> IO (FunPtr (CShort -> IO CInt))
-- __unique:__ @instance ToFunPtr (BG.CShort -> IO I)@
hs_bindgen_03e9923d8d301cca :: (CShort -> IO I) ->
                               IO (FunPtr (CShort -> IO I))
-- __unique:__ @instance ToFunPtr (BG.CShort -> IO I)@
hs_bindgen_03e9923d8d301cca = \fun_0 -> fmap castFunPtr (hs_bindgen_03e9923d8d301cca_base (\x_1 -> fmap toFFIType (fun_0 (fromFFIType x_1))))
-- __unique:__ @instance FromFunPtr (BG.CShort -> IO I)@
foreign import ccall safe "dynamic" hs_bindgen_ee10a61bcb1a5d39_base ::
    FunPtr (CShort -> IO CInt)
 -> CShort
 -> IO CInt
-- __unique:__ @instance FromFunPtr (BG.CShort -> IO I)@
hs_bindgen_ee10a61bcb1a5d39 :: FunPtr (CShort -> IO I) ->
                               CShort -> IO I
-- __unique:__ @instance FromFunPtr (BG.CShort -> IO I)@
hs_bindgen_ee10a61bcb1a5d39 = \funPtr_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_ee10a61bcb1a5d39_base (castFunPtr funPtr_0) (toFFIType x_1))
instance ToFunPtr (CShort -> IO I)
    where toFunPtr = hs_bindgen_03e9923d8d301cca
instance FromFunPtr (CShort -> IO I)
    where fromFunPtr = hs_bindgen_ee10a61bcb1a5d39
-- __unique:__ @instance ToFunPtr (S -> IO BG.CInt)@
foreign import ccall safe "wrapper" hs_bindgen_140ec1313a27c405_base ::
    CShort -> IO CInt
 -> IO (FunPtr (CShort -> IO CInt))
-- __unique:__ @instance ToFunPtr (S -> IO BG.CInt)@
hs_bindgen_140ec1313a27c405 :: (S -> IO CInt) ->
                               IO (FunPtr (S -> IO CInt))
-- __unique:__ @instance ToFunPtr (S -> IO BG.CInt)@
hs_bindgen_140ec1313a27c405 = \fun_0 -> fmap castFunPtr (hs_bindgen_140ec1313a27c405_base (\x_1 -> fmap toFFIType (fun_0 (fromFFIType x_1))))
-- __unique:__ @instance FromFunPtr (S -> IO BG.CInt)@
foreign import ccall safe "dynamic" hs_bindgen_e86a5fa3f995e6fb_base ::
    FunPtr (CShort -> IO CInt)
 -> CShort
 -> IO CInt
-- __unique:__ @instance FromFunPtr (S -> IO BG.CInt)@
hs_bindgen_e86a5fa3f995e6fb :: FunPtr (S -> IO CInt) ->
                               S -> IO CInt
-- __unique:__ @instance FromFunPtr (S -> IO BG.CInt)@
hs_bindgen_e86a5fa3f995e6fb = \funPtr_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_e86a5fa3f995e6fb_base (castFunPtr funPtr_0) (toFFIType x_1))
instance ToFunPtr (S -> IO CInt)
    where toFunPtr = hs_bindgen_140ec1313a27c405
instance FromFunPtr (S -> IO CInt)
    where fromFunPtr = hs_bindgen_e86a5fa3f995e6fb
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_quux@
foreign import ccall safe "hs_bindgen_d345c332b6547629" hs_bindgen_d345c332b6547629_base ::
    CFloat
 -> CChar
 -> IO CChar
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_quux@
hs_bindgen_d345c332b6547629 :: F -> CChar -> IO CChar
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_quux@
hs_bindgen_d345c332b6547629 = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_d345c332b6547629_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @quux@

    __defined at:__ @macros\/macro_in_fundecl.h 12:6@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
quux_safe :: F -> CChar -> IO CChar
{-| __C declaration:__ @quux@

    __defined at:__ @macros\/macro_in_fundecl.h 12:6@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
quux_safe = hs_bindgen_d345c332b6547629
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_wam@
foreign import ccall safe "hs_bindgen_195036c94aad554b" hs_bindgen_195036c94aad554b_base ::
    CFloat
 -> Ptr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_wam@
hs_bindgen_195036c94aad554b :: CFloat -> Ptr C -> IO (Ptr C)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_wam@
hs_bindgen_195036c94aad554b = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_195036c94aad554b_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @wam@

    __defined at:__ @macros\/macro_in_fundecl.h 13:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
wam_safe :: CFloat -> Ptr C -> IO (Ptr C)
{-| __C declaration:__ @wam@

    __defined at:__ @macros\/macro_in_fundecl.h 13:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
wam_safe = hs_bindgen_195036c94aad554b
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo1@
foreign import ccall safe "hs_bindgen_a40b504a8f7c1d11" hs_bindgen_a40b504a8f7c1d11_base ::
    CFloat
 -> FunPtr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo1@
hs_bindgen_a40b504a8f7c1d11 :: CFloat ->
                               FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo1@
hs_bindgen_a40b504a8f7c1d11 = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_a40b504a8f7c1d11_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @foo1@

    __defined at:__ @macros\/macro_in_fundecl.h 16:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo1_safe :: CFloat -> FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)
{-| __C declaration:__ @foo1@

    __defined at:__ @macros\/macro_in_fundecl.h 16:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo1_safe = hs_bindgen_a40b504a8f7c1d11
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo2@
foreign import ccall safe "hs_bindgen_83392129a2035c99" hs_bindgen_83392129a2035c99_base ::
    CFloat
 -> FunPtr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo2@
hs_bindgen_83392129a2035c99 :: F ->
                               FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo2@
hs_bindgen_83392129a2035c99 = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_83392129a2035c99_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @foo2@

    __defined at:__ @macros\/macro_in_fundecl.h 17:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo2_safe :: F -> FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)
{-| __C declaration:__ @foo2@

    __defined at:__ @macros\/macro_in_fundecl.h 17:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo2_safe = hs_bindgen_83392129a2035c99
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo3@
foreign import ccall safe "hs_bindgen_0c7f4bce7905d355" hs_bindgen_0c7f4bce7905d355_base ::
    CFloat
 -> FunPtr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo3@
hs_bindgen_0c7f4bce7905d355 :: CFloat ->
                               FunPtr (CInt -> IO CInt) -> IO (Ptr C)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_foo3@
hs_bindgen_0c7f4bce7905d355 = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_0c7f4bce7905d355_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @foo3@

    __defined at:__ @macros\/macro_in_fundecl.h 18:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo3_safe :: CFloat -> FunPtr (CInt -> IO CInt) -> IO (Ptr C)
{-| __C declaration:__ @foo3@

    __defined at:__ @macros\/macro_in_fundecl.h 18:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo3_safe = hs_bindgen_0c7f4bce7905d355
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar1@
foreign import ccall safe "hs_bindgen_3471ca0525deb2c0" hs_bindgen_3471ca0525deb2c0_base ::
    CLong
 -> IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar1@
hs_bindgen_3471ca0525deb2c0 :: CLong ->
                               IO (FunPtr (CShort -> IO CInt))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar1@
hs_bindgen_3471ca0525deb2c0 = \x_0 -> fmap fromFFIType (hs_bindgen_3471ca0525deb2c0_base (toFFIType x_0))
{-| __C declaration:__ @bar1@

    __defined at:__ @macros\/macro_in_fundecl.h 21:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar1_safe :: CLong -> IO (FunPtr (CShort -> IO CInt))
{-| __C declaration:__ @bar1@

    __defined at:__ @macros\/macro_in_fundecl.h 21:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar1_safe = hs_bindgen_3471ca0525deb2c0
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar2@
foreign import ccall safe "hs_bindgen_d5a4af88f772ff72" hs_bindgen_d5a4af88f772ff72_base ::
    CLong
 -> IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar2@
hs_bindgen_d5a4af88f772ff72 :: L -> IO (FunPtr (CShort -> IO CInt))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar2@
hs_bindgen_d5a4af88f772ff72 = \x_0 -> fmap fromFFIType (hs_bindgen_d5a4af88f772ff72_base (toFFIType x_0))
{-| __C declaration:__ @bar2@

    __defined at:__ @macros\/macro_in_fundecl.h 22:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar2_safe :: L -> IO (FunPtr (CShort -> IO CInt))
{-| __C declaration:__ @bar2@

    __defined at:__ @macros\/macro_in_fundecl.h 22:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar2_safe = hs_bindgen_d5a4af88f772ff72
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar3@
foreign import ccall safe "hs_bindgen_b289d62136acab77" hs_bindgen_b289d62136acab77_base ::
    CLong
 -> IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar3@
hs_bindgen_b289d62136acab77 :: CLong -> IO (FunPtr (S -> IO CInt))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar3@
hs_bindgen_b289d62136acab77 = \x_0 -> fmap fromFFIType (hs_bindgen_b289d62136acab77_base (toFFIType x_0))
{-| __C declaration:__ @bar3@

    __defined at:__ @macros\/macro_in_fundecl.h 23:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar3_safe :: CLong -> IO (FunPtr (S -> IO CInt))
{-| __C declaration:__ @bar3@

    __defined at:__ @macros\/macro_in_fundecl.h 23:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar3_safe = hs_bindgen_b289d62136acab77
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar4@
foreign import ccall safe "hs_bindgen_2b5b36cf49f0e40e" hs_bindgen_2b5b36cf49f0e40e_base ::
    CLong
 -> IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar4@
hs_bindgen_2b5b36cf49f0e40e :: CLong ->
                               IO (FunPtr (CShort -> IO I))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_bar4@
hs_bindgen_2b5b36cf49f0e40e = \x_0 -> fmap fromFFIType (hs_bindgen_2b5b36cf49f0e40e_base (toFFIType x_0))
{-| __C declaration:__ @bar4@

    __defined at:__ @macros\/macro_in_fundecl.h 24:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar4_safe :: CLong -> IO (FunPtr (CShort -> IO I))
{-| __C declaration:__ @bar4@

    __defined at:__ @macros\/macro_in_fundecl.h 24:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar4_safe = hs_bindgen_2b5b36cf49f0e40e
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz1@
foreign import ccall safe "hs_bindgen_b56f5f3515f3cc33" hs_bindgen_b56f5f3515f3cc33_base ::
    CInt
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz1@
hs_bindgen_b56f5f3515f3cc33 :: CInt ->
                               IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz1@
hs_bindgen_b56f5f3515f3cc33 = \x_0 -> fmap fromFFIType (hs_bindgen_b56f5f3515f3cc33_base (toFFIType x_0))
{-| __C declaration:__ @baz1@

    __defined at:__ @macros\/macro_in_fundecl.h 27:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz1_safe :: CInt ->
             IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))
{-| __C declaration:__ @baz1@

    __defined at:__ @macros\/macro_in_fundecl.h 27:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz1_safe = hs_bindgen_b56f5f3515f3cc33
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz2@
foreign import ccall safe "hs_bindgen_0b9b2e4d1699b6f3" hs_bindgen_0b9b2e4d1699b6f3_base ::
    CInt
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz2@
hs_bindgen_0b9b2e4d1699b6f3 :: I ->
                               IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz2@
hs_bindgen_0b9b2e4d1699b6f3 = \x_0 -> fmap fromFFIType (hs_bindgen_0b9b2e4d1699b6f3_base (toFFIType x_0))
{-| __C declaration:__ @baz2@

    __defined at:__ @macros\/macro_in_fundecl.h 35:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz2_safe :: I -> IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))
{-| __C declaration:__ @baz2@

    __defined at:__ @macros\/macro_in_fundecl.h 35:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz2_safe = hs_bindgen_0b9b2e4d1699b6f3
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz3@
foreign import ccall safe "hs_bindgen_459eabcbd019687c" hs_bindgen_459eabcbd019687c_base ::
    CInt
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz3@
hs_bindgen_459eabcbd019687c :: CInt ->
                               IO (Ptr (ConstantArray 2 (ConstantArray 3 I)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_baz3@
hs_bindgen_459eabcbd019687c = \x_0 -> fmap fromFFIType (hs_bindgen_459eabcbd019687c_base (toFFIType x_0))
{-| __C declaration:__ @baz3@

    __defined at:__ @macros\/macro_in_fundecl.h 43:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz3_safe :: CInt -> IO (Ptr (ConstantArray 2 (ConstantArray 3 I)))
{-| __C declaration:__ @baz3@

    __defined at:__ @macros\/macro_in_fundecl.h 43:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz3_safe = hs_bindgen_459eabcbd019687c
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_no_args_no_void@
foreign import ccall safe "hs_bindgen_7ae4ab0ad4fb8cad" hs_bindgen_7ae4ab0ad4fb8cad_base ::
    IO CInt
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_no_args_no_void@
hs_bindgen_7ae4ab0ad4fb8cad :: IO I
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Safe_no_args_no_void@
hs_bindgen_7ae4ab0ad4fb8cad = fmap fromFFIType hs_bindgen_7ae4ab0ad4fb8cad_base
{-| __C declaration:__ @no_args_no_void@

    __defined at:__ @macros\/macro_in_fundecl.h 53:3@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
no_args_no_void_safe :: IO I
{-| __C declaration:__ @no_args_no_void@

    __defined at:__ @macros\/macro_in_fundecl.h 53:3@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
no_args_no_void_safe = hs_bindgen_7ae4ab0ad4fb8cad
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_quux@
foreign import ccall unsafe "hs_bindgen_ab9081efcd629826" hs_bindgen_ab9081efcd629826_base ::
    CFloat
 -> CChar
 -> IO CChar
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_quux@
hs_bindgen_ab9081efcd629826 :: F -> CChar -> IO CChar
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_quux@
hs_bindgen_ab9081efcd629826 = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_ab9081efcd629826_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @quux@

    __defined at:__ @macros\/macro_in_fundecl.h 12:6@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
quux_unsafe :: F -> CChar -> IO CChar
{-| __C declaration:__ @quux@

    __defined at:__ @macros\/macro_in_fundecl.h 12:6@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
quux_unsafe = hs_bindgen_ab9081efcd629826
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_wam@
foreign import ccall unsafe "hs_bindgen_7db4d5f10d9904d8" hs_bindgen_7db4d5f10d9904d8_base ::
    CFloat
 -> Ptr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_wam@
hs_bindgen_7db4d5f10d9904d8 :: CFloat -> Ptr C -> IO (Ptr C)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_wam@
hs_bindgen_7db4d5f10d9904d8 = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_7db4d5f10d9904d8_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @wam@

    __defined at:__ @macros\/macro_in_fundecl.h 13:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
wam_unsafe :: CFloat -> Ptr C -> IO (Ptr C)
{-| __C declaration:__ @wam@

    __defined at:__ @macros\/macro_in_fundecl.h 13:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
wam_unsafe = hs_bindgen_7db4d5f10d9904d8
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo1@
foreign import ccall unsafe "hs_bindgen_18401e906d384fd5" hs_bindgen_18401e906d384fd5_base ::
    CFloat
 -> FunPtr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo1@
hs_bindgen_18401e906d384fd5 :: CFloat ->
                               FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo1@
hs_bindgen_18401e906d384fd5 = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_18401e906d384fd5_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @foo1@

    __defined at:__ @macros\/macro_in_fundecl.h 16:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo1_unsafe :: CFloat -> FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)
{-| __C declaration:__ @foo1@

    __defined at:__ @macros\/macro_in_fundecl.h 16:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo1_unsafe = hs_bindgen_18401e906d384fd5
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo2@
foreign import ccall unsafe "hs_bindgen_1e16ebe63a290ff6" hs_bindgen_1e16ebe63a290ff6_base ::
    CFloat
 -> FunPtr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo2@
hs_bindgen_1e16ebe63a290ff6 :: F ->
                               FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo2@
hs_bindgen_1e16ebe63a290ff6 = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_1e16ebe63a290ff6_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @foo2@

    __defined at:__ @macros\/macro_in_fundecl.h 17:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo2_unsafe :: F -> FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)
{-| __C declaration:__ @foo2@

    __defined at:__ @macros\/macro_in_fundecl.h 17:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo2_unsafe = hs_bindgen_1e16ebe63a290ff6
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo3@
foreign import ccall unsafe "hs_bindgen_091043692da958ac" hs_bindgen_091043692da958ac_base ::
    CFloat
 -> FunPtr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo3@
hs_bindgen_091043692da958ac :: CFloat ->
                               FunPtr (CInt -> IO CInt) -> IO (Ptr C)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_foo3@
hs_bindgen_091043692da958ac = \x_0 -> \x_1 -> fmap fromFFIType (hs_bindgen_091043692da958ac_base (toFFIType x_0) (toFFIType x_1))
{-| __C declaration:__ @foo3@

    __defined at:__ @macros\/macro_in_fundecl.h 18:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo3_unsafe :: CFloat -> FunPtr (CInt -> IO CInt) -> IO (Ptr C)
{-| __C declaration:__ @foo3@

    __defined at:__ @macros\/macro_in_fundecl.h 18:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo3_unsafe = hs_bindgen_091043692da958ac
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar1@
foreign import ccall unsafe "hs_bindgen_cf4fa39c5b4ef431" hs_bindgen_cf4fa39c5b4ef431_base ::
    CLong
 -> IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar1@
hs_bindgen_cf4fa39c5b4ef431 :: CLong ->
                               IO (FunPtr (CShort -> IO CInt))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar1@
hs_bindgen_cf4fa39c5b4ef431 = \x_0 -> fmap fromFFIType (hs_bindgen_cf4fa39c5b4ef431_base (toFFIType x_0))
{-| __C declaration:__ @bar1@

    __defined at:__ @macros\/macro_in_fundecl.h 21:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar1_unsafe :: CLong -> IO (FunPtr (CShort -> IO CInt))
{-| __C declaration:__ @bar1@

    __defined at:__ @macros\/macro_in_fundecl.h 21:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar1_unsafe = hs_bindgen_cf4fa39c5b4ef431
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar2@
foreign import ccall unsafe "hs_bindgen_9092ebfb46f7f31b" hs_bindgen_9092ebfb46f7f31b_base ::
    CLong
 -> IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar2@
hs_bindgen_9092ebfb46f7f31b :: L -> IO (FunPtr (CShort -> IO CInt))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar2@
hs_bindgen_9092ebfb46f7f31b = \x_0 -> fmap fromFFIType (hs_bindgen_9092ebfb46f7f31b_base (toFFIType x_0))
{-| __C declaration:__ @bar2@

    __defined at:__ @macros\/macro_in_fundecl.h 22:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar2_unsafe :: L -> IO (FunPtr (CShort -> IO CInt))
{-| __C declaration:__ @bar2@

    __defined at:__ @macros\/macro_in_fundecl.h 22:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar2_unsafe = hs_bindgen_9092ebfb46f7f31b
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar3@
foreign import ccall unsafe "hs_bindgen_a5e6607b472003eb" hs_bindgen_a5e6607b472003eb_base ::
    CLong
 -> IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar3@
hs_bindgen_a5e6607b472003eb :: CLong -> IO (FunPtr (S -> IO CInt))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar3@
hs_bindgen_a5e6607b472003eb = \x_0 -> fmap fromFFIType (hs_bindgen_a5e6607b472003eb_base (toFFIType x_0))
{-| __C declaration:__ @bar3@

    __defined at:__ @macros\/macro_in_fundecl.h 23:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar3_unsafe :: CLong -> IO (FunPtr (S -> IO CInt))
{-| __C declaration:__ @bar3@

    __defined at:__ @macros\/macro_in_fundecl.h 23:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar3_unsafe = hs_bindgen_a5e6607b472003eb
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar4@
foreign import ccall unsafe "hs_bindgen_050bd8903c7b13dd" hs_bindgen_050bd8903c7b13dd_base ::
    CLong
 -> IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar4@
hs_bindgen_050bd8903c7b13dd :: CLong ->
                               IO (FunPtr (CShort -> IO I))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_bar4@
hs_bindgen_050bd8903c7b13dd = \x_0 -> fmap fromFFIType (hs_bindgen_050bd8903c7b13dd_base (toFFIType x_0))
{-| __C declaration:__ @bar4@

    __defined at:__ @macros\/macro_in_fundecl.h 24:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar4_unsafe :: CLong -> IO (FunPtr (CShort -> IO I))
{-| __C declaration:__ @bar4@

    __defined at:__ @macros\/macro_in_fundecl.h 24:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar4_unsafe = hs_bindgen_050bd8903c7b13dd
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz1@
foreign import ccall unsafe "hs_bindgen_f378b374e8c8c095" hs_bindgen_f378b374e8c8c095_base ::
    CInt
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz1@
hs_bindgen_f378b374e8c8c095 :: CInt ->
                               IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz1@
hs_bindgen_f378b374e8c8c095 = \x_0 -> fmap fromFFIType (hs_bindgen_f378b374e8c8c095_base (toFFIType x_0))
{-| __C declaration:__ @baz1@

    __defined at:__ @macros\/macro_in_fundecl.h 27:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz1_unsafe :: CInt ->
               IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))
{-| __C declaration:__ @baz1@

    __defined at:__ @macros\/macro_in_fundecl.h 27:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz1_unsafe = hs_bindgen_f378b374e8c8c095
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz2@
foreign import ccall unsafe "hs_bindgen_27cf571d08ac8c04" hs_bindgen_27cf571d08ac8c04_base ::
    CInt
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz2@
hs_bindgen_27cf571d08ac8c04 :: I ->
                               IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz2@
hs_bindgen_27cf571d08ac8c04 = \x_0 -> fmap fromFFIType (hs_bindgen_27cf571d08ac8c04_base (toFFIType x_0))
{-| __C declaration:__ @baz2@

    __defined at:__ @macros\/macro_in_fundecl.h 35:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz2_unsafe :: I ->
               IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))
{-| __C declaration:__ @baz2@

    __defined at:__ @macros\/macro_in_fundecl.h 35:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz2_unsafe = hs_bindgen_27cf571d08ac8c04
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz3@
foreign import ccall unsafe "hs_bindgen_c4035ef23b908e27" hs_bindgen_c4035ef23b908e27_base ::
    CInt
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz3@
hs_bindgen_c4035ef23b908e27 :: CInt ->
                               IO (Ptr (ConstantArray 2 (ConstantArray 3 I)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_baz3@
hs_bindgen_c4035ef23b908e27 = \x_0 -> fmap fromFFIType (hs_bindgen_c4035ef23b908e27_base (toFFIType x_0))
{-| __C declaration:__ @baz3@

    __defined at:__ @macros\/macro_in_fundecl.h 43:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz3_unsafe :: CInt ->
               IO (Ptr (ConstantArray 2 (ConstantArray 3 I)))
{-| __C declaration:__ @baz3@

    __defined at:__ @macros\/macro_in_fundecl.h 43:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz3_unsafe = hs_bindgen_c4035ef23b908e27
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_no_args_no_void@
foreign import ccall unsafe "hs_bindgen_77a9149f03b2767f" hs_bindgen_77a9149f03b2767f_base ::
    IO CInt
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_no_args_no_void@
hs_bindgen_77a9149f03b2767f :: IO I
-- __unique:__ @test_macrosmacro_in_fundecl_Example_Unsafe_no_args_no_void@
hs_bindgen_77a9149f03b2767f = fmap fromFFIType hs_bindgen_77a9149f03b2767f_base
{-| __C declaration:__ @no_args_no_void@

    __defined at:__ @macros\/macro_in_fundecl.h 53:3@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
no_args_no_void_unsafe :: IO I
{-| __C declaration:__ @no_args_no_void@

    __defined at:__ @macros\/macro_in_fundecl.h 53:3@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
no_args_no_void_unsafe = hs_bindgen_77a9149f03b2767f
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_quux@
foreign import ccall unsafe "hs_bindgen_930b4f8122942dae" hs_bindgen_930b4f8122942dae_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_quux@
hs_bindgen_930b4f8122942dae :: IO (FunPtr (F -> CChar -> IO CChar))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_quux@
hs_bindgen_930b4f8122942dae = fmap fromFFIType hs_bindgen_930b4f8122942dae_base
{-# NOINLINE quux_funptr #-}
{-| __C declaration:__ @quux@

    __defined at:__ @macros\/macro_in_fundecl.h 12:6@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
quux_funptr :: FunPtr (F -> CChar -> IO CChar)
{-| __C declaration:__ @quux@

    __defined at:__ @macros\/macro_in_fundecl.h 12:6@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
quux_funptr = unsafePerformIO hs_bindgen_930b4f8122942dae
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_wam@
foreign import ccall unsafe "hs_bindgen_31f433dd4aceda85" hs_bindgen_31f433dd4aceda85_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_wam@
hs_bindgen_31f433dd4aceda85 :: IO (FunPtr (CFloat ->
                                           Ptr C -> IO (Ptr C)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_wam@
hs_bindgen_31f433dd4aceda85 = fmap fromFFIType hs_bindgen_31f433dd4aceda85_base
{-# NOINLINE wam_funptr #-}
{-| __C declaration:__ @wam@

    __defined at:__ @macros\/macro_in_fundecl.h 13:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
wam_funptr :: FunPtr (CFloat -> Ptr C -> IO (Ptr C))
{-| __C declaration:__ @wam@

    __defined at:__ @macros\/macro_in_fundecl.h 13:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
wam_funptr = unsafePerformIO hs_bindgen_31f433dd4aceda85
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo1@
foreign import ccall unsafe "hs_bindgen_8d7a85b3867041bf" hs_bindgen_8d7a85b3867041bf_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo1@
hs_bindgen_8d7a85b3867041bf :: IO (FunPtr (CFloat ->
                                           FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo1@
hs_bindgen_8d7a85b3867041bf = fmap fromFFIType hs_bindgen_8d7a85b3867041bf_base
{-# NOINLINE foo1_funptr #-}
{-| __C declaration:__ @foo1@

    __defined at:__ @macros\/macro_in_fundecl.h 16:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo1_funptr :: FunPtr (CFloat ->
                       FunPtr (CInt -> IO CInt) -> IO (Ptr CChar))
{-| __C declaration:__ @foo1@

    __defined at:__ @macros\/macro_in_fundecl.h 16:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo1_funptr = unsafePerformIO hs_bindgen_8d7a85b3867041bf
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo2@
foreign import ccall unsafe "hs_bindgen_c9dcd020e5be4af9" hs_bindgen_c9dcd020e5be4af9_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo2@
hs_bindgen_c9dcd020e5be4af9 :: IO (FunPtr (F ->
                                           FunPtr (CInt -> IO CInt) -> IO (Ptr CChar)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo2@
hs_bindgen_c9dcd020e5be4af9 = fmap fromFFIType hs_bindgen_c9dcd020e5be4af9_base
{-# NOINLINE foo2_funptr #-}
{-| __C declaration:__ @foo2@

    __defined at:__ @macros\/macro_in_fundecl.h 17:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo2_funptr :: FunPtr (F ->
                       FunPtr (CInt -> IO CInt) -> IO (Ptr CChar))
{-| __C declaration:__ @foo2@

    __defined at:__ @macros\/macro_in_fundecl.h 17:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo2_funptr = unsafePerformIO hs_bindgen_c9dcd020e5be4af9
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo3@
foreign import ccall unsafe "hs_bindgen_c2295c3f61edf4e7" hs_bindgen_c2295c3f61edf4e7_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo3@
hs_bindgen_c2295c3f61edf4e7 :: IO (FunPtr (CFloat ->
                                           FunPtr (CInt -> IO CInt) -> IO (Ptr C)))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_foo3@
hs_bindgen_c2295c3f61edf4e7 = fmap fromFFIType hs_bindgen_c2295c3f61edf4e7_base
{-# NOINLINE foo3_funptr #-}
{-| __C declaration:__ @foo3@

    __defined at:__ @macros\/macro_in_fundecl.h 18:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo3_funptr :: FunPtr (CFloat ->
                       FunPtr (CInt -> IO CInt) -> IO (Ptr C))
{-| __C declaration:__ @foo3@

    __defined at:__ @macros\/macro_in_fundecl.h 18:4@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
foo3_funptr = unsafePerformIO hs_bindgen_c2295c3f61edf4e7
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar1@
foreign import ccall unsafe "hs_bindgen_d9b2e6e188ecbfea" hs_bindgen_d9b2e6e188ecbfea_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar1@
hs_bindgen_d9b2e6e188ecbfea :: IO (FunPtr (CLong ->
                                           IO (FunPtr (CShort -> IO CInt))))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar1@
hs_bindgen_d9b2e6e188ecbfea = fmap fromFFIType hs_bindgen_d9b2e6e188ecbfea_base
{-# NOINLINE bar1_funptr #-}
{-| __C declaration:__ @bar1@

    __defined at:__ @macros\/macro_in_fundecl.h 21:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar1_funptr :: FunPtr (CLong -> IO (FunPtr (CShort -> IO CInt)))
{-| __C declaration:__ @bar1@

    __defined at:__ @macros\/macro_in_fundecl.h 21:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar1_funptr = unsafePerformIO hs_bindgen_d9b2e6e188ecbfea
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar2@
foreign import ccall unsafe "hs_bindgen_111db9707ae2a631" hs_bindgen_111db9707ae2a631_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar2@
hs_bindgen_111db9707ae2a631 :: IO (FunPtr (L ->
                                           IO (FunPtr (CShort -> IO CInt))))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar2@
hs_bindgen_111db9707ae2a631 = fmap fromFFIType hs_bindgen_111db9707ae2a631_base
{-# NOINLINE bar2_funptr #-}
{-| __C declaration:__ @bar2@

    __defined at:__ @macros\/macro_in_fundecl.h 22:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar2_funptr :: FunPtr (L -> IO (FunPtr (CShort -> IO CInt)))
{-| __C declaration:__ @bar2@

    __defined at:__ @macros\/macro_in_fundecl.h 22:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar2_funptr = unsafePerformIO hs_bindgen_111db9707ae2a631
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar3@
foreign import ccall unsafe "hs_bindgen_00996e2c7c9e793b" hs_bindgen_00996e2c7c9e793b_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar3@
hs_bindgen_00996e2c7c9e793b :: IO (FunPtr (CLong ->
                                           IO (FunPtr (S -> IO CInt))))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar3@
hs_bindgen_00996e2c7c9e793b = fmap fromFFIType hs_bindgen_00996e2c7c9e793b_base
{-# NOINLINE bar3_funptr #-}
{-| __C declaration:__ @bar3@

    __defined at:__ @macros\/macro_in_fundecl.h 23:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar3_funptr :: FunPtr (CLong -> IO (FunPtr (S -> IO CInt)))
{-| __C declaration:__ @bar3@

    __defined at:__ @macros\/macro_in_fundecl.h 23:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar3_funptr = unsafePerformIO hs_bindgen_00996e2c7c9e793b
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar4@
foreign import ccall unsafe "hs_bindgen_aa46ba685e4693da" hs_bindgen_aa46ba685e4693da_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar4@
hs_bindgen_aa46ba685e4693da :: IO (FunPtr (CLong ->
                                           IO (FunPtr (CShort -> IO I))))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_bar4@
hs_bindgen_aa46ba685e4693da = fmap fromFFIType hs_bindgen_aa46ba685e4693da_base
{-# NOINLINE bar4_funptr #-}
{-| __C declaration:__ @bar4@

    __defined at:__ @macros\/macro_in_fundecl.h 24:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar4_funptr :: FunPtr (CLong -> IO (FunPtr (CShort -> IO I)))
{-| __C declaration:__ @bar4@

    __defined at:__ @macros\/macro_in_fundecl.h 24:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
bar4_funptr = unsafePerformIO hs_bindgen_aa46ba685e4693da
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz1@
foreign import ccall unsafe "hs_bindgen_86b147342f608069" hs_bindgen_86b147342f608069_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz1@
hs_bindgen_86b147342f608069 :: IO (FunPtr (CInt ->
                                           IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz1@
hs_bindgen_86b147342f608069 = fmap fromFFIType hs_bindgen_86b147342f608069_base
{-# NOINLINE baz1_funptr #-}
{-| __C declaration:__ @baz1@

    __defined at:__ @macros\/macro_in_fundecl.h 27:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz1_funptr :: FunPtr (CInt ->
                       IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt))))
{-| __C declaration:__ @baz1@

    __defined at:__ @macros\/macro_in_fundecl.h 27:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz1_funptr = unsafePerformIO hs_bindgen_86b147342f608069
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz2@
foreign import ccall unsafe "hs_bindgen_a7194966e4f375df" hs_bindgen_a7194966e4f375df_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz2@
hs_bindgen_a7194966e4f375df :: IO (FunPtr (I ->
                                           IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt)))))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz2@
hs_bindgen_a7194966e4f375df = fmap fromFFIType hs_bindgen_a7194966e4f375df_base
{-# NOINLINE baz2_funptr #-}
{-| __C declaration:__ @baz2@

    __defined at:__ @macros\/macro_in_fundecl.h 35:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz2_funptr :: FunPtr (I ->
                       IO (Ptr (ConstantArray 2 (ConstantArray 3 CInt))))
{-| __C declaration:__ @baz2@

    __defined at:__ @macros\/macro_in_fundecl.h 35:7@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz2_funptr = unsafePerformIO hs_bindgen_a7194966e4f375df
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz3@
foreign import ccall unsafe "hs_bindgen_cd69bb91c3e6d7ea" hs_bindgen_cd69bb91c3e6d7ea_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz3@
hs_bindgen_cd69bb91c3e6d7ea :: IO (FunPtr (CInt ->
                                           IO (Ptr (ConstantArray 2 (ConstantArray 3 I)))))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_baz3@
hs_bindgen_cd69bb91c3e6d7ea = fmap fromFFIType hs_bindgen_cd69bb91c3e6d7ea_base
{-# NOINLINE baz3_funptr #-}
{-| __C declaration:__ @baz3@

    __defined at:__ @macros\/macro_in_fundecl.h 43:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz3_funptr :: FunPtr (CInt ->
                       IO (Ptr (ConstantArray 2 (ConstantArray 3 I))))
{-| __C declaration:__ @baz3@

    __defined at:__ @macros\/macro_in_fundecl.h 43:5@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
baz3_funptr = unsafePerformIO hs_bindgen_cd69bb91c3e6d7ea
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_no_args_no_void@
foreign import ccall unsafe "hs_bindgen_d5b5e70d96cc6b8d" hs_bindgen_d5b5e70d96cc6b8d_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_no_args_no_void@
hs_bindgen_d5b5e70d96cc6b8d :: IO (FunPtr (IO I))
-- __unique:__ @test_macrosmacro_in_fundecl_Example_get_no_args_no_void@
hs_bindgen_d5b5e70d96cc6b8d = fmap fromFFIType hs_bindgen_d5b5e70d96cc6b8d_base
{-# NOINLINE no_args_no_void_funptr #-}
{-| __C declaration:__ @no_args_no_void@

    __defined at:__ @macros\/macro_in_fundecl.h 53:3@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
no_args_no_void_funptr :: FunPtr (IO I)
{-| __C declaration:__ @no_args_no_void@

    __defined at:__ @macros\/macro_in_fundecl.h 53:3@

    __exported by:__ @macros\/macro_in_fundecl.h@
-}
no_args_no_void_funptr = unsafePerformIO hs_bindgen_d5b5e70d96cc6b8d