Removed the WrapperFunction class entirely. Everything uses the C version.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@557 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
30b1e56d41
commit
f50c94d933
15 changed files with 188 additions and 316 deletions
|
|
@ -450,7 +450,7 @@ GUILE::create_function (char *name, char *iname, DataType *d, ParmList *l)
|
|||
int numargs = 0;
|
||||
int numopt = 0;
|
||||
|
||||
Wrapper_add_local (f,(char*)"SCM", (char*)"gswig_result", 0);
|
||||
Wrapper_add_local (f,"gswig_result", "SCM gswig_result");
|
||||
|
||||
// Now write code to extract the parameters (this is super ugly)
|
||||
|
||||
|
|
|
|||
|
|
@ -560,7 +560,7 @@ void JAVA::create_function(char *name, char *iname, DataType *t, ParmList *l)
|
|||
}
|
||||
|
||||
if(t->type != T_VOID || t->is_pointer) {
|
||||
Wrapper_add_local(f,jnirettype, (char*)"_jresult", (char*)"0");
|
||||
Wrapper_add_localv(f,"_jresult", jnirettype, "_jresult = 0",0);
|
||||
}
|
||||
|
||||
Printf(f_java, " %s ", method_modifiers);
|
||||
|
|
@ -654,9 +654,9 @@ void JAVA::create_function(char *name, char *iname, DataType *t, ParmList *l)
|
|||
DOHString *basic_jniptrtype = NewStringf("%s*",basic_jnitype);
|
||||
DOHString *source_length = NewStringf("%s%s)", JNICALL((char*)"GetArrayLength"), source);
|
||||
|
||||
target_copy = Swig_copy_string(Wrapper_new_local(f,Char(basic_jniptrtype), target, NULL));
|
||||
target_length = Swig_copy_string(Wrapper_new_local(f,(char*)"jsize", target, Char(source_length)));
|
||||
if(local_i == NULL) local_i = Swig_copy_string(Wrapper_new_local(f,(char*)"int", (char*)"i", NULL));
|
||||
target_copy = Swig_copy_string(Wrapper_new_localv(f,target,Char(basic_jniptrtype), target, 0));
|
||||
target_length = Swig_copy_string(Wrapper_new_localv(f,target,"jsize", target, "=", Char(source_length),0));
|
||||
if(local_i == NULL) local_i = Swig_copy_string(Wrapper_new_local(f,"i","int i"));
|
||||
|
||||
DOHString *scalarFunc = NewStringf("Get%sArrayElements",scalarType);
|
||||
|
||||
|
|
|
|||
|
|
@ -328,9 +328,9 @@ MZSCHEME::create_function (char *name, char *iname, DataType *d, ParmList *l)
|
|||
int numopt = 0;
|
||||
|
||||
// adds local variables : type name
|
||||
Wrapper_add_local (f,(char*)"char *", (char*)"_tempc",0);
|
||||
Wrapper_add_local (f,(char*)"int", (char*)"_len",0);
|
||||
Wrapper_add_local (f,(char*)"Scheme_Object *", (char*)"swig_result",0);
|
||||
Wrapper_add_local (f,"_tempc","char *_tempc");
|
||||
Wrapper_add_local (f,"_len", "int _len");
|
||||
Wrapper_add_local (f,"swig_result", "Scheme_Object *swig_result");
|
||||
|
||||
// Now write code to extract the parameters (this is super ugly)
|
||||
|
||||
|
|
@ -452,13 +452,13 @@ MZSCHEME::create_function (char *name, char *iname, DataType *d, ParmList *l)
|
|||
// returning multiple values
|
||||
if(argout_set) {
|
||||
if(d->type == T_VOID) {
|
||||
Wrapper_add_local(f,(char*)"int", (char*)"_lenv", (char*)"0");
|
||||
Wrapper_add_local(f,(char*)"Scheme_Object *", (char*)"_values[MAXVALUES]",0);
|
||||
Wrapper_add_local(f,"_lenv","int _lenv = 0");
|
||||
Wrapper_add_local(f,"_values", "Scheme_Object * _values[MAXVALUES]");
|
||||
Printv(f->code, tab4, "swig_result = scheme_values(_lenv, _values);\n", 0);
|
||||
}
|
||||
else {
|
||||
Wrapper_add_local(f,(char*)"int", (char*)"_lenv", (char*)"1");
|
||||
Wrapper_add_local(f,(char*)"Scheme_Object *",(char*) "_values[MAXVALUES]",0);
|
||||
Wrapper_add_local(f,"_lenv","int _lenv = 1");
|
||||
Wrapper_add_local(f,"_values", "Scheme_Object * _values[MAXVALUES]");
|
||||
Printv(f->code, tab4, "_values[0] = swig_result;\n", 0);
|
||||
Printv(f->code, tab4, "swig_result = scheme_values(_lenv, _values);\n", 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -766,7 +766,7 @@ void PERL5::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
pcount = emit_args(d, l, f);
|
||||
numopt = l->numopt();
|
||||
|
||||
Wrapper_add_local(f,(char*)"int",(char*)"argvi = 0",0);
|
||||
Wrapper_add_local(f,"argvi","int argvi = 0");
|
||||
|
||||
// Check the number of arguments
|
||||
|
||||
|
|
@ -917,7 +917,7 @@ void PERL5::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
|
||||
if (num_saved) {
|
||||
sprintf(temp,"_saved[%d]",num_saved);
|
||||
Wrapper_add_local(f,(char*)"SV *",temp,0);
|
||||
Wrapper_add_localv(f,"_saved","SV *",temp,0);
|
||||
}
|
||||
|
||||
// Now write code to make the function call
|
||||
|
|
@ -945,7 +945,7 @@ void PERL5::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
Printf(f->code," sv_setnv(ST(argvi++), (double) _result);\n");
|
||||
break;
|
||||
case T_CHAR :
|
||||
Wrapper_add_local(f,(char*)"char", (char*)"_ctemp[2]",0);
|
||||
Wrapper_add_local(f,"_ctemp", "char _ctemp[2]");
|
||||
Printv(f->code,
|
||||
tab4, "_ctemp[0] = _result;\n",
|
||||
tab4, "_ctemp[1] = 0;\n",
|
||||
|
|
@ -1009,7 +1009,7 @@ void PERL5::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
|
||||
// Add the dXSARGS last
|
||||
|
||||
Wrapper_add_local(f,(char*)"dXSARGS",(char*)"",0);
|
||||
Wrapper_add_local(f,"dXSARGS","dXSARGS");
|
||||
|
||||
// Substitute the cleanup code
|
||||
Replace(f->code,"$cleanup",cleanup,DOH_REPLACE_ANY);
|
||||
|
|
@ -1201,7 +1201,7 @@ void PERL5::link_variable(char *name, char *iname, DataType *t)
|
|||
// Get as a pointer value
|
||||
|
||||
t->is_pointer++;
|
||||
Wrapper_add_local(setf,(char*)"void",(char*)"*_temp",0);
|
||||
Wrapper_add_local(setf,"_temp", "void *_temp");
|
||||
get_pointer(iname,(char*)"value",(char*)"sv",(char*)"_temp", t, setf->code, (char*)"return(1)");
|
||||
Printv(setf->code, tab4, name, " = *(", t->print_cast(), " _temp);\n", 0);
|
||||
t->is_pointer--;
|
||||
|
|
@ -1214,7 +1214,7 @@ void PERL5::link_variable(char *name, char *iname, DataType *t)
|
|||
} else {
|
||||
// Have some sort of pointer type here, Process it differently
|
||||
if ((t->type == T_CHAR) && (t->is_pointer == 1)) {
|
||||
Wrapper_add_local(setf,(char*)"char",(char*)"*_a",0);
|
||||
Wrapper_add_local(setf,"_a","char *_a");
|
||||
Printf(setf->code," _a = (char *) SvPV(sv,PL_na);\n");
|
||||
|
||||
if (CPlusPlus)
|
||||
|
|
@ -1231,7 +1231,7 @@ void PERL5::link_variable(char *name, char *iname, DataType *t)
|
|||
} else {
|
||||
// Set the value of a pointer
|
||||
|
||||
Wrapper_add_local(setf,(char*)"void",(char*)"*_temp",0);
|
||||
Wrapper_add_local(setf,"_temp","void *_temp");
|
||||
get_pointer(iname,(char*)"value",(char*)"sv",(char*)"_temp", t, setf->code, (char*)"return(1)");
|
||||
Printv(setf->code,tab4, name, " = ", t->print_cast(), " _temp;\n", 0);
|
||||
}
|
||||
|
|
@ -1273,7 +1273,7 @@ void PERL5::link_variable(char *name, char *iname, DataType *t)
|
|||
Printv(vinit, tab4, "sv_setnv(sv,(double)", name, ");\n",0);
|
||||
break;
|
||||
case T_CHAR :
|
||||
Wrapper_add_local(getf,(char*)"char",(char*)"_ptemp[2]",0);
|
||||
Wrapper_add_local(getf,"_ptemp","char _ptemp[2]");
|
||||
Printv(getf->code,
|
||||
tab4, "_ptemp[0] = ", name, ";\n",
|
||||
tab4, "_ptemp[1] = 0;\n",
|
||||
|
|
@ -1287,7 +1287,7 @@ void PERL5::link_variable(char *name, char *iname, DataType *t)
|
|||
tab4, "sv_setiv(rsv,(IV) &", name, ");\n",
|
||||
0);
|
||||
|
||||
Wrapper_add_local(getf,(char*)"SV",(char*)"*rsv",0);
|
||||
Wrapper_add_local(getf,"rsv","SV *rsv");
|
||||
Printv(vinit, tab4, "sv_setref_pv(sv,\"", t->print_mangle(), "\",(void *) &", name, ");\n",0);
|
||||
t->is_pointer--;
|
||||
|
||||
|
|
@ -1307,7 +1307,7 @@ void PERL5::link_variable(char *name, char *iname, DataType *t)
|
|||
tab4, "sv_setiv(rsv,(IV) ", name, ");\n",
|
||||
0);
|
||||
|
||||
Wrapper_add_local(getf,(char*)"SV",(char*)"*rsv",0);
|
||||
Wrapper_add_local(getf,"rsv","SV *rsv");
|
||||
Printv(vinit, tab4, "sv_setref_pv(sv,\"", t->print_mangle(), "\",(void *) 1);\n",0);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -653,7 +653,7 @@ void PYTHON::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
|
||||
emit_function_header(f, wname);
|
||||
|
||||
Wrapper_add_local(f,(char*)"PyObject *",(char*)"_resultobj",0);
|
||||
Wrapper_add_local(f,"_resultobj", "PyObject *_resultobj");
|
||||
|
||||
// Get the function usage string for later use
|
||||
|
||||
|
|
@ -712,7 +712,7 @@ void PYTHON::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
|
||||
if ((tm = typemap_lookup((char*)"in",(char*)"python",p->t,p->name,source,target,f))) {
|
||||
Putc('O',parse_args);
|
||||
Wrapper_add_local(f, (char*)"PyObject *",source,(char*)"0");
|
||||
Wrapper_add_localv(f, source, "PyObject *",source,0);
|
||||
Printf(arglist,"&%s",source);
|
||||
if (i >= (pcount-numopt))
|
||||
Printv(get_pointers, tab4, "if (", source, ")\n",
|
||||
|
|
@ -765,9 +765,9 @@ void PYTHON::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
sprintf(tempb,"tempbool%d",i);
|
||||
Putc('i',parse_args);
|
||||
if (!p->defvalue)
|
||||
Wrapper_add_local(f,(char*)"int",tempb,0);
|
||||
Wrapper_add_localv(f,tempb,"int",tempb,0);
|
||||
else
|
||||
Wrapper_add_local(f,(char*)"int",tempb,tempval);
|
||||
Wrapper_add_localv(f,tempb,"int",tempb, "=",tempval,0);
|
||||
Printv(get_pointers, tab4, target, " = ", p->t->print_cast(), " ", tempb, ";\n", 0);
|
||||
Printf(arglist,"&%s",tempb);
|
||||
}
|
||||
|
|
@ -813,7 +813,7 @@ void PYTHON::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
sprintf(target,"_arg%d", i);
|
||||
sprintf(temp,"argument %d",i+1);
|
||||
|
||||
Wrapper_add_local(f,(char*)"PyObject *", source,(char*)"0");
|
||||
Wrapper_add_localv(f,source,"PyObject *",source,"=0",0);
|
||||
Printf(arglist,"&%s",source);
|
||||
get_pointer(iname, temp, source, target, p->t, get_pointers, (char*)"NULL");
|
||||
}
|
||||
|
|
@ -1113,7 +1113,7 @@ void PYTHON::link_variable(char *name, char *iname, DataType *t) {
|
|||
case T_SINT: case T_SSHORT: case T_SLONG:
|
||||
case T_SCHAR: case T_UCHAR: case T_BOOL:
|
||||
// Get an integer value
|
||||
Wrapper_add_local(setf,t->print_type(), (char*)"tval",0);
|
||||
Wrapper_add_localv(setf,"tval",t->print_type(),"tval",0);
|
||||
Printv(setf->code,
|
||||
tab4, "tval = ", t->print_cast(), "PyInt_AsLong(val);\n",
|
||||
tab4, "if (PyErr_Occurred()) {\n",
|
||||
|
|
@ -1127,7 +1127,7 @@ void PYTHON::link_variable(char *name, char *iname, DataType *t) {
|
|||
|
||||
case T_FLOAT: case T_DOUBLE:
|
||||
// Get a floating point value
|
||||
Wrapper_add_local(setf,t->print_type(), (char*)"tval",0);
|
||||
Wrapper_add_localv(setf,"tval",t->print_type(), "tval",0);
|
||||
Printv(setf->code,
|
||||
tab4, "tval = ", t->print_cast(), "PyFloat_AsDouble(val);\n",
|
||||
tab4, "if (PyErr_Occurred()) {\n",
|
||||
|
|
@ -1142,7 +1142,7 @@ void PYTHON::link_variable(char *name, char *iname, DataType *t) {
|
|||
// A single ascii character
|
||||
|
||||
case T_CHAR:
|
||||
Wrapper_add_local(setf,(char*)"char *", (char*)"tval",0);
|
||||
Wrapper_add_local(setf,"tval","char * tval");
|
||||
Printv(setf->code,
|
||||
tab4, "tval = (char *) PyString_AsString(val);\n",
|
||||
tab4, "if (PyErr_Occurred()) {\n",
|
||||
|
|
@ -1155,7 +1155,7 @@ void PYTHON::link_variable(char *name, char *iname, DataType *t) {
|
|||
break;
|
||||
case T_USER:
|
||||
t->is_pointer++;
|
||||
Wrapper_add_local(setf,t->print_type(),(char*)"temp",0);
|
||||
Wrapper_add_localv(setf,"temp",t->print_type(),"temp",0);
|
||||
get_pointer(iname,(char*)"value",(char*)"val",(char*)"temp",t,setf->code,(char*)"1");
|
||||
Printv(setf->code, tab4, name, " = *temp;\n", 0);
|
||||
t->is_pointer--;
|
||||
|
|
@ -1168,7 +1168,7 @@ void PYTHON::link_variable(char *name, char *iname, DataType *t) {
|
|||
// Parse a pointer value
|
||||
|
||||
if ((t->type == T_CHAR) && (t->is_pointer == 1)) {
|
||||
Wrapper_add_local(setf,(char*)"char *", (char*)"tval",0);
|
||||
Wrapper_add_local(setf,"tval","char * tval");
|
||||
Printv(setf->code,
|
||||
tab4, "tval = (char *) PyString_AsString(val);\n",
|
||||
tab4, "if (PyErr_Occurred()) {\n",
|
||||
|
|
@ -1195,7 +1195,7 @@ void PYTHON::link_variable(char *name, char *iname, DataType *t) {
|
|||
|
||||
// Is a generic pointer value.
|
||||
|
||||
Wrapper_add_local(setf,t->print_type(),(char*)"temp",0);
|
||||
Wrapper_add_localv(setf,"temp", t->print_type(), "temp",0);
|
||||
get_pointer(iname,(char*)"value",(char*)"val",(char*)"temp",t,setf->code,(char*)"1");
|
||||
Printv(setf->code,tab4, name, " = temp;\n", 0);
|
||||
}
|
||||
|
|
@ -1223,7 +1223,7 @@ void PYTHON::link_variable(char *name, char *iname, DataType *t) {
|
|||
// ----------------------------------------------------------------
|
||||
|
||||
Printf(getf->def,"static PyObject *%s_get() {", wname);
|
||||
Wrapper_add_local(getf,(char*)"PyObject *",(char*)"pyobj",0);
|
||||
Wrapper_add_local(getf,"pyobj", "PyObject *pyobj");
|
||||
if ((tm = typemap_lookup((char*)"varout",(char*)"python",t,name,name,(char*)"pyobj"))) {
|
||||
Printf(getf->code,"%s\n",tm);
|
||||
Replace(getf->code,"$name",iname, DOH_REPLACE_ANY);
|
||||
|
|
@ -1246,7 +1246,7 @@ void PYTHON::link_variable(char *name, char *iname, DataType *t) {
|
|||
Printv(getf->code, tab4, "pyobj = PyFloat_FromDouble((double) ", name, ");\n", 0);
|
||||
break;
|
||||
case T_CHAR:
|
||||
Wrapper_add_local(getf,(char*)"char",(char*)"ptemp[2]",0);
|
||||
Wrapper_add_local(getf,"ptemp","char ptemp[2]");
|
||||
Printv(getf->code,
|
||||
tab4, "ptemp[0] = ", name, ";\n",
|
||||
tab4, "ptemp[1] = 0;\n",
|
||||
|
|
|
|||
|
|
@ -470,11 +470,11 @@ void RUBY::create_function(char *name, char *iname, DataType *t, ParmList *l) {
|
|||
if (!l->get(i)->ignore) {
|
||||
char s[256];
|
||||
sprintf(s,"varg%d",i);
|
||||
Wrapper_add_local(f,(char*)"VALUE", s,0);
|
||||
Wrapper_add_localv(f,s,"VALUE",s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
Wrapper_add_local(f,(char*)"VALUE", (char*)"vresult", (char*)"Qnil");
|
||||
Wrapper_add_local(f,"vresult","VALUE vresult = Qnil");
|
||||
int pcount = emit_args(t,l,f);
|
||||
|
||||
#if 0
|
||||
|
|
@ -669,7 +669,7 @@ void RUBY::link_variable(char *name, char *iname, DataType *t) {
|
|||
Printv(getf->def, "static VALUE\n", getfname, "(", 0);
|
||||
if (mod_attr) Printf(getf->def, "VALUE self");
|
||||
Printf(getf->def, ") {");
|
||||
Wrapper_add_local(getf,(char*)"VALUE", (char*)"_val",0);
|
||||
Wrapper_add_local(getf,"_val","VALUE _val");
|
||||
tm = ruby_typemap_lookup((char*)"varout",t,name,name,(char*)"_val");
|
||||
if (!tm)
|
||||
tm = ruby_typemap_lookup((char*)"out",t,name,name,(char*)"_val");
|
||||
|
|
@ -713,7 +713,7 @@ void RUBY::link_variable(char *name, char *iname, DataType *t) {
|
|||
Delete(s);
|
||||
} else if (!t->is_pointer && t->type == T_USER) {
|
||||
t->is_pointer++;
|
||||
Wrapper_add_local(setf,t->print_type(), (char*)"temp",0);
|
||||
Wrapper_add_localv(setf,"temp",t->print_type(), "temp",0);
|
||||
Printv(setf->code, tab4, "temp = (", t->print_type(), ")",
|
||||
"SWIG_ConvertPtr(_val, \"", t->print_mangle(), "\");\n",
|
||||
0);
|
||||
|
|
|
|||
|
|
@ -548,7 +548,7 @@ void TCL8::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
|||
{
|
||||
char tb[32];
|
||||
sprintf(tb,"tempb%d",i);
|
||||
Wrapper_add_local(f,(char*)"int",tb,0);
|
||||
Wrapper_add_localv(f,tb,"int",tb,0);
|
||||
Printf(args,",&%s",tb);
|
||||
Printv(incode, tab4, target, " = (bool) ", tb, ";\n", 0);
|
||||
}
|
||||
|
|
@ -799,13 +799,13 @@ void TCL8::link_variable(char *name, char *iname, DataType *t)
|
|||
|
||||
Printv(get->def, "static char *_swig_", t->print_mangle(), "_get(ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags) {",0);
|
||||
t->is_pointer++;
|
||||
Wrapper_add_local(get,t->print_type(),(char*)"addr",0);
|
||||
Wrapper_add_local(set,t->print_type(),(char*)"addr",0);
|
||||
Wrapper_add_localv(get,"addr",t->print_type(),"addr",0);
|
||||
Wrapper_add_localv(set,"addr",t->print_type(),"addr",0);
|
||||
Printv(set->code, tab4, "addr = ", t->print_cast(), " clientData;\n", 0);
|
||||
Printv(get->code, tab4, "addr = ", t->print_cast(), " clientData;\n", 0);
|
||||
t->is_pointer--;
|
||||
Wrapper_add_local(set,(char*)"char *",(char*)"value",0);
|
||||
Wrapper_add_local(get,(char*)"Tcl_Obj *",(char*)"value",0);
|
||||
Wrapper_add_local(set, "value", "char *value");
|
||||
Wrapper_add_local(get, "value", "Tcl_Obj *value");
|
||||
|
||||
Printv(set->code, tab4, "value = Tcl_GetVar2(interp, name1, name2, flags);\n",
|
||||
tab4, "if (!value) return NULL;\n", 0);
|
||||
|
|
@ -891,7 +891,7 @@ void TCL8::link_variable(char *name, char *iname, DataType *t)
|
|||
case T_UCHAR:
|
||||
case T_SCHAR:
|
||||
case T_BOOL:
|
||||
Wrapper_add_local(get,(char*)"Tcl_Obj *",(char*)"value",0);
|
||||
Wrapper_add_local(get,"value","Tcl_Obj *value");
|
||||
Printv(get->code,
|
||||
tab4, "value = Tcl_NewIntObj((int) *addr);\n",
|
||||
tab4, "Tcl_SetVar2(interp,name1,name2,Tcl_GetStringFromObj(value,NULL), flags);\n",
|
||||
|
|
@ -900,7 +900,7 @@ void TCL8::link_variable(char *name, char *iname, DataType *t)
|
|||
break;
|
||||
case T_FLOAT:
|
||||
case T_DOUBLE:
|
||||
Wrapper_add_local(get,(char*)"Tcl_Obj *",(char*)"value",0);
|
||||
Wrapper_add_local(get,"value","Tcl_Obj *value");
|
||||
Printv(get->code,
|
||||
tab4, "value = Tcl_NewDoubleObj((double) *addr);\n",
|
||||
tab4, "Tcl_SetVar2(interp,name1,name2,Tcl_GetStringFromObj(value,NULL), flags);\n",
|
||||
|
|
@ -909,14 +909,14 @@ void TCL8::link_variable(char *name, char *iname, DataType *t)
|
|||
break;
|
||||
|
||||
case T_CHAR:
|
||||
Wrapper_add_local(get,(char*)"char",(char*)"temp[4]",0);
|
||||
Wrapper_add_local(get,"temp", "char temp[2]");
|
||||
Printv(get->code,tab4, "temp[0] = *addr; temp[1] = 0;\n",
|
||||
tab4, "Tcl_SetVar2(interp,name1,name2,temp,flags);\n",
|
||||
0);
|
||||
break;
|
||||
|
||||
case T_USER:
|
||||
Wrapper_add_local(get,(char*)"Tcl_Obj *",(char*)"value",0);
|
||||
Wrapper_add_local(get,"value", "Tcl_Obj *value");
|
||||
t->is_pointer++;
|
||||
t->remember();
|
||||
Printv(get->code, tab4, "value = SWIG_NewPointerObj(addr, SWIGTYPE", t->print_mangle(), ");\n",
|
||||
|
|
@ -932,7 +932,7 @@ void TCL8::link_variable(char *name, char *iname, DataType *t)
|
|||
if ((t->is_pointer == 1) && (t->type == T_CHAR)) {
|
||||
Printv(get->code, tab4, "Tcl_SetVar2(interp,name1,name2,*addr, flags);\n",0);
|
||||
} else {
|
||||
Wrapper_add_local(get,(char*)"Tcl_Obj *",(char*)"value",0);
|
||||
Wrapper_add_local(get,"value","Tcl_Obj *value");
|
||||
t->remember();
|
||||
Printv(get->code,
|
||||
tab4, "value = SWIG_NewPointerObj(*addr, SWIGTYPE", t->print_mangle(), ");\n",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue