-- addDependentFile examples/golden/macros/macro_in_fundecl_vs_typedef.h
-- #include <macros/macro_in_fundecl_vs_typedef.h>
-- char hs_bindgen_02e0e3b28d470fd4 (
--   MC arg1,
--   TC arg2
-- )
-- {
--   return quux1(arg1, arg2);
-- }
-- TC hs_bindgen_bb79188c8775e2e4 (
--   MC arg1,
--   char arg2
-- )
-- {
--   return quux2(arg1, arg2);
-- }
-- MC *hs_bindgen_a398fb73645271c5 (
--   float arg1,
--   TC *arg2
-- )
-- {
--   return wam1(arg1, arg2);
-- }
-- TC *hs_bindgen_ad904da072e0711e (
--   float arg1,
--   MC *arg2
-- )
-- {
--   return wam2(arg1, arg2);
-- }
-- void hs_bindgen_88e976dc10571000 (
--   struct2 *arg1,
--   MC arg2
-- )
-- {
--   struct_typedef1(arg1, arg2);
-- }
-- void hs_bindgen_edb3806d45d7605b (
--   struct3_t *arg1,
--   MC arg2
-- )
-- {
--   struct_typedef2(arg1, arg2);
-- }
-- void hs_bindgen_7c7f3ab0dd790fe8 (
--   struct4 *arg1,
--   MC arg2
-- )
-- {
--   struct_typedef3(arg1, arg2);
-- }
-- void hs_bindgen_2cfbb4f5834d4bcb (
--   struct struct1 *arg1,
--   MC arg2
-- )
-- {
--   struct_name1(arg1, arg2);
-- }
-- void hs_bindgen_c8b765fa70f95167 (
--   struct struct3 *arg1,
--   MC arg2
-- )
-- {
--   struct_name2(arg1, arg2);
-- }
-- void hs_bindgen_0ff3632971f092bb (
--   struct struct4 *arg1,
--   MC arg2
-- )
-- {
--   struct_name3(arg1, arg2);
-- }
-- char hs_bindgen_df7e2b8e86de411a (
--   MC arg1,
--   TC arg2
-- )
-- {
--   return quux1(arg1, arg2);
-- }
-- TC hs_bindgen_6f0b13ed02b696df (
--   MC arg1,
--   char arg2
-- )
-- {
--   return quux2(arg1, arg2);
-- }
-- MC *hs_bindgen_f92059cc98dde342 (
--   float arg1,
--   TC *arg2
-- )
-- {
--   return wam1(arg1, arg2);
-- }
-- TC *hs_bindgen_3e6ecd1b2cc616bc (
--   float arg1,
--   MC *arg2
-- )
-- {
--   return wam2(arg1, arg2);
-- }
-- void hs_bindgen_ffa9d5a3e8f0f221 (
--   struct2 *arg1,
--   MC arg2
-- )
-- {
--   struct_typedef1(arg1, arg2);
-- }
-- void hs_bindgen_4801667560542114 (
--   struct3_t *arg1,
--   MC arg2
-- )
-- {
--   struct_typedef2(arg1, arg2);
-- }
-- void hs_bindgen_04fa5bbd479146eb (
--   struct4 *arg1,
--   MC arg2
-- )
-- {
--   struct_typedef3(arg1, arg2);
-- }
-- void hs_bindgen_08025fd0bd589ac2 (
--   struct struct1 *arg1,
--   MC arg2
-- )
-- {
--   struct_name1(arg1, arg2);
-- }
-- void hs_bindgen_9de286608f952fc7 (
--   struct struct3 *arg1,
--   MC arg2
-- )
-- {
--   struct_name2(arg1, arg2);
-- }
-- void hs_bindgen_38cce6bb1ac71578 (
--   struct struct4 *arg1,
--   MC arg2
-- )
-- {
--   struct_name3(arg1, arg2);
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_quux1 */
-- __attribute__ ((const))
-- char (*hs_bindgen_8c77c87c8985f5b4 (void)) (
--   MC arg1,
--   TC arg2
-- )
-- {
--   return &quux1;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_quux2 */
-- __attribute__ ((const))
-- TC (*hs_bindgen_ad1c057fd2e38491 (void)) (
--   MC arg1,
--   char arg2
-- )
-- {
--   return &quux2;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_wam1 */
-- __attribute__ ((const))
-- MC *(*hs_bindgen_05b0ef45be2bc377 (void)) (
--   float arg1,
--   TC *arg2
-- )
-- {
--   return &wam1;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_wam2 */
-- __attribute__ ((const))
-- TC *(*hs_bindgen_cd643a7a3c18ccf6 (void)) (
--   float arg1,
--   MC *arg2
-- )
-- {
--   return &wam2;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef1 */
-- __attribute__ ((const))
-- void (*hs_bindgen_0322539d81aee229 (void)) (
--   struct2 *arg1,
--   MC arg2
-- )
-- {
--   return &struct_typedef1;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef2 */
-- __attribute__ ((const))
-- void (*hs_bindgen_8522498cba39ada6 (void)) (
--   struct3_t *arg1,
--   MC arg2
-- )
-- {
--   return &struct_typedef2;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef3 */
-- __attribute__ ((const))
-- void (*hs_bindgen_e19fc7f7dee46424 (void)) (
--   struct4 *arg1,
--   MC arg2
-- )
-- {
--   return &struct_typedef3;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name1 */
-- __attribute__ ((const))
-- void (*hs_bindgen_00f81edda453ec64 (void)) (
--   struct struct1 *arg1,
--   MC arg2
-- )
-- {
--   return &struct_name1;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name2 */
-- __attribute__ ((const))
-- void (*hs_bindgen_8f4de3d502f3466d (void)) (
--   struct struct3 *arg1,
--   MC arg2
-- )
-- {
--   return &struct_name2;
-- }
-- /* test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name3 */
-- __attribute__ ((const))
-- void (*hs_bindgen_ba133ae0ff062248 (void)) (
--   struct struct4 *arg1,
--   MC arg2
-- )
-- {
--   return &struct_name3;
-- }
{-| __C declaration:__ @MC@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 4:9@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
newtype MC
    = MC {unwrapMC :: CChar}
      {- ^ __C declaration:__ @MC@

           __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 4:9@

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

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 5:14@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
newtype TC
    = TC {unwrapTC :: CChar}
      {- ^ __C declaration:__ @TC@

           __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 5:14@

           __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
      -}
    deriving stock (Eq, Ord, Read, Show)
    deriving newtype (StaticSize,
                      ReadRaw,
                      WriteRaw,
                      Storable,
                      HasFFIType,
                      Prim,
                      Bitfield,
                      Bits,
                      Bounded,
                      Enum,
                      FiniteBits,
                      Integral,
                      Ix,
                      Num,
                      Real)
instance TyEq ty (CFieldType TC "unwrapTC") =>
         HasField "unwrapTC" (Ptr TC) (Ptr ty)
    where getField = fromPtr (Proxy @"unwrapTC")
instance HasCField TC "unwrapTC"
    where type CFieldType TC "unwrapTC" = CChar
          offset# = \_ -> \_ -> 0
{-| __C declaration:__ @struct struct1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 18:16@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
data Struct1
    = Struct1 {struct1_a :: CInt
               {- ^ __C declaration:__ @a@

                    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 18:30@

                    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
               -}}
      {- ^ __C declaration:__ @struct struct1@

           __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 18:16@

           __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
      -}
    deriving stock (Eq, Show)
instance StaticSize Struct1
    where staticSizeOf = \_ -> 4 :: Int
          staticAlignment = \_ -> 4 :: Int
instance ReadRaw Struct1
    where readRaw = \ptr_0 -> pure Struct1 <*> readRaw (Proxy @"struct1_a") ptr_0
instance WriteRaw Struct1
    where writeRaw = \ptr_0 -> \s_1 -> case s_1 of
                                       Struct1 struct1_a_2 -> writeRaw (Proxy @"struct1_a") ptr_0 struct1_a_2
deriving via (EquivStorable Struct1) instance Storable Struct1
instance HasCField Struct1 "struct1_a"
    where type CFieldType Struct1 "struct1_a" = CInt
          offset# = \_ -> \_ -> 0
instance TyEq ty (CFieldType Struct1 "struct1_a") =>
         HasField "struct1_a" (Ptr Struct1) (Ptr ty)
    where getField = fromPtr (Proxy @"struct1_a")
{-| __C declaration:__ @struct struct2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 19:9@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
data Struct2
    = Struct2 {struct2_a :: CInt
               {- ^ __C declaration:__ @a@

                    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 19:30@

                    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
               -}}
      {- ^ __C declaration:__ @struct struct2@

           __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 19:9@

           __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
      -}
    deriving stock (Eq, Show)
instance StaticSize Struct2
    where staticSizeOf = \_ -> 4 :: Int
          staticAlignment = \_ -> 4 :: Int
instance ReadRaw Struct2
    where readRaw = \ptr_0 -> pure Struct2 <*> readRaw (Proxy @"struct2_a") ptr_0
instance WriteRaw Struct2
    where writeRaw = \ptr_0 -> \s_1 -> case s_1 of
                                       Struct2 struct2_a_2 -> writeRaw (Proxy @"struct2_a") ptr_0 struct2_a_2
deriving via (EquivStorable Struct2) instance Storable Struct2
instance HasCField Struct2 "struct2_a"
    where type CFieldType Struct2 "struct2_a" = CInt
          offset# = \_ -> \_ -> 0
instance TyEq ty (CFieldType Struct2 "struct2_a") =>
         HasField "struct2_a" (Ptr Struct2) (Ptr ty)
    where getField = fromPtr (Proxy @"struct2_a")
{-| __C declaration:__ @struct struct3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 20:16@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
data Struct3
    = Struct3 {struct3_a :: CInt
               {- ^ __C declaration:__ @a@

                    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 20:30@

                    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
               -}}
      {- ^ __C declaration:__ @struct struct3@

           __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 20:16@

           __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
      -}
    deriving stock (Eq, Show)
instance StaticSize Struct3
    where staticSizeOf = \_ -> 4 :: Int
          staticAlignment = \_ -> 4 :: Int
instance ReadRaw Struct3
    where readRaw = \ptr_0 -> pure Struct3 <*> readRaw (Proxy @"struct3_a") ptr_0
instance WriteRaw Struct3
    where writeRaw = \ptr_0 -> \s_1 -> case s_1 of
                                       Struct3 struct3_a_2 -> writeRaw (Proxy @"struct3_a") ptr_0 struct3_a_2
deriving via (EquivStorable Struct3) instance Storable Struct3
instance HasCField Struct3 "struct3_a"
    where type CFieldType Struct3 "struct3_a" = CInt
          offset# = \_ -> \_ -> 0
instance TyEq ty (CFieldType Struct3 "struct3_a") =>
         HasField "struct3_a" (Ptr Struct3) (Ptr ty)
    where getField = fromPtr (Proxy @"struct3_a")
{-| __C declaration:__ @struct3_t@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 20:35@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
newtype Struct3_t
    = Struct3_t {unwrapStruct3_t :: Struct3}
      {- ^ __C declaration:__ @struct3_t@

           __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 20:35@

           __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
      -}
    deriving stock (Eq, Show)
    deriving newtype (StaticSize, ReadRaw, WriteRaw, Storable)
instance TyEq ty (CFieldType Struct3_t "unwrapStruct3_t") =>
         HasField "unwrapStruct3_t" (Ptr Struct3_t) (Ptr ty)
    where getField = fromPtr (Proxy @"unwrapStruct3_t")
instance HasCField Struct3_t "unwrapStruct3_t"
    where type CFieldType Struct3_t "unwrapStruct3_t" = Struct3
          offset# = \_ -> \_ -> 0
{-| __C declaration:__ @struct struct4@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 21:16@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
data Struct4
    = Struct4 {struct4_a :: CInt
               {- ^ __C declaration:__ @a@

                    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 21:30@

                    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
               -}}
      {- ^ __C declaration:__ @struct struct4@

           __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 21:16@

           __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
      -}
    deriving stock (Eq, Show)
instance StaticSize Struct4
    where staticSizeOf = \_ -> 4 :: Int
          staticAlignment = \_ -> 4 :: Int
instance ReadRaw Struct4
    where readRaw = \ptr_0 -> pure Struct4 <*> readRaw (Proxy @"struct4_a") ptr_0
instance WriteRaw Struct4
    where writeRaw = \ptr_0 -> \s_1 -> case s_1 of
                                       Struct4 struct4_a_2 -> writeRaw (Proxy @"struct4_a") ptr_0 struct4_a_2
deriving via (EquivStorable Struct4) instance Storable Struct4
instance HasCField Struct4 "struct4_a"
    where type CFieldType Struct4 "struct4_a" = CInt
          offset# = \_ -> \_ -> 0
instance TyEq ty (CFieldType Struct4 "struct4_a") =>
         HasField "struct4_a" (Ptr Struct4) (Ptr ty)
    where getField = fromPtr (Proxy @"struct4_a")
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_quux1@
foreign import ccall safe "hs_bindgen_02e0e3b28d470fd4" hs_bindgen_02e0e3b28d470fd4_base ::
    Int8
 -> Int8
 -> IO Int8
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_quux1@
hs_bindgen_02e0e3b28d470fd4 :: MC -> TC -> IO CChar
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_quux1@
hs_bindgen_02e0e3b28d470fd4 = fromFFIType hs_bindgen_02e0e3b28d470fd4_base
{-| __C declaration:__ @quux1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 8:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux1 :: MC -> TC -> IO CChar
{-| __C declaration:__ @quux1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 8:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux1 = hs_bindgen_02e0e3b28d470fd4
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_quux2@
foreign import ccall safe "hs_bindgen_bb79188c8775e2e4" hs_bindgen_bb79188c8775e2e4_base ::
    Int8
 -> Int8
 -> IO Int8
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_quux2@
hs_bindgen_bb79188c8775e2e4 :: MC -> CChar -> IO TC
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_quux2@
hs_bindgen_bb79188c8775e2e4 = fromFFIType hs_bindgen_bb79188c8775e2e4_base
{-| __C declaration:__ @quux2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 9:4@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux2 :: MC -> CChar -> IO TC
{-| __C declaration:__ @quux2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 9:4@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux2 = hs_bindgen_bb79188c8775e2e4
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_wam1@
foreign import ccall safe "hs_bindgen_a398fb73645271c5" hs_bindgen_a398fb73645271c5_base ::
    Float
 -> Ptr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_wam1@
hs_bindgen_a398fb73645271c5 :: CFloat -> Ptr TC -> IO (Ptr MC)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_wam1@
hs_bindgen_a398fb73645271c5 = fromFFIType hs_bindgen_a398fb73645271c5_base
{-| __C declaration:__ @wam1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 10:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam1 :: CFloat -> Ptr TC -> IO (Ptr MC)
{-| __C declaration:__ @wam1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 10:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam1 = hs_bindgen_a398fb73645271c5
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_wam2@
foreign import ccall safe "hs_bindgen_ad904da072e0711e" hs_bindgen_ad904da072e0711e_base ::
    Float
 -> Ptr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_wam2@
hs_bindgen_ad904da072e0711e :: CFloat -> Ptr MC -> IO (Ptr TC)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_wam2@
hs_bindgen_ad904da072e0711e = fromFFIType hs_bindgen_ad904da072e0711e_base
{-| __C declaration:__ @wam2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 11:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam2 :: CFloat -> Ptr MC -> IO (Ptr TC)
{-| __C declaration:__ @wam2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 11:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam2 = hs_bindgen_ad904da072e0711e
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef1@
foreign import ccall safe "hs_bindgen_88e976dc10571000" hs_bindgen_88e976dc10571000_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef1@
hs_bindgen_88e976dc10571000 :: Ptr Struct2 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef1@
hs_bindgen_88e976dc10571000 = fromFFIType hs_bindgen_88e976dc10571000_base
{-| __C declaration:__ @struct_typedef1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 23:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef1 :: Ptr Struct2 -> MC -> IO Unit
{-| __C declaration:__ @struct_typedef1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 23:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef1 = hs_bindgen_88e976dc10571000
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef2@
foreign import ccall safe "hs_bindgen_edb3806d45d7605b" hs_bindgen_edb3806d45d7605b_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef2@
hs_bindgen_edb3806d45d7605b :: Ptr Struct3_t -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef2@
hs_bindgen_edb3806d45d7605b = fromFFIType hs_bindgen_edb3806d45d7605b_base
{-| __C declaration:__ @struct_typedef2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 24:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef2 :: Ptr Struct3_t -> MC -> IO Unit
{-| __C declaration:__ @struct_typedef2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 24:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef2 = hs_bindgen_edb3806d45d7605b
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef3@
foreign import ccall safe "hs_bindgen_7c7f3ab0dd790fe8" hs_bindgen_7c7f3ab0dd790fe8_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef3@
hs_bindgen_7c7f3ab0dd790fe8 :: Ptr Struct4 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_typedef3@
hs_bindgen_7c7f3ab0dd790fe8 = fromFFIType hs_bindgen_7c7f3ab0dd790fe8_base
{-| __C declaration:__ @struct_typedef3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 25:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef3 :: Ptr Struct4 -> MC -> IO Unit
{-| __C declaration:__ @struct_typedef3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 25:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef3 = hs_bindgen_7c7f3ab0dd790fe8
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name1@
foreign import ccall safe "hs_bindgen_2cfbb4f5834d4bcb" hs_bindgen_2cfbb4f5834d4bcb_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name1@
hs_bindgen_2cfbb4f5834d4bcb :: Ptr Struct1 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name1@
hs_bindgen_2cfbb4f5834d4bcb = fromFFIType hs_bindgen_2cfbb4f5834d4bcb_base
{-| __C declaration:__ @struct_name1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 27:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name1 :: Ptr Struct1 -> MC -> IO Unit
{-| __C declaration:__ @struct_name1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 27:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name1 = hs_bindgen_2cfbb4f5834d4bcb
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name2@
foreign import ccall safe "hs_bindgen_c8b765fa70f95167" hs_bindgen_c8b765fa70f95167_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name2@
hs_bindgen_c8b765fa70f95167 :: Ptr Struct3 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name2@
hs_bindgen_c8b765fa70f95167 = fromFFIType hs_bindgen_c8b765fa70f95167_base
{-| __C declaration:__ @struct_name2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 28:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name2 :: Ptr Struct3 -> MC -> IO Unit
{-| __C declaration:__ @struct_name2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 28:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name2 = hs_bindgen_c8b765fa70f95167
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name3@
foreign import ccall safe "hs_bindgen_0ff3632971f092bb" hs_bindgen_0ff3632971f092bb_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name3@
hs_bindgen_0ff3632971f092bb :: Ptr Struct4 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Safe_struct_name3@
hs_bindgen_0ff3632971f092bb = fromFFIType hs_bindgen_0ff3632971f092bb_base
{-| __C declaration:__ @struct_name3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 29:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name3 :: Ptr Struct4 -> MC -> IO Unit
{-| __C declaration:__ @struct_name3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 29:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name3 = hs_bindgen_0ff3632971f092bb
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_quux1@
foreign import ccall unsafe "hs_bindgen_df7e2b8e86de411a" hs_bindgen_df7e2b8e86de411a_base ::
    Int8
 -> Int8
 -> IO Int8
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_quux1@
hs_bindgen_df7e2b8e86de411a :: MC -> TC -> IO CChar
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_quux1@
hs_bindgen_df7e2b8e86de411a = fromFFIType hs_bindgen_df7e2b8e86de411a_base
{-| __C declaration:__ @quux1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 8:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux1 :: MC -> TC -> IO CChar
{-| __C declaration:__ @quux1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 8:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux1 = hs_bindgen_df7e2b8e86de411a
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_quux2@
foreign import ccall unsafe "hs_bindgen_6f0b13ed02b696df" hs_bindgen_6f0b13ed02b696df_base ::
    Int8
 -> Int8
 -> IO Int8
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_quux2@
hs_bindgen_6f0b13ed02b696df :: MC -> CChar -> IO TC
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_quux2@
hs_bindgen_6f0b13ed02b696df = fromFFIType hs_bindgen_6f0b13ed02b696df_base
{-| __C declaration:__ @quux2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 9:4@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux2 :: MC -> CChar -> IO TC
{-| __C declaration:__ @quux2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 9:4@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux2 = hs_bindgen_6f0b13ed02b696df
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_wam1@
foreign import ccall unsafe "hs_bindgen_f92059cc98dde342" hs_bindgen_f92059cc98dde342_base ::
    Float
 -> Ptr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_wam1@
hs_bindgen_f92059cc98dde342 :: CFloat -> Ptr TC -> IO (Ptr MC)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_wam1@
hs_bindgen_f92059cc98dde342 = fromFFIType hs_bindgen_f92059cc98dde342_base
{-| __C declaration:__ @wam1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 10:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam1 :: CFloat -> Ptr TC -> IO (Ptr MC)
{-| __C declaration:__ @wam1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 10:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam1 = hs_bindgen_f92059cc98dde342
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_wam2@
foreign import ccall unsafe "hs_bindgen_3e6ecd1b2cc616bc" hs_bindgen_3e6ecd1b2cc616bc_base ::
    Float
 -> Ptr Void
 -> IO (Ptr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_wam2@
hs_bindgen_3e6ecd1b2cc616bc :: CFloat -> Ptr MC -> IO (Ptr TC)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_wam2@
hs_bindgen_3e6ecd1b2cc616bc = fromFFIType hs_bindgen_3e6ecd1b2cc616bc_base
{-| __C declaration:__ @wam2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 11:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam2 :: CFloat -> Ptr MC -> IO (Ptr TC)
{-| __C declaration:__ @wam2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 11:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam2 = hs_bindgen_3e6ecd1b2cc616bc
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef1@
foreign import ccall unsafe "hs_bindgen_ffa9d5a3e8f0f221" hs_bindgen_ffa9d5a3e8f0f221_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef1@
hs_bindgen_ffa9d5a3e8f0f221 :: Ptr Struct2 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef1@
hs_bindgen_ffa9d5a3e8f0f221 = fromFFIType hs_bindgen_ffa9d5a3e8f0f221_base
{-| __C declaration:__ @struct_typedef1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 23:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef1 :: Ptr Struct2 -> MC -> IO Unit
{-| __C declaration:__ @struct_typedef1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 23:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef1 = hs_bindgen_ffa9d5a3e8f0f221
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef2@
foreign import ccall unsafe "hs_bindgen_4801667560542114" hs_bindgen_4801667560542114_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef2@
hs_bindgen_4801667560542114 :: Ptr Struct3_t -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef2@
hs_bindgen_4801667560542114 = fromFFIType hs_bindgen_4801667560542114_base
{-| __C declaration:__ @struct_typedef2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 24:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef2 :: Ptr Struct3_t -> MC -> IO Unit
{-| __C declaration:__ @struct_typedef2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 24:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef2 = hs_bindgen_4801667560542114
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef3@
foreign import ccall unsafe "hs_bindgen_04fa5bbd479146eb" hs_bindgen_04fa5bbd479146eb_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef3@
hs_bindgen_04fa5bbd479146eb :: Ptr Struct4 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_typedef3@
hs_bindgen_04fa5bbd479146eb = fromFFIType hs_bindgen_04fa5bbd479146eb_base
{-| __C declaration:__ @struct_typedef3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 25:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef3 :: Ptr Struct4 -> MC -> IO Unit
{-| __C declaration:__ @struct_typedef3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 25:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef3 = hs_bindgen_04fa5bbd479146eb
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name1@
foreign import ccall unsafe "hs_bindgen_08025fd0bd589ac2" hs_bindgen_08025fd0bd589ac2_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name1@
hs_bindgen_08025fd0bd589ac2 :: Ptr Struct1 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name1@
hs_bindgen_08025fd0bd589ac2 = fromFFIType hs_bindgen_08025fd0bd589ac2_base
{-| __C declaration:__ @struct_name1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 27:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name1 :: Ptr Struct1 -> MC -> IO Unit
{-| __C declaration:__ @struct_name1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 27:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name1 = hs_bindgen_08025fd0bd589ac2
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name2@
foreign import ccall unsafe "hs_bindgen_9de286608f952fc7" hs_bindgen_9de286608f952fc7_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name2@
hs_bindgen_9de286608f952fc7 :: Ptr Struct3 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name2@
hs_bindgen_9de286608f952fc7 = fromFFIType hs_bindgen_9de286608f952fc7_base
{-| __C declaration:__ @struct_name2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 28:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name2 :: Ptr Struct3 -> MC -> IO Unit
{-| __C declaration:__ @struct_name2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 28:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name2 = hs_bindgen_9de286608f952fc7
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name3@
foreign import ccall unsafe "hs_bindgen_38cce6bb1ac71578" hs_bindgen_38cce6bb1ac71578_base ::
    Ptr Void
 -> Int8
 -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name3@
hs_bindgen_38cce6bb1ac71578 :: Ptr Struct4 -> MC -> IO Unit
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_Unsafe_struct_name3@
hs_bindgen_38cce6bb1ac71578 = fromFFIType hs_bindgen_38cce6bb1ac71578_base
{-| __C declaration:__ @struct_name3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 29:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name3 :: Ptr Struct4 -> MC -> IO Unit
{-| __C declaration:__ @struct_name3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 29:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name3 = hs_bindgen_38cce6bb1ac71578
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_quux1@
foreign import ccall unsafe "hs_bindgen_8c77c87c8985f5b4" hs_bindgen_8c77c87c8985f5b4_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_quux1@
hs_bindgen_8c77c87c8985f5b4 :: IO (FunPtr (MC -> TC -> IO CChar))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_quux1@
hs_bindgen_8c77c87c8985f5b4 = fromFFIType hs_bindgen_8c77c87c8985f5b4_base
{-# NOINLINE quux1 #-}
{-| __C declaration:__ @quux1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 8:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux1 :: FunPtr (MC -> TC -> IO CChar)
{-| __C declaration:__ @quux1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 8:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux1 = unsafePerformIO hs_bindgen_8c77c87c8985f5b4
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_quux2@
foreign import ccall unsafe "hs_bindgen_ad1c057fd2e38491" hs_bindgen_ad1c057fd2e38491_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_quux2@
hs_bindgen_ad1c057fd2e38491 :: IO (FunPtr (MC -> CChar -> IO TC))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_quux2@
hs_bindgen_ad1c057fd2e38491 = fromFFIType hs_bindgen_ad1c057fd2e38491_base
{-# NOINLINE quux2 #-}
{-| __C declaration:__ @quux2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 9:4@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux2 :: FunPtr (MC -> CChar -> IO TC)
{-| __C declaration:__ @quux2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 9:4@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
quux2 = unsafePerformIO hs_bindgen_ad1c057fd2e38491
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_wam1@
foreign import ccall unsafe "hs_bindgen_05b0ef45be2bc377" hs_bindgen_05b0ef45be2bc377_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_wam1@
hs_bindgen_05b0ef45be2bc377 :: IO (FunPtr (CFloat ->
                                           Ptr TC -> IO (Ptr MC)))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_wam1@
hs_bindgen_05b0ef45be2bc377 = fromFFIType hs_bindgen_05b0ef45be2bc377_base
{-# NOINLINE wam1 #-}
{-| __C declaration:__ @wam1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 10:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam1 :: FunPtr (CFloat -> Ptr TC -> IO (Ptr MC))
{-| __C declaration:__ @wam1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 10:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam1 = unsafePerformIO hs_bindgen_05b0ef45be2bc377
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_wam2@
foreign import ccall unsafe "hs_bindgen_cd643a7a3c18ccf6" hs_bindgen_cd643a7a3c18ccf6_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_wam2@
hs_bindgen_cd643a7a3c18ccf6 :: IO (FunPtr (CFloat ->
                                           Ptr MC -> IO (Ptr TC)))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_wam2@
hs_bindgen_cd643a7a3c18ccf6 = fromFFIType hs_bindgen_cd643a7a3c18ccf6_base
{-# NOINLINE wam2 #-}
{-| __C declaration:__ @wam2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 11:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam2 :: FunPtr (CFloat -> Ptr MC -> IO (Ptr TC))
{-| __C declaration:__ @wam2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 11:5@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
wam2 = unsafePerformIO hs_bindgen_cd643a7a3c18ccf6
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef1@
foreign import ccall unsafe "hs_bindgen_0322539d81aee229" hs_bindgen_0322539d81aee229_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef1@
hs_bindgen_0322539d81aee229 :: IO (FunPtr (Ptr Struct2 ->
                                           MC -> IO Unit))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef1@
hs_bindgen_0322539d81aee229 = fromFFIType hs_bindgen_0322539d81aee229_base
{-# NOINLINE struct_typedef1 #-}
{-| __C declaration:__ @struct_typedef1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 23:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef1 :: FunPtr (Ptr Struct2 -> MC -> IO Unit)
{-| __C declaration:__ @struct_typedef1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 23:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef1 = unsafePerformIO hs_bindgen_0322539d81aee229
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef2@
foreign import ccall unsafe "hs_bindgen_8522498cba39ada6" hs_bindgen_8522498cba39ada6_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef2@
hs_bindgen_8522498cba39ada6 :: IO (FunPtr (Ptr Struct3_t ->
                                           MC -> IO Unit))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef2@
hs_bindgen_8522498cba39ada6 = fromFFIType hs_bindgen_8522498cba39ada6_base
{-# NOINLINE struct_typedef2 #-}
{-| __C declaration:__ @struct_typedef2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 24:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef2 :: FunPtr (Ptr Struct3_t -> MC -> IO Unit)
{-| __C declaration:__ @struct_typedef2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 24:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef2 = unsafePerformIO hs_bindgen_8522498cba39ada6
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef3@
foreign import ccall unsafe "hs_bindgen_e19fc7f7dee46424" hs_bindgen_e19fc7f7dee46424_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef3@
hs_bindgen_e19fc7f7dee46424 :: IO (FunPtr (Ptr Struct4 ->
                                           MC -> IO Unit))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_typedef3@
hs_bindgen_e19fc7f7dee46424 = fromFFIType hs_bindgen_e19fc7f7dee46424_base
{-# NOINLINE struct_typedef3 #-}
{-| __C declaration:__ @struct_typedef3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 25:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef3 :: FunPtr (Ptr Struct4 -> MC -> IO Unit)
{-| __C declaration:__ @struct_typedef3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 25:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_typedef3 = unsafePerformIO hs_bindgen_e19fc7f7dee46424
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name1@
foreign import ccall unsafe "hs_bindgen_00f81edda453ec64" hs_bindgen_00f81edda453ec64_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name1@
hs_bindgen_00f81edda453ec64 :: IO (FunPtr (Ptr Struct1 ->
                                           MC -> IO Unit))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name1@
hs_bindgen_00f81edda453ec64 = fromFFIType hs_bindgen_00f81edda453ec64_base
{-# NOINLINE struct_name1 #-}
{-| __C declaration:__ @struct_name1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 27:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name1 :: FunPtr (Ptr Struct1 -> MC -> IO Unit)
{-| __C declaration:__ @struct_name1@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 27:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name1 = unsafePerformIO hs_bindgen_00f81edda453ec64
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name2@
foreign import ccall unsafe "hs_bindgen_8f4de3d502f3466d" hs_bindgen_8f4de3d502f3466d_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name2@
hs_bindgen_8f4de3d502f3466d :: IO (FunPtr (Ptr Struct3 ->
                                           MC -> IO Unit))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name2@
hs_bindgen_8f4de3d502f3466d = fromFFIType hs_bindgen_8f4de3d502f3466d_base
{-# NOINLINE struct_name2 #-}
{-| __C declaration:__ @struct_name2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 28:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name2 :: FunPtr (Ptr Struct3 -> MC -> IO Unit)
{-| __C declaration:__ @struct_name2@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 28:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name2 = unsafePerformIO hs_bindgen_8f4de3d502f3466d
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name3@
foreign import ccall unsafe "hs_bindgen_ba133ae0ff062248" hs_bindgen_ba133ae0ff062248_base ::
    IO (FunPtr Void)
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name3@
hs_bindgen_ba133ae0ff062248 :: IO (FunPtr (Ptr Struct4 ->
                                           MC -> IO Unit))
-- __unique:__ @test_macrosmacro_in_fundecl_vs_typ_Example_get_struct_name3@
hs_bindgen_ba133ae0ff062248 = fromFFIType hs_bindgen_ba133ae0ff062248_base
{-# NOINLINE struct_name3 #-}
{-| __C declaration:__ @struct_name3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 29:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name3 :: FunPtr (Ptr Struct4 -> MC -> IO Unit)
{-| __C declaration:__ @struct_name3@

    __defined at:__ @macros\/macro_in_fundecl_vs_typedef.h 29:6@

    __exported by:__ @macros\/macro_in_fundecl_vs_typedef.h@
-}
struct_name3 = unsafePerformIO hs_bindgen_ba133ae0ff062248
