swig/Examples/test-suite/template_ns_scope.i

39 lines
590 B
OpenEdge ABL

%module template_ns_scope
// Tests a scoping bug reported by Marcelo Matus.
%inline %{
namespace hi {
enum Hello { Hi, Hola };
template <Hello h>
struct A
{
public:
A() {} // *** Here, the const. breaks swig ***
// *** swig works without it ***
};
namespace hello
{
template <Hello H>
struct B : A<H>
{
int say_hi() { return 0; }
};
}
}
%}
namespace hi
{
%template(A_Hi) A<Hi>;
namespace hello
{
%template(B_Hi) B<Hi>;
}
}