diff --git a/Examples/test-suite/director_frob.i b/Examples/test-suite/director_frob.i index 02768cf5c..5b6994257 100644 --- a/Examples/test-suite/director_frob.i +++ b/Examples/test-suite/director_frob.i @@ -47,4 +47,10 @@ virtual ~Ops() {} virtual operator int() { return 0; } }; + + struct Prims { + virtual ~Prims() {} + virtual unsigned long long ull(unsigned long long i, unsigned long long j) { return i + j; } + unsigned long long callull(int i, int j) { return ull(i, j); } + }; %} diff --git a/Examples/test-suite/java/director_frob_runme.java b/Examples/test-suite/java/director_frob_runme.java index 4f1ec2a60..ac1c4eb95 100644 --- a/Examples/test-suite/java/director_frob_runme.java +++ b/Examples/test-suite/java/director_frob_runme.java @@ -19,6 +19,21 @@ public class director_frob_runme String s = foo.abs_method(); if (!s.equals("Bravo::abs_method()")) - throw new RuntimeException( "error" ); + throw new RuntimeException( "error" ); + + Prims prims = new PrimsDerived(); + java.math.BigInteger bi = prims.callull(200, 50); + java.math.BigInteger biCheck = new java.math.BigInteger("150"); + if (bi.compareTo(biCheck) != 0) + throw new RuntimeException( "failed got:" + bi); } -} \ No newline at end of file +} + +class PrimsDerived extends Prims { + PrimsDerived() { + super(); + } + public java.math.BigInteger ull(java.math.BigInteger i, java.math.BigInteger j) { + return i.subtract(j); + } +}