fix compactdefarg + const ref

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6489 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2004-10-23 06:45:10 +00:00
commit 8c3bbd578f

View file

@ -172,11 +172,15 @@ int Swig_cargs(Wrapper *w, ParmList *p) {
tycode = SwigType_type(type);
if (tycode == T_REFERENCE) {
if (pvalue) {
SwigType *tvalue;
String *defname, *defvalue, *rvalue;
rvalue = SwigType_typedef_resolve_all(pvalue);
defname = NewStringf("%s_defvalue", lname);
defvalue = NewStringf("%s = %s", SwigType_str(type,defname), rvalue);
tvalue = Copy(type);
SwigType_del_reference(tvalue);
defvalue = NewStringf("%s = %s", SwigType_lstr(tvalue,defname), rvalue);
Wrapper_add_localv(w,defname, defvalue, NIL);
Delete(tvalue);
Delete(rvalue);
Delete(defname);
Delete(defvalue);