| %module template_default_inherit | |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) A::nindex; /* Ruby, wrong constant name */ | |
| %inline %{ | |
| template <class C> | |
| struct A | |
| { | |
| typedef unsigned int size_type; | |
| static const size_type nindex = static_cast<size_type>(-1); | |
| }; | |
| template <class C> | |
| struct B : A<C> | |
| { | |
| typedef typename A<C>::size_type size_type; | |
| void say_hi(size_type index = A<C>::nindex) {} | |
| }; | |
| %} | |
| %template(A_int) A<int>; | |
| %template(B_int) B<int>; | |