diff --git a/Source/Modules/lang.cxx b/Source/Modules/lang.cxx index 6d125cd86..b6c840183 100644 --- a/Source/Modules/lang.cxx +++ b/Source/Modules/lang.cxx @@ -1169,7 +1169,8 @@ Language::membervariableHandler(Node *n) { target = NewStringf("%s->%s", Swig_cparm_name(0,0),name); tm = Swig_typemap_lookup_new("memberin",n,target,0); } - Swig_MembersetToFunction(n,ClassType,Extend | SmartPointer); + int VarRef = CPlusPlus ? CWRAP_VAR_REFERENCE : 0; + Swig_MembersetToFunction(n,ClassType,Extend | SmartPointer| VarRef); if (!Extend) { /* Check for a member in typemap here */ @@ -1202,7 +1203,8 @@ Language::membervariableHandler(Node *n) { } /* Emit get function */ { - Swig_MembergetToFunction(n,ClassType,Extend | SmartPointer); + int VarRef = CPlusPlus ? CWRAP_VAR_REFERENCE : 0; + Swig_MembergetToFunction(n,ClassType,Extend | SmartPointer| VarRef); Setattr(n,"sym:name", mrename_get); functionWrapper(n); }