From aef25cff0cd3fc1bbae1a8d26825fe5f80fce770 Mon Sep 17 00:00:00 2001 From: William S Fulton Date: Fri, 5 Jan 2018 18:31:48 +0000 Subject: [PATCH] Add missing default_arg_expressions.i testcase --- Examples/test-suite/default_arg_expressions.i | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Examples/test-suite/default_arg_expressions.i diff --git a/Examples/test-suite/default_arg_expressions.i b/Examples/test-suite/default_arg_expressions.i new file mode 100644 index 000000000..ca2a27e33 --- /dev/null +++ b/Examples/test-suite/default_arg_expressions.i @@ -0,0 +1,30 @@ +%module default_arg_expressions + +%warnfilter(SWIGWARN_TYPEMAP_SWIGTYPELEAK_MSG) ptr; +%warnfilter(SWIGWARN_TYPEMAP_SWIGTYPELEAK_MSG) UsdGeomTokensPtr; +%immutable UsdGeomTokens; + +%inline %{ +struct Numbers { + int val; + int *ptr; + Numbers() : val(), ptr(&val) {} +}; +struct TfToken { + Numbers val; + Numbers *ptr; + TfToken() : val(), ptr(&val) {} +}; +struct Tokens { + const TfToken face; + const TfToken *pface; + Tokens() : face(), pface(&face) {} +}; +static Tokens UsdGeomTokens; +static Tokens *UsdGeomTokensPtr = &UsdGeomTokens; +void CreateMaterialBindSubset1(const Tokens &elementType = UsdGeomTokens) {} +void CreateMaterialBindSubset2(int num = UsdGeomTokensPtr->pface->val.val) {} +void CreateMaterialBindSubset3(int num = UsdGeomTokensPtr->pface->ptr->val) {} +void CreateMaterialBindSubset4(int num = UsdGeomTokensPtr->face.val.val) {} +//void CreateMaterialBindSubset5(int num = UsdGeomTokens.face.val.val) {} +%}