diff options
Diffstat (limited to 'Examples/test-suite/template_type_collapse.i')
-rw-r--r-- | Examples/test-suite/template_type_collapse.i | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/Examples/test-suite/template_type_collapse.i b/Examples/test-suite/template_type_collapse.i new file mode 100644 index 000000000..f6459db36 --- /dev/null +++ b/Examples/test-suite/template_type_collapse.i @@ -0,0 +1,23 @@ +%module template_type_collapse + +// Not attempted yet: reference collapsing + +// Tests merging multiple const when instantiating template types +%inline %{ +template <typename T> struct Conster { + const T *constptr; + Conster() : constptr() {} + void cccc1(T const& t) {} + void cccc2(const T& t) {} + void cccc3(const T t) {} + void cccc4(T const t) {} +}; +template <typename T> struct DerivedConster : Conster<const T> { + const T& dddd(const T& t) { + return t; + } +}; +%} +%template(ConsterInt) Conster<const int>; +%template(DerivedConsterInt) DerivedConster<const int>; + |