variable name hiding fix

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10576 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2008-06-24 20:12:08 +00:00
commit 2a7586cf27

View file

@ -2271,7 +2271,7 @@ int ALLEGROCL::emit_dispatch_defun(Node *n) {
return SWIG_OK;
}
int ALLEGROCL::emit_defun(Node *n, File *f_cl) {
int ALLEGROCL::emit_defun(Node *n, File *fcl) {
#ifdef ALLEGROCL_WRAP_DEBUG
Printf(stderr, "emit_defun: ENTER... ");
#endif
@ -2307,27 +2307,27 @@ int ALLEGROCL::emit_defun(Node *n, File *f_cl) {
if (Generate_Wrapper) {
String *extra_parms = id_converter_arguments(n)->noname_str();
if (Getattr(n, "sym:overloaded"))
Printf(f_cl, "(swig-defmethod (\"%s\" \"%s\"%s)\n", funcname, mangled_name, extra_parms);
Printf(fcl, "(swig-defmethod (\"%s\" \"%s\"%s)\n", funcname, mangled_name, extra_parms);
else
Printf(f_cl, "(swig-defun (\"%s\" \"%s\"%s)\n", funcname, mangled_name, extra_parms);
Printf(fcl, "(swig-defun (\"%s\" \"%s\"%s)\n", funcname, mangled_name, extra_parms);
Delete(extra_parms);
}
// Just C
else {
Printf(f_cl, "(swig-defun (\"%s\" \"%s\")\n", funcname, Generate_Wrapper ? mangled_name : funcname);
Printf(fcl, "(swig-defun (\"%s\" \"%s\")\n", funcname, Generate_Wrapper ? mangled_name : funcname);
}
//////////////////////////////////////
// Lisp foreign call parameter list //
//////////////////////////////////////
Printf(f_cl, " (");
Printf(fcl, " (");
/* Special cases */
if (ParmList_len(pl) == 0) {
Printf(f_cl, ":void");
Printf(fcl, ":void");
/* } else if (any_varargs(pl)) {
Printf(f_cl, "#| varargs |#");
Printf(fcl, "#| varargs |#");
varargs=1; */
} else {
String *largs = NewString("");
@ -2337,7 +2337,7 @@ int ALLEGROCL::emit_defun(Node *n, File *f_cl) {
SwigType *argtype = Swig_cparse_type(Getattr(p, "tmap:ctype"));
if (!first) {
Printf(f_cl, "\n ");
Printf(fcl, "\n ");
}
if (SwigType_isvarargs(argtype)) {
@ -2393,7 +2393,7 @@ int ALLEGROCL::emit_defun(Node *n, File *f_cl) {
// if this parameter has been removed from the C/++ wrapper
// it shouldn't be in the lisp wrapper either.
if (!checkAttribute(p, "tmap:in:numinputs", "0")) {
Printf(f_cl, "(%s %s %s %s %s)",
Printf(fcl, "(%s %s %s %s %s)",
// parms in the ff wrapper, but not in the lisp wrapper.
(checkAttribute(p, "tmap:lin:numinputs", "0") ? ":p-" : ":p+"), argname, dispatchtype, ffitype, lisptype);
@ -2479,12 +2479,12 @@ int ALLEGROCL::emit_defun(Node *n, File *f_cl) {
Replaceall(wrap->code, "$ldestructor", ldestructor);
Delete(ldestructor);
Printf(f_cl, ")\n"); /* finish arg list */
Printf(fcl, ")\n"); /* finish arg list */
/////////////////////////////////////////////////////
// Lisp foreign call return type and optimizations //
/////////////////////////////////////////////////////
Printf(f_cl, " (:returning (%s %s)", compose_foreign_type(result_type), get_lisp_type(Getattr(n, "type"), "result"));
Printf(fcl, " (:returning (%s %s)", compose_foreign_type(result_type), get_lisp_type(Getattr(n, "type"), "result"));
for (Iterator option = First(n); option.item; option = Next(option)) {
if (Strncmp("feature:ffargs:", option.key, 15))
@ -2494,12 +2494,12 @@ int ALLEGROCL::emit_defun(Node *n, File *f_cl) {
Replaceall(option_name, "_", "-");
// TODO: varargs vs call-direct ?
Printf(f_cl, "\n %s %s", option_name, option_val);
Printf(fcl, "\n %s %s", option_name, option_val);
Delete(option_name);
}
Printf(f_cl, ")\n %s)\n\n", wrap->code);
Printf(fcl, ")\n %s)\n\n", wrap->code);
// Wrapper_print(wrap, stderr);
Delete(result_type);