swig/Examples/test-suite/evil_diamond_prop.i
Olly Betts 7dfd9aae31 WARN_* constants are user visible, so keep existing WARN_PHP4_* for
backward compatibility, but add preferred forms WARN_PHP_* and use
these ourselves.

Rename Lib/php4 to Lib/php, Source/Modules/php4.cxx to Source/Modules/php.cxx.
 
Add typemaps for const reference so Examples/test-suite/apply_signed_char.i
works.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10633 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-07-03 00:09:56 +00:00

39 lines
845 B
OpenEdge ABL

%module(ruby_minherit="1") evil_diamond_prop
%warnfilter(SWIGWARN_RUBY_WRONG_NAME) foo; // Ruby, wrong class name
%warnfilter(SWIGWARN_RUBY_WRONG_NAME) bar; // Ruby, wrong class name
%warnfilter(SWIGWARN_RUBY_WRONG_NAME) baz; // Ruby, wrong class name
%warnfilter(SWIGWARN_RUBY_WRONG_NAME,
SWIGWARN_JAVA_MULTIPLE_INHERITANCE,
SWIGWARN_CSHARP_MULTIPLE_INHERITANCE,
SWIGWARN_PHP_MULTIPLE_INHERITANCE) spam; // Ruby, wrong class name - C# & Java, PHP multiple inheritance
%inline %{
class foo {
public:
int _foo;
foo() : _foo(1) {}
};
class bar : public foo {
public:
int _bar;
bar() : _bar(2) {}
};
class baz : public foo {
public:
int _baz;
baz() : _baz(3) {}
};
class spam : public bar, public baz {
public:
int _spam;
spam() : _spam(4) {}
};
foo *test(foo *f) { return f; }
%}