%module extern_c | |
%inline %{ | |
extern "C" { | |
void RealFunction(int value); | |
typedef void Function1(int value); // Fails | |
typedef int Integer1; | |
} | |
typedef void Function2(int value); // Works | |
typedef int Integer2; | |
%} | |
%{ | |
void RealFunction(int value) {} | |
%} | |
%inline %{ | |
extern "C" { | |
typedef void (*Hook1_t)(int, const char *); | |
} | |
extern "C" typedef void (*Hook2_t)(int, const char *); | |
void funcy1(Hook1_t) {} | |
void funcy2(Hook2_t) {} | |
Hook1_t hook1; | |
Hook2_t hook2; | |
extern "C" typedef int Integer; | |
Integer int1; | |
%} | |