-- addDependentFile examples/golden/binding-specs/fun_arg/macro/function.h -- #include -- void hs_bindgen_40e15e86e5db36ce ( -- MyFunction *arg1 -- ) -- { -- foo(arg1); -- } -- void hs_bindgen_e13a57fd1d27f6e6 ( -- A arg1 -- ) -- { -- fooA(arg1); -- } -- void hs_bindgen_fd490df5087893ae ( -- B arg1 -- ) -- { -- fooB(arg1); -- } -- void hs_bindgen_a708e95f35bff290 ( -- signed int (*arg1) ( -- signed int arg1 -- ) -- ) -- { -- bar(arg1); -- } -- void hs_bindgen_2991dd76f4337b78 ( -- A *arg1 -- ) -- { -- barA(arg1); -- } -- void hs_bindgen_104de3f97206bd1d ( -- B *arg1 -- ) -- { -- barB(arg1); -- } -- void hs_bindgen_fbc2ec26cd297034 ( -- MyFunction *arg1 -- ) -- { -- foo(arg1); -- } -- void hs_bindgen_cf67e2fc00fd28d8 ( -- A arg1 -- ) -- { -- fooA(arg1); -- } -- void hs_bindgen_269a46f9680e33ed ( -- B arg1 -- ) -- { -- fooB(arg1); -- } -- void hs_bindgen_0fdddb4fac9b77d1 ( -- signed int (*arg1) ( -- signed int arg1 -- ) -- ) -- { -- bar(arg1); -- } -- void hs_bindgen_bd59a5d308c55504 ( -- A *arg1 -- ) -- { -- barA(arg1); -- } -- void hs_bindgen_b016bfc7a4cc0734 ( -- B *arg1 -- ) -- { -- barB(arg1); -- } -- /* test_bindingspecsfun_argmacrofu_Example_get_foo */ -- __attribute__ ((const)) -- void (*hs_bindgen_e113ab1229902001 (void)) ( -- MyFunction *arg1 -- ) -- { -- return &foo; -- } -- /* test_bindingspecsfun_argmacrofu_Example_get_fooA */ -- __attribute__ ((const)) -- void (*hs_bindgen_5e83648377d8afc6 (void)) ( -- A arg1 -- ) -- { -- return &fooA; -- } -- /* test_bindingspecsfun_argmacrofu_Example_get_fooB */ -- __attribute__ ((const)) -- void (*hs_bindgen_d6d79c737e65f7e7 (void)) ( -- B arg1 -- ) -- { -- return &fooB; -- } -- /* test_bindingspecsfun_argmacrofu_Example_get_bar */ -- __attribute__ ((const)) -- void (*hs_bindgen_15c0f27a0b5f01ca (void)) ( -- signed int (*arg1) ( -- signed int arg1 -- ) -- ) -- { -- return &bar; -- } -- /* test_bindingspecsfun_argmacrofu_Example_get_barA */ -- __attribute__ ((const)) -- void (*hs_bindgen_1e518c0403f5c339 (void)) ( -- A *arg1 -- ) -- { -- return &barA; -- } -- /* test_bindingspecsfun_argmacrofu_Example_get_barB */ -- __attribute__ ((const)) -- void (*hs_bindgen_6a1e56bd4a228268 (void)) ( -- B *arg1 -- ) -- { -- return &barB; -- } {-| __C declaration:__ @MyFunction@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 4:13@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} newtype MyFunction = MyFunction {unwrapMyFunction :: (CInt -> IO CInt)} {- ^ __C declaration:__ @MyFunction@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 4:13@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} deriving newtype HasFFIType foreign import ccall safe "wrapper" hs_bindgen_4e8a459829b269e0_base :: Int32 -> IO Int32 -> IO (FunPtr (Int32 -> IO Int32)) -- __unique:__ @toMyFunction@ hs_bindgen_4e8a459829b269e0 :: MyFunction -> IO (FunPtr MyFunction) -- __unique:__ @toMyFunction@ hs_bindgen_4e8a459829b269e0 = \fun_0 -> fmap castFunPtrFromFFIType (hs_bindgen_4e8a459829b269e0_base (toFFIType fun_0)) foreign import ccall safe "dynamic" hs_bindgen_bb71f7e730356103_base :: FunPtr (Int32 -> IO Int32) -> Int32 -> IO Int32 -- __unique:__ @fromMyFunction@ hs_bindgen_bb71f7e730356103 :: FunPtr MyFunction -> MyFunction -- __unique:__ @fromMyFunction@ hs_bindgen_bb71f7e730356103 = \funPtr_0 -> fromFFIType (hs_bindgen_bb71f7e730356103_base (castFunPtrToFFIType funPtr_0)) instance ToFunPtr MyFunction where toFunPtr = hs_bindgen_4e8a459829b269e0 instance FromFunPtr MyFunction where fromFunPtr = hs_bindgen_bb71f7e730356103 instance TyEq ty (CFieldType MyFunction "unwrapMyFunction") => HasField "unwrapMyFunction" (Ptr MyFunction) (Ptr ty) where getField = fromPtr (Proxy @"unwrapMyFunction") instance HasCField MyFunction "unwrapMyFunction" where type CFieldType MyFunction "unwrapMyFunction" = CInt -> IO CInt offset# = \_ -> \_ -> 0 {-| __C declaration:__ @A@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 7:9@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} newtype A = A {unwrapA :: MyFunction} {- ^ __C declaration:__ @A@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 7:9@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} deriving newtype HasFFIType instance TyEq ty (CFieldType A "unwrapA") => HasField "unwrapA" (Ptr A) (Ptr ty) where getField = fromPtr (Proxy @"unwrapA") instance HasCField A "unwrapA" where type CFieldType A "unwrapA" = MyFunction offset# = \_ -> \_ -> 0 {-| __C declaration:__ @B@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 8:9@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} newtype B = B {unwrapB :: A} {- ^ __C declaration:__ @B@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 8:9@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} deriving newtype HasFFIType instance TyEq ty (CFieldType B "unwrapB") => HasField "unwrapB" (Ptr B) (Ptr ty) where getField = fromPtr (Proxy @"unwrapB") instance HasCField B "unwrapB" where type CFieldType B "unwrapB" = A offset# = \_ -> \_ -> 0 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_foo@ foreign import ccall safe "hs_bindgen_40e15e86e5db36ce" hs_bindgen_40e15e86e5db36ce_base :: FunPtr Void -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_foo@ hs_bindgen_40e15e86e5db36ce :: FunPtr MyFunction -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_foo@ hs_bindgen_40e15e86e5db36ce = fromFFIType hs_bindgen_40e15e86e5db36ce_base {-| __C declaration:__ @foo@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 5:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} foo :: FunPtr MyFunction -> IO Unit {-| __C declaration:__ @foo@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 5:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} foo = hs_bindgen_40e15e86e5db36ce -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_fooA@ foreign import ccall safe "hs_bindgen_e13a57fd1d27f6e6" hs_bindgen_e13a57fd1d27f6e6_base :: Int32 -> IO Int32 -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_fooA@ hs_bindgen_e13a57fd1d27f6e6 :: A -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_fooA@ hs_bindgen_e13a57fd1d27f6e6 = fromFFIType hs_bindgen_e13a57fd1d27f6e6_base {-| __C declaration:__ @fooA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 10:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooA :: A -> IO Unit {-| __C declaration:__ @fooA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 10:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooA = hs_bindgen_e13a57fd1d27f6e6 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_fooB@ foreign import ccall safe "hs_bindgen_fd490df5087893ae" hs_bindgen_fd490df5087893ae_base :: Int32 -> IO Int32 -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_fooB@ hs_bindgen_fd490df5087893ae :: B -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_fooB@ hs_bindgen_fd490df5087893ae = fromFFIType hs_bindgen_fd490df5087893ae_base {-| __C declaration:__ @fooB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 11:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooB :: B -> IO Unit {-| __C declaration:__ @fooB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 11:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooB = hs_bindgen_fd490df5087893ae -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_bar@ foreign import ccall safe "hs_bindgen_a708e95f35bff290" hs_bindgen_a708e95f35bff290_base :: FunPtr Void -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_bar@ hs_bindgen_a708e95f35bff290 :: FunPtr (CInt -> IO CInt) -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_bar@ hs_bindgen_a708e95f35bff290 = fromFFIType hs_bindgen_a708e95f35bff290_base {-| __C declaration:__ @bar@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 34:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} bar :: FunPtr (CInt -> IO CInt) -> IO Unit {-| __C declaration:__ @bar@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 34:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} bar = hs_bindgen_a708e95f35bff290 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_barA@ foreign import ccall safe "hs_bindgen_2991dd76f4337b78" hs_bindgen_2991dd76f4337b78_base :: FunPtr Void -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_barA@ hs_bindgen_2991dd76f4337b78 :: FunPtr A -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_barA@ hs_bindgen_2991dd76f4337b78 = fromFFIType hs_bindgen_2991dd76f4337b78_base {-| __C declaration:__ @barA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 36:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barA :: FunPtr A -> IO Unit {-| __C declaration:__ @barA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 36:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barA = hs_bindgen_2991dd76f4337b78 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_barB@ foreign import ccall safe "hs_bindgen_104de3f97206bd1d" hs_bindgen_104de3f97206bd1d_base :: FunPtr Void -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_barB@ hs_bindgen_104de3f97206bd1d :: FunPtr B -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Safe_barB@ hs_bindgen_104de3f97206bd1d = fromFFIType hs_bindgen_104de3f97206bd1d_base {-| __C declaration:__ @barB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 37:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barB :: FunPtr B -> IO Unit {-| __C declaration:__ @barB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 37:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barB = hs_bindgen_104de3f97206bd1d -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_foo@ foreign import ccall unsafe "hs_bindgen_fbc2ec26cd297034" hs_bindgen_fbc2ec26cd297034_base :: FunPtr Void -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_foo@ hs_bindgen_fbc2ec26cd297034 :: FunPtr MyFunction -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_foo@ hs_bindgen_fbc2ec26cd297034 = fromFFIType hs_bindgen_fbc2ec26cd297034_base {-| __C declaration:__ @foo@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 5:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} foo :: FunPtr MyFunction -> IO Unit {-| __C declaration:__ @foo@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 5:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} foo = hs_bindgen_fbc2ec26cd297034 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_fooA@ foreign import ccall unsafe "hs_bindgen_cf67e2fc00fd28d8" hs_bindgen_cf67e2fc00fd28d8_base :: Int32 -> IO Int32 -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_fooA@ hs_bindgen_cf67e2fc00fd28d8 :: A -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_fooA@ hs_bindgen_cf67e2fc00fd28d8 = fromFFIType hs_bindgen_cf67e2fc00fd28d8_base {-| __C declaration:__ @fooA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 10:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooA :: A -> IO Unit {-| __C declaration:__ @fooA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 10:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooA = hs_bindgen_cf67e2fc00fd28d8 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_fooB@ foreign import ccall unsafe "hs_bindgen_269a46f9680e33ed" hs_bindgen_269a46f9680e33ed_base :: Int32 -> IO Int32 -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_fooB@ hs_bindgen_269a46f9680e33ed :: B -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_fooB@ hs_bindgen_269a46f9680e33ed = fromFFIType hs_bindgen_269a46f9680e33ed_base {-| __C declaration:__ @fooB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 11:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooB :: B -> IO Unit {-| __C declaration:__ @fooB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 11:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooB = hs_bindgen_269a46f9680e33ed -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_bar@ foreign import ccall unsafe "hs_bindgen_0fdddb4fac9b77d1" hs_bindgen_0fdddb4fac9b77d1_base :: FunPtr Void -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_bar@ hs_bindgen_0fdddb4fac9b77d1 :: FunPtr (CInt -> IO CInt) -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_bar@ hs_bindgen_0fdddb4fac9b77d1 = fromFFIType hs_bindgen_0fdddb4fac9b77d1_base {-| __C declaration:__ @bar@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 34:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} bar :: FunPtr (CInt -> IO CInt) -> IO Unit {-| __C declaration:__ @bar@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 34:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} bar = hs_bindgen_0fdddb4fac9b77d1 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_barA@ foreign import ccall unsafe "hs_bindgen_bd59a5d308c55504" hs_bindgen_bd59a5d308c55504_base :: FunPtr Void -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_barA@ hs_bindgen_bd59a5d308c55504 :: FunPtr A -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_barA@ hs_bindgen_bd59a5d308c55504 = fromFFIType hs_bindgen_bd59a5d308c55504_base {-| __C declaration:__ @barA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 36:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barA :: FunPtr A -> IO Unit {-| __C declaration:__ @barA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 36:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barA = hs_bindgen_bd59a5d308c55504 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_barB@ foreign import ccall unsafe "hs_bindgen_b016bfc7a4cc0734" hs_bindgen_b016bfc7a4cc0734_base :: FunPtr Void -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_barB@ hs_bindgen_b016bfc7a4cc0734 :: FunPtr B -> IO Unit -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_Unsafe_barB@ hs_bindgen_b016bfc7a4cc0734 = fromFFIType hs_bindgen_b016bfc7a4cc0734_base {-| __C declaration:__ @barB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 37:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barB :: FunPtr B -> IO Unit {-| __C declaration:__ @barB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 37:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barB = hs_bindgen_b016bfc7a4cc0734 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_foo@ foreign import ccall unsafe "hs_bindgen_e113ab1229902001" hs_bindgen_e113ab1229902001_base :: IO (FunPtr Void) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_foo@ hs_bindgen_e113ab1229902001 :: IO (FunPtr (FunPtr MyFunction -> IO Unit)) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_foo@ hs_bindgen_e113ab1229902001 = fromFFIType hs_bindgen_e113ab1229902001_base {-# NOINLINE foo #-} {-| __C declaration:__ @foo@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 5:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} foo :: FunPtr (FunPtr MyFunction -> IO Unit) {-| __C declaration:__ @foo@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 5:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} foo = unsafePerformIO hs_bindgen_e113ab1229902001 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_fooA@ foreign import ccall unsafe "hs_bindgen_5e83648377d8afc6" hs_bindgen_5e83648377d8afc6_base :: IO (FunPtr Void) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_fooA@ hs_bindgen_5e83648377d8afc6 :: IO (FunPtr (A -> IO Unit)) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_fooA@ hs_bindgen_5e83648377d8afc6 = fromFFIType hs_bindgen_5e83648377d8afc6_base {-# NOINLINE fooA #-} {-| __C declaration:__ @fooA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 10:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooA :: FunPtr (A -> IO Unit) {-| __C declaration:__ @fooA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 10:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooA = unsafePerformIO hs_bindgen_5e83648377d8afc6 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_fooB@ foreign import ccall unsafe "hs_bindgen_d6d79c737e65f7e7" hs_bindgen_d6d79c737e65f7e7_base :: IO (FunPtr Void) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_fooB@ hs_bindgen_d6d79c737e65f7e7 :: IO (FunPtr (B -> IO Unit)) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_fooB@ hs_bindgen_d6d79c737e65f7e7 = fromFFIType hs_bindgen_d6d79c737e65f7e7_base {-# NOINLINE fooB #-} {-| __C declaration:__ @fooB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 11:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooB :: FunPtr (B -> IO Unit) {-| __C declaration:__ @fooB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 11:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} fooB = unsafePerformIO hs_bindgen_d6d79c737e65f7e7 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_bar@ foreign import ccall unsafe "hs_bindgen_15c0f27a0b5f01ca" hs_bindgen_15c0f27a0b5f01ca_base :: IO (FunPtr Void) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_bar@ hs_bindgen_15c0f27a0b5f01ca :: IO (FunPtr (FunPtr (CInt -> IO CInt) -> IO Unit)) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_bar@ hs_bindgen_15c0f27a0b5f01ca = fromFFIType hs_bindgen_15c0f27a0b5f01ca_base {-# NOINLINE bar #-} {-| __C declaration:__ @bar@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 34:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} bar :: FunPtr (FunPtr (CInt -> IO CInt) -> IO Unit) {-| __C declaration:__ @bar@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 34:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} bar = unsafePerformIO hs_bindgen_15c0f27a0b5f01ca -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_barA@ foreign import ccall unsafe "hs_bindgen_1e518c0403f5c339" hs_bindgen_1e518c0403f5c339_base :: IO (FunPtr Void) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_barA@ hs_bindgen_1e518c0403f5c339 :: IO (FunPtr (FunPtr A -> IO Unit)) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_barA@ hs_bindgen_1e518c0403f5c339 = fromFFIType hs_bindgen_1e518c0403f5c339_base {-# NOINLINE barA #-} {-| __C declaration:__ @barA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 36:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barA :: FunPtr (FunPtr A -> IO Unit) {-| __C declaration:__ @barA@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 36:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barA = unsafePerformIO hs_bindgen_1e518c0403f5c339 -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_barB@ foreign import ccall unsafe "hs_bindgen_6a1e56bd4a228268" hs_bindgen_6a1e56bd4a228268_base :: IO (FunPtr Void) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_barB@ hs_bindgen_6a1e56bd4a228268 :: IO (FunPtr (FunPtr B -> IO Unit)) -- __unique:__ @test_bindingspecsfun_argmacrofu_Example_get_barB@ hs_bindgen_6a1e56bd4a228268 = fromFFIType hs_bindgen_6a1e56bd4a228268_base {-# NOINLINE barB #-} {-| __C declaration:__ @barB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 37:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barB :: FunPtr (FunPtr B -> IO Unit) {-| __C declaration:__ @barB@ __defined at:__ @binding-specs\/fun_arg\/macro\/function.h 37:6@ __exported by:__ @binding-specs\/fun_arg\/macro\/function.h@ -} barB = unsafePerformIO hs_bindgen_6a1e56bd4a228268