swig/Examples/test-suite/evil_diamond_prop.i
William S Fulton d6b81eb831 Revert rev 11187 "Merged with recent changes from trunk."
This reverts commit c595e4d90ebfd63eb55430c735bb121cf690bd59.

Conflicts:

	Source/Modules/c.cxx

From: William S Fulton <wsf@fultondesigns.co.uk>

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2008-maciekd@13033 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-05-06 01:13:16 +00:00

40 lines
883 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_D_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; }
%}