| %module redefined |
| |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) agua; |
| |
| /* no redundant warnings */ |
| %warnfilter(SWIGWARN_PARSE_REDUNDANT); |
| |
| #if 1 |
| // |
| // All these repeated declarations are not redefinitions, |
| // and they are valid C++ code, therefore, we skip |
| // swig redefined warnings. |
| // |
| %define uja |
| aju; |
| %enddef |
| |
| %define uja |
| aju; |
| %enddef |
| |
| %constant int agua = 0; |
| %constant int agua = 0; |
| |
| %inline %{ |
| |
| #define REDUNDANT 1 |
| #define REDUNDANT 1 |
| |
| #define MACROREP(x) x |
| #define MACROREP(x) x |
| |
| class Hello; |
| class Hello; |
| |
| typedef int Int; |
| typedef int Int; |
| |
| inline int hello(int); |
| int hello(int) { return 0; } |
| |
| struct B; |
| |
| struct A |
| { |
| typedef int Int; |
| friend int foo(A*, B*); |
| }; |
| |
| struct B |
| { |
| typedef int Int; |
| friend int foo(A*, B*); |
| }; |
| |
| inline int foo(A*, B*) { return 0; } |
| |
| %} |
| |
| |
| #else |
| |
| // |
| // the %extend and %rename directive ALWAYS emit redefined warnings, |
| // since they are not C/C++/CPP standard. |
| // |
| %extend Hello { |
| int hi(int) { return 0; } |
| } |
| |
| %rename(chao) hi(int); |
| |
| // |
| // All these repeated declarations are really redefinitions, |
| // therefore, swig must produce a redefined warning |
| // |
| |
| %constant int agua = 0; |
| %constant int agua = 1; |
| |
| |
| %inline %{ |
| |
| #define REDEFINED 1 |
| #define REDEFINED 2 |
| |
| #define MACROREP(x) x |
| #define MACROREP(x) x*2 |
| |
| typedef int Int; |
| typedef double Int; |
| |
| int hi(int); |
| int chao(int); |
| int hello(int); |
| inline double hello(int) { return 0; } |
| |
| struct Hello |
| { |
| typedef int Int; |
| typedef double Int; |
| friend short hello(int); |
| int hi(int) { return 0; } |
| }; |
| |
| %} |
| #endif |