Fix Java %interface family of macros
when returning by const pointer reference Closes #1987
This commit is contained in:
parent
499eb5806f
commit
429288fa1c
11 changed files with 154 additions and 3 deletions
|
|
@ -216,6 +216,7 @@ public class multiple_inheritance_abstract_runme {
|
|||
check(multiple_inheritance_abstract.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed");
|
||||
check(multiple_inheritance_abstract.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed");
|
||||
check(multiple_inheritance_abstract.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed");
|
||||
|
||||
// Return pointers
|
||||
check(multiple_inheritance_abstract.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed");
|
||||
|
|
@ -234,6 +235,15 @@ public class multiple_inheritance_abstract_runme {
|
|||
check(multiple_inheritance_abstract.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
|
||||
|
||||
// Return const pointer references
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
|
||||
|
||||
// Return by value (sliced objects)
|
||||
check(multiple_inheritance_abstract.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");
|
||||
|
|
|
|||
|
|
@ -217,6 +217,7 @@ public class multiple_inheritance_nspace_runme {
|
|||
check(multiple_inheritance_nspace.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed");
|
||||
check(multiple_inheritance_nspace.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed");
|
||||
check(multiple_inheritance_nspace.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed");
|
||||
|
||||
// Return pointers
|
||||
check(multiple_inheritance_nspace.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed");
|
||||
|
|
@ -235,6 +236,15 @@ public class multiple_inheritance_nspace_runme {
|
|||
check(multiple_inheritance_nspace.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
|
||||
|
||||
// Return const pointer references
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
|
||||
|
||||
// Return by value (sliced objects)
|
||||
check(multiple_inheritance_nspace.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");
|
||||
|
|
|
|||
|
|
@ -301,6 +301,15 @@ public class multiple_inheritance_shared_ptr_runme {
|
|||
check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
|
||||
|
||||
// Return const pointer references
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
|
||||
|
||||
// Return by value (sliced objects)
|
||||
check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");
|
||||
|
|
|
|||
|
|
@ -224,6 +224,7 @@ public class multiple_inheritance_abstract_runme {
|
|||
check(multiple_inheritance_abstract.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed");
|
||||
check(multiple_inheritance_abstract.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed");
|
||||
check(multiple_inheritance_abstract.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed");
|
||||
|
||||
// Return pointers
|
||||
check(multiple_inheritance_abstract.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed");
|
||||
|
|
@ -242,6 +243,15 @@ public class multiple_inheritance_abstract_runme {
|
|||
check(multiple_inheritance_abstract.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
|
||||
|
||||
// Return const pointer references
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
|
||||
|
||||
// Return by value (sliced objects)
|
||||
check(multiple_inheritance_abstract.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_abstract.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");
|
||||
|
|
|
|||
|
|
@ -244,6 +244,15 @@ public class multiple_inheritance_nspace_runme {
|
|||
check(multiple_inheritance_nspace.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
|
||||
|
||||
// Return const pointer references
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
|
||||
|
||||
// Return by value (sliced objects)
|
||||
check(multiple_inheritance_nspace.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_nspace.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");
|
||||
|
|
|
|||
|
|
@ -309,6 +309,15 @@ public class multiple_inheritance_shared_ptr_runme {
|
|||
check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
|
||||
|
||||
// Return const pointer references
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
|
||||
|
||||
// Return by value (sliced objects)
|
||||
check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
|
||||
check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ namespace Space {
|
|||
struct CBase1 {
|
||||
virtual void cbase1x() {
|
||||
return;
|
||||
}
|
||||
}
|
||||
virtual int cbase1y() {
|
||||
return 1;
|
||||
}
|
||||
|
|
@ -306,6 +306,36 @@ namespace Space {
|
|||
return d;
|
||||
}
|
||||
|
||||
// Return const pointer references
|
||||
CBase1 *const&MakeConstPtrRefDerived1_CBase1() {
|
||||
static CBase1 *d = new Derived1();
|
||||
return d;
|
||||
}
|
||||
CBase2 *const&MakeConstPtrRefDerived1_CBase2() {
|
||||
static CBase2 *const& d = new Derived1();
|
||||
return d;
|
||||
}
|
||||
CBase1 *const&MakeConstPtrRefDerived2_CBase1() {
|
||||
static CBase1 *const& d = new Derived2();
|
||||
return d;
|
||||
}
|
||||
ABase1 *const&MakeConstPtrRefDerived2_ABase1() {
|
||||
static ABase1 *const& d = new Derived2();
|
||||
return d;
|
||||
}
|
||||
ABase1 *const&MakeConstPtrRefDerived3_ABase1() {
|
||||
static ABase1 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
CBase1 *const&MakeConstPtrRefDerived3_CBase1() {
|
||||
static CBase1 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
CBase2 *const&MakeConstPtrRefDerived3_CBase2() {
|
||||
static CBase2 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
|
||||
// Return by value (sliced objects)
|
||||
CBase1 MakeValDerived1_CBase1() {
|
||||
return Derived1();
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ namespace Space {
|
|||
struct CBase1 {
|
||||
virtual void cbase1x() {
|
||||
return;
|
||||
}
|
||||
}
|
||||
virtual int cbase1y() {
|
||||
return 1;
|
||||
}
|
||||
|
|
@ -315,6 +315,36 @@ namespace Space {
|
|||
return d;
|
||||
}
|
||||
|
||||
// Return const pointer references
|
||||
CBase1 *const&MakeConstPtrRefDerived1_CBase1() {
|
||||
static CBase1 *d = new Derived1();
|
||||
return d;
|
||||
}
|
||||
CBase2 *const&MakeConstPtrRefDerived1_CBase2() {
|
||||
static CBase2 *const& d = new Derived1();
|
||||
return d;
|
||||
}
|
||||
CBase1 *const&MakeConstPtrRefDerived2_CBase1() {
|
||||
static CBase1 *const& d = new Derived2();
|
||||
return d;
|
||||
}
|
||||
ABase1 *const&MakeConstPtrRefDerived2_ABase1() {
|
||||
static ABase1 *const& d = new Derived2();
|
||||
return d;
|
||||
}
|
||||
ABase1 *const&MakeConstPtrRefDerived3_ABase1() {
|
||||
static ABase1 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
CBase1 *const&MakeConstPtrRefDerived3_CBase1() {
|
||||
static CBase1 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
CBase2 *const&MakeConstPtrRefDerived3_CBase2() {
|
||||
static CBase2 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
|
||||
// Return by value (sliced objects)
|
||||
CBase1 MakeValDerived1_CBase1() {
|
||||
return Derived1();
|
||||
|
|
|
|||
|
|
@ -424,6 +424,36 @@ namespace Space {
|
|||
return d;
|
||||
}
|
||||
|
||||
// Return const pointer references
|
||||
CBase1 *const&MakeConstPtrRefDerived1_CBase1() {
|
||||
static CBase1 *d = new Derived1();
|
||||
return d;
|
||||
}
|
||||
CBase2 *const&MakeConstPtrRefDerived1_CBase2() {
|
||||
static CBase2 *const& d = new Derived1();
|
||||
return d;
|
||||
}
|
||||
CBase1 *const&MakeConstPtrRefDerived2_CBase1() {
|
||||
static CBase1 *const& d = new Derived2();
|
||||
return d;
|
||||
}
|
||||
ABase1 *const&MakeConstPtrRefDerived2_ABase1() {
|
||||
static ABase1 *const& d = new Derived2();
|
||||
return d;
|
||||
}
|
||||
ABase1 *const&MakeConstPtrRefDerived3_ABase1() {
|
||||
static ABase1 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
CBase1 *const&MakeConstPtrRefDerived3_CBase1() {
|
||||
static CBase1 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
CBase2 *const&MakeConstPtrRefDerived3_CBase2() {
|
||||
static CBase2 *const& d = new Derived3();
|
||||
return d;
|
||||
}
|
||||
|
||||
// Return by value (sliced objects)
|
||||
CBase1 MakeValDerived1_CBase1() {
|
||||
return Derived1();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue