Fix std::vector<> Java typemaps for primitive types

For such types, the generated proxy class inherited from
java.util.AbstractSet<BoxedType<T>> (where BoxedType<T> is "Integer",
for example, when T is "int"), but defined an overloaded add() taking T,
instead of overriding the base class virtual add() taking BoxedType<T>,
resulting in an exception being thrown whenever add() was called during
run-time.

Extend Java unit test to bring it to parity with C# one added in the
previous commit.

See #1568.
This commit is contained in:
Vadim Zeitlin 2019-07-11 13:07:10 +02:00
commit 2be293a647
3 changed files with 14 additions and 4 deletions

View file

@ -40,10 +40,7 @@
};
%}
// This one doesn't work in Java correctly yet.
#ifdef SWIGCSHARP
%template(IntSet) std::set<int>;
#endif
%template(StringSet) std::set<std::string>;
%template(FooSet) std::set<Foo>;
#endif