1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
%module return_value_scope %inline %{ namespace Hell { class Foo { public: Foo(int) { }; }; class Bar { public: typedef Foo fooref; }; class Spam { public: typedef Bar base; typedef base::fooref rettype; rettype test() { return rettype(1); } }; } %}