fix for nested template defined out of class (issue #265)

This commit is contained in:
Vladimir Kalinin 2014-11-25 19:38:37 +03:00
commit 274977154f
2 changed files with 34 additions and 4 deletions

View file

@ -31,10 +31,34 @@ namespace ns {
struct Nested1;
public:
struct Nested2;
template <class T> class Abstract;
class Real;
};
struct Outer1::Nested2 {
int data;
};
class Class {
public:
template <class T> class Abstract;
class Real;
};
template <class T> class Class::Abstract {
public:
virtual void Method() = 0;
};
#endif
%}
#ifndef __clang__
%template(abstract_int) Class::Abstract <int>;
#endif
%inline %{
#ifndef __clang__
class Class::Real : public Abstract <int> {
public:
virtual void Method() {}
};
#endif
%}