Hi John, It worked, but something went wrong, but it looks the solution is simple. Operator+ and operator<<
Need ".operator" like this: a2dBoundingBox* returns = &(*self).operator+(*arg1); a2dIOHandlerXMLWrite* returns = &(*self).operator<<(wc); After that is compiles again, Klaas Here two of the problems (others equal): // %operator a2dBoundingBox& operator+( a2dBoundingBox& ) static int LUACALL wxLua_a2dBoundingBox_op_add(lua_State *L) { // a2dBoundingBox arg1 a2dBoundingBox * arg1 = (a2dBoundingBox *)wxluaT_getuserdatatype(L, 2, wxluatype_a2dBoundingBox); // get this a2dBoundingBox * self = (a2dBoundingBox *)wxluaT_getuserdatatype(L, 1, wxluatype_a2dBoundingBox); // call op_add a2dBoundingBox* returns = &(*self).operator+(*arg1); // push the result datatype wxluaT_pushuserdatatype(L, returns, wxluatype_a2dBoundingBox); return 1; } // %operator a2dIOHandlerXMLWrite& operator<<(wchar_t wc) static int LUACALL wxLua_a2dIOHandlerXMLWrite_op_lshift11(lua_State *L) { // wchar_t wc wchar_t wc = (wchar_t)wxlua_getnumbertype(L, 2); // get this a2dIOHandlerXMLWrite * self = (a2dIOHandlerXMLWrite *)wxluaT_getuserdatatype(L, 1, wxluatype_a2dIOHandlerXMLWrite); // call op_lshift a2dIOHandlerXMLWrite* returns = &(*self).operator<<(wc); // push the result datatype wxluaT_pushuserdatatype(L, returns, wxluatype_a2dIOHandlerXMLWrite); return 1; } ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ wxlua-users mailing list wxlua-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wxlua-users