swig/Examples/test-suite/extern_declaration.i
William S Fulton ee02102626 variable name 'in' is a c# keyword
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7345 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-07-22 21:43:39 +00:00

27 lines
702 B
OpenEdge ABL

%module extern_declaration
// Test different calling conventions on Windows. Old versions of SWIG generated
// an incorrect extern declarations that wouldn't compile with Windows compilers.
#define SWIGEXPORT
#define SWIGSTDCALL
#define DLLIMPORT
%{
#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# define DLLIMPORT __declspec(dllimport)
#else
# define DLLIMPORT
#endif
%}
DLLIMPORT extern int externimport(int i);
SWIGEXPORT extern int externexport(int);
extern int SWIGSTDCALL externstdcall(int);
%{
SWIGEXPORT extern int externimport(int i) { return i; }
SWIGEXPORT extern int externexport(int i) { return i; }
extern int SWIGSTDCALL externstdcall(int i) { return i; }
%}