Add another interface test selecting just one base as an interface
This commit is contained in:
parent
645147a5b2
commit
67f38e8124
2 changed files with 24 additions and 1 deletions
|
|
@ -58,6 +58,16 @@ public class multiple_inheritance_interfaces_runme {
|
||||||
checkBaseAndInterfaces(L.class, false, "", new String[] {"IJ", "IK", "IL"});
|
checkBaseAndInterfaces(L.class, false, "", new String[] {"IJ", "IK", "IL"});
|
||||||
checkBaseAndInterfaces(M.class, false, "", new String[] {"IJ", "IK", "IL"});
|
checkBaseAndInterfaces(M.class, false, "", new String[] {"IJ", "IK", "IL"});
|
||||||
|
|
||||||
|
checkBaseAndInterfaces(P.class, false, "", new String[] {});
|
||||||
|
checkBaseAndInterfaces(IQ.class, true, "", new String[] {});
|
||||||
|
checkBaseAndInterfaces(Q.class, false, "", new String[] {"IQ"});
|
||||||
|
checkBaseAndInterfaces(R.class, false, "P", new String[] {"IQ"});
|
||||||
|
checkBaseAndInterfaces(S.class, false, "P", new String[] {"IQ"});
|
||||||
|
checkBaseAndInterfaces(T.class, false, "", new String[] {"IQ"});
|
||||||
|
checkBaseAndInterfaces(U.class, false, "R", new String[] {});
|
||||||
|
checkBaseAndInterfaces(V.class, false, "S", new String[] {});
|
||||||
|
checkBaseAndInterfaces(W.class, false, "T", new String[] {});
|
||||||
|
|
||||||
// overloaded methods check
|
// overloaded methods check
|
||||||
D d = new D();
|
D d = new D();
|
||||||
d.ia();
|
d.ia();
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,6 @@ DECLARE_INTERFACE_RENAME(IA, A, IA)
|
||||||
DECLARE_INTERFACE_RENAME(IB, B, IB)
|
DECLARE_INTERFACE_RENAME(IB, B, IB)
|
||||||
DECLARE_INTERFACE_RENAME(IC, C, IC)
|
DECLARE_INTERFACE_RENAME(IC, C, IC)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
%inline %{
|
%inline %{
|
||||||
struct IA {
|
struct IA {
|
||||||
virtual void ia() {};
|
virtual void ia() {};
|
||||||
|
|
@ -30,3 +29,17 @@ struct IK : IJ {};
|
||||||
struct IL : IK {};
|
struct IL : IK {};
|
||||||
struct M : IL {};
|
struct M : IL {};
|
||||||
%}
|
%}
|
||||||
|
|
||||||
|
#if defined(SWIGJAVA) || defined(SWIGCSHARP)
|
||||||
|
DECLARE_INTERFACE_RENAME(IQ, Q, IQ)
|
||||||
|
#endif
|
||||||
|
%inline %{
|
||||||
|
struct P { virtual void p() {}; };
|
||||||
|
struct IQ { virtual void iq() {}; };
|
||||||
|
struct R : IQ, P {};
|
||||||
|
struct S : P, IQ {};
|
||||||
|
struct T : IQ {};
|
||||||
|
struct U : R {};
|
||||||
|
struct V : S {};
|
||||||
|
struct W : T {};
|
||||||
|
%}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue