diff options
Diffstat (limited to 'Examples/test-suite/nested_scope.i')
-rw-r--r-- | Examples/test-suite/nested_scope.i | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Examples/test-suite/nested_scope.i b/Examples/test-suite/nested_scope.i index 789478361..bd66eec73 100644 --- a/Examples/test-suite/nested_scope.i +++ b/Examples/test-suite/nested_scope.i @@ -26,4 +26,42 @@ namespace ns { #endif }; } + class Outer1 { + struct Nested1; + public: + struct Nested2; +#ifdef __clang__ + struct Nested2 { + int data; + }; +#endif + template <class T> class AbstractClass; + class Real; + }; +#ifndef __clang__ + struct Outer1::Nested2 { + int data; + }; +#endif + + class Klass { + public: + template <class T> class AbstractClass; + class Real; + }; + + template <class T> class Klass::AbstractClass { + public: + virtual void Method() = 0; + virtual ~AbstractClass() {} + }; +%} + +%template(abstract_int) Klass::AbstractClass <int>; + +%inline %{ + class Klass::Real : public AbstractClass <int> { + public: + virtual void Method() {} + }; %} |