Merge branch 'master' into gsoc2017-php7-classes-via-c-api

This commit is contained in:
Olly Betts 2021-05-03 16:17:02 +12:00
commit c87047fd39
50 changed files with 271 additions and 325 deletions

View file

@ -1,12 +1,12 @@
dnl Process this file with autoconf to produce a configure script. dnl Process this file with autoconf to produce a configure script.
AC_INIT([ccache-swig], [0.0]) # Get version from SWIG in ccache_swig_config.h.in AC_INIT([ccache-swig],[0.0]) # Get version from SWIG in ccache_swig_config.h.in
AC_PREREQ(2.52) AC_PREREQ([2.60])
AC_CONFIG_SRCDIR([ccache.h]) AC_CONFIG_SRCDIR([ccache.h])
AC_MSG_NOTICE([Configuring ccache]) AC_MSG_NOTICE([Configuring ccache])
AC_CONFIG_HEADER(config.h) AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES([config_win32.h]) AC_CONFIG_FILES([config_win32.h])
dnl Checks for programs. dnl Checks for programs.
@ -41,7 +41,7 @@ else
fi fi
AC_HEADER_DIRENT AC_HEADER_DIRENT
AC_HEADER_TIME
AC_HEADER_SYS_WAIT AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(ctype.h strings.h stdlib.h string.h pwd.h sys/time.h) AC_CHECK_HEADERS(ctype.h strings.h stdlib.h string.h pwd.h sys/time.h)
@ -51,19 +51,16 @@ AC_CHECK_FUNCS(gethostname getpwuid)
AC_CHECK_FUNCS(utimes) AC_CHECK_FUNCS(utimes)
AC_CACHE_CHECK([for compar_fn_t in stdlib.h],ccache_cv_COMPAR_FN_T, [ AC_CACHE_CHECK([for compar_fn_t in stdlib.h],ccache_cv_COMPAR_FN_T, [
AC_TRY_COMPILE( AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>]], [[
[#include <stdlib.h>],
[
void test_fn(void) { qsort(NULL, 0, 0, (__compar_fn_t)NULL); } void test_fn(void) { qsort(NULL, 0, 0, (__compar_fn_t)NULL); }
], ]])],[ccache_cv_COMPAR_FN_T=yes],[ccache_cv_COMPAR_FN_T=no])])
ccache_cv_COMPAR_FN_T=yes,ccache_cv_COMPAR_FN_T=no)])
if test x"$ccache_cv_COMPAR_FN_T" = x"yes"; then if test x"$ccache_cv_COMPAR_FN_T" = x"yes"; then
AC_DEFINE(HAVE_COMPAR_FN_T, 1, [ ]) AC_DEFINE(HAVE_COMPAR_FN_T, 1, [ ])
fi fi
dnl Note: This could be replaced by AC_FUNC_SNPRINTF() in the autoconf macro archive dnl Note: This could be replaced by AC_FUNC_SNPRINTF() in the autoconf macro archive
AC_CACHE_CHECK([for C99 vsnprintf],ccache_cv_HAVE_C99_VSNPRINTF,[ AC_CACHE_CHECK([for C99 vsnprintf],ccache_cv_HAVE_C99_VSNPRINTF,[
AC_TRY_RUN([ AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <sys/types.h> #include <sys/types.h>
#include <stdarg.h> #include <stdarg.h>
void foo(const char *format, ...) { void foo(const char *format, ...) {
@ -81,8 +78,7 @@ void foo(const char *format, ...) {
exit(0); exit(0);
} }
main() { foo("hello"); } main() { foo("hello"); }
], ]])],[ccache_cv_HAVE_C99_VSNPRINTF=yes],[ccache_cv_HAVE_C99_VSNPRINTF=no],[ccache_cv_HAVE_C99_VSNPRINTF=cross])])
ccache_cv_HAVE_C99_VSNPRINTF=yes,ccache_cv_HAVE_C99_VSNPRINTF=no,ccache_cv_HAVE_C99_VSNPRINTF=cross)])
if test x"$ccache_cv_HAVE_C99_VSNPRINTF" = x"yes"; then if test x"$ccache_cv_HAVE_C99_VSNPRINTF" = x"yes"; then
AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [ ]) AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [ ])
fi fi

View file

@ -7,6 +7,16 @@ the issue number to the end of the URL: https://github.com/swig/swig/issues/
Version 4.1.0 (in progress) Version 4.1.0 (in progress)
=========================== ===========================
2021-04-30: olly
#1984 Remove support for $source and $target.
These were officially deprecated in 2001, and attempts to use them have
resulted in a warning (including a pointer to what to update them to)
for most if not all of that time.
2021-04-27: wsfulton
#1987 [Java] Fix %interface family of macros for returning by const
pointer reference.
2021-04-19: olly 2021-04-19: olly
Fix use of uninitialised variable in the generated code for an Fix use of uninitialised variable in the generated code for an
empty typecheck typemap, such as the dummy one we include for empty typecheck typemap, such as the dummy one we include for
@ -78,7 +88,7 @@ Version 4.1.0 (in progress)
unsigned long long values. unsigned long long values.
2021-02-24: tomleavy, yegorich, tungntpham 2021-02-24: tomleavy, yegorich, tungntpham
#1746 [Javascript] Add support for Node v12 and v14. #1746 [Javascript] Add support for Node v12, v14 and v16.
SWIG support for Node is now for v6 and later only. SWIG support for Node is now for v6 and later only.
2020-02-09: ZackerySpytz 2020-02-09: ZackerySpytz

View file

@ -2243,7 +2243,7 @@ can be done using the <tt>EXTEND()</tt> macro as in:
EXTEND(sp, 1); /* Extend the stack by 1 object */ EXTEND(sp, 1); /* Extend the stack by 1 object */
} }
$result = sv_newmortal(); $result = sv_newmortal();
sv_setiv($target, (IV) *($1)); sv_setiv($result, (IV) *($1));
argvi++; argvi++;
} }
</pre></div> </pre></div>

View file

@ -483,7 +483,7 @@ example.i(4) : Syntax error in input(1).
<li>401. Nothing known about class 'name'. Ignored. <li>401. Nothing known about class 'name'. Ignored.
<li>402. Base class 'name' is incomplete. <li>402. Base class 'name' is incomplete.
<li>403. Class 'name' might be abstract. <li>403. Class 'name' might be abstract.
<li>450. Deprecated typemap feature ($source/$target). <li>450. Reserved
<li>451. Setting const char * variable may leak memory. <li>451. Setting const char * variable may leak memory.
<li>452. Reserved <li>452. Reserved
<li>453. Can't apply (pattern). No typemaps are defined. <li>453. Can't apply (pattern). No typemaps are defined.

View file

@ -165,6 +165,7 @@ TCL_SO = @TCL_SO@
TCLLDSHARED = @TCLLDSHARED@ TCLLDSHARED = @TCLLDSHARED@
TCLCXXSHARED = @TCLCXXSHARED@ TCLCXXSHARED = @TCLCXXSHARED@
TCL_SCRIPT = $(SRCDIR)$(RUNME).tcl TCL_SCRIPT = $(SRCDIR)$(RUNME).tcl
TCL_LINK = @TCLLINK@
# ----------------------------------------------------------- # -----------------------------------------------------------
# Build a new version of the tclsh shell # Build a new version of the tclsh shell
@ -187,7 +188,7 @@ tclsh_cpp: $(SRCDIR_SRCS)
tcl: $(SRCDIR_SRCS) tcl: $(SRCDIR_SRCS)
$(SWIG) -tcl8 $(SWIGOPT) $(TCL_SWIGOPTS) -o $(ISRCS) $(INTERFACEPATH) $(SWIG) -tcl8 $(SWIGOPT) $(TCL_SWIGOPTS) -o $(ISRCS) $(INTERFACEPATH)
$(CC) -c $(CCSHARED) $(CPPFLAGS) $(CFLAGS) $(SRCDIR_SRCS) $(ISRCS) $(INCLUDES) $(TCL_INCLUDE) $(CC) -c $(CCSHARED) $(CPPFLAGS) $(CFLAGS) $(SRCDIR_SRCS) $(ISRCS) $(INCLUDES) $(TCL_INCLUDE)
$(TCLLDSHARED) $(CFLAGS) $(LDFLAGS) $(OBJS) $(IOBJS) $(TCL_DLNK) $(LIBS) -o $(LIBPREFIX)$(TARGET)$(TCL_SO) $(TCLLDSHARED) $(CFLAGS) $(LDFLAGS) $(OBJS) $(IOBJS) $(TCL_DLNK) $(LIBS) -o $(LIBPREFIX)$(TARGET)$(TCL_SO) $(TCL_LINK)
# ----------------------------------------------------------- # -----------------------------------------------------------
# Build a Tcl7.5 dynamic loadable module for C++ # Build a Tcl7.5 dynamic loadable module for C++
@ -196,7 +197,7 @@ tcl: $(SRCDIR_SRCS)
tcl_cpp: $(SRCDIR_SRCS) tcl_cpp: $(SRCDIR_SRCS)
$(SWIG) -tcl8 -c++ $(SWIGOPT) $(TCL_SWIGOPTS) -o $(ICXXSRCS) $(INTERFACEPATH) $(SWIG) -tcl8 -c++ $(SWIGOPT) $(TCL_SWIGOPTS) -o $(ICXXSRCS) $(INTERFACEPATH)
$(CXX) -c $(CCSHARED) $(CPPFLAGS) $(CXXFLAGS) $(SRCDIR_SRCS) $(SRCDIR_CXXSRCS) $(ICXXSRCS) $(INCLUDES) $(TCL_INCLUDE) $(CXX) -c $(CCSHARED) $(CPPFLAGS) $(CXXFLAGS) $(SRCDIR_SRCS) $(SRCDIR_CXXSRCS) $(ICXXSRCS) $(INCLUDES) $(TCL_INCLUDE)
$(TCLCXXSHARED) $(CXXFLAGS) $(LDFLAGS) $(OBJS) $(IOBJS) $(TCL_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(LIBPREFIX)$(TARGET)$(TCL_SO) $(TCLCXXSHARED) $(CXXFLAGS) $(LDFLAGS) $(OBJS) $(IOBJS) $(TCL_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(LIBPREFIX)$(TARGET)$(TCL_SO) $(TCL_LINK)
# ----------------------------------------------------------------- # -----------------------------------------------------------------
# Run Tcl example # Run Tcl example

View file

@ -677,7 +677,7 @@ ifndef SKIP_CPP_STD_CASES
CPP_TEST_CASES += ${CPP_STD_TEST_CASES} CPP_TEST_CASES += ${CPP_STD_TEST_CASES}
endif endif
ifneq (,$(HAVE_CXX11)) ifeq (1,$(HAVE_CXX11))
CPP_TEST_CASES += $(CPP11_TEST_CASES) CPP_TEST_CASES += $(CPP11_TEST_CASES)
endif endif

View file

@ -216,6 +216,7 @@ public class multiple_inheritance_abstract_runme {
check(multiple_inheritance_abstract.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed"); check(multiple_inheritance_abstract.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed");
check(multiple_inheritance_abstract.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed"); check(multiple_inheritance_abstract.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed");
check(multiple_inheritance_abstract.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed"); check(multiple_inheritance_abstract.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed");
// Return pointers // Return pointers
check(multiple_inheritance_abstract.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed"); check(multiple_inheritance_abstract.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed");
check(multiple_inheritance_abstract.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed"); check(multiple_inheritance_abstract.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed");
@ -234,6 +235,15 @@ public class multiple_inheritance_abstract_runme {
check(multiple_inheritance_abstract.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed"); check(multiple_inheritance_abstract.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
check(multiple_inheritance_abstract.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed"); check(multiple_inheritance_abstract.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
// Return const pointer references
check(multiple_inheritance_abstract.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
// Return by value (sliced objects) // Return by value (sliced objects)
check(multiple_inheritance_abstract.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed"); check(multiple_inheritance_abstract.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
check(multiple_inheritance_abstract.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed"); check(multiple_inheritance_abstract.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");

View file

@ -217,6 +217,7 @@ public class multiple_inheritance_nspace_runme {
check(multiple_inheritance_nspace.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed"); check(multiple_inheritance_nspace.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed");
check(multiple_inheritance_nspace.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed"); check(multiple_inheritance_nspace.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed");
check(multiple_inheritance_nspace.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed"); check(multiple_inheritance_nspace.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed");
// Return pointers // Return pointers
check(multiple_inheritance_nspace.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed"); check(multiple_inheritance_nspace.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed");
check(multiple_inheritance_nspace.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed"); check(multiple_inheritance_nspace.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed");
@ -235,6 +236,15 @@ public class multiple_inheritance_nspace_runme {
check(multiple_inheritance_nspace.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed"); check(multiple_inheritance_nspace.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
check(multiple_inheritance_nspace.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed"); check(multiple_inheritance_nspace.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
// Return const pointer references
check(multiple_inheritance_nspace.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
// Return by value (sliced objects) // Return by value (sliced objects)
check(multiple_inheritance_nspace.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed"); check(multiple_inheritance_nspace.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
check(multiple_inheritance_nspace.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed"); check(multiple_inheritance_nspace.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");

View file

@ -301,6 +301,15 @@ public class multiple_inheritance_shared_ptr_runme {
check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed"); check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed"); check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
// Return const pointer references
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
// Return by value (sliced objects) // Return by value (sliced objects)
check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed"); check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed"); check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");

View file

@ -1,5 +1,5 @@
swig_typemap_old.i:6: Warning 450: Deprecated typemap feature ($source/$target). swig_typemap_old.i:6: Error: Obsolete typemap feature ($source/$target).
swig_typemap_old.i:6: Warning 450: The use of $source and $target in a typemap declaration is deprecated. swig_typemap_old.i:6: Error: The use of $source and $target in a typemap declaration is no longer supported.
For typemaps related to argument input (in,ignore,default,arginit,check), replace For typemaps related to argument input (in,ignore,default,arginit,check), replace
$source by $input and $target by $1. For typemaps related to return values (out, $source by $input and $target by $1. For typemaps related to return values (out,
argout,ret,except), replace $source by $1 and $target by $result. See the file argout,ret,except), replace $source by $1 and $target by $result. See the file

View file

@ -224,6 +224,7 @@ public class multiple_inheritance_abstract_runme {
check(multiple_inheritance_abstract.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed"); check(multiple_inheritance_abstract.InputCPtrRefBottom1(b1)!=103+104, "InputCPtrRefBottom1() failed");
check(multiple_inheritance_abstract.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed"); check(multiple_inheritance_abstract.InputCPtrRefBottom2(b2)!=206+205, "InputCPtrRefBottom2() failed");
check(multiple_inheritance_abstract.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed"); check(multiple_inheritance_abstract.InputCPtrRefBottom3(b3)!=307+308+309, "InputCPtrRefBottom3() failed");
// Return pointers // Return pointers
check(multiple_inheritance_abstract.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed"); check(multiple_inheritance_abstract.MakePtrDerived1_CBase1().cbase1y()!=3, "MakePtrDerived1_CBase1 failed");
check(multiple_inheritance_abstract.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed"); check(multiple_inheritance_abstract.MakePtrDerived1_CBase2().cbase2()!=4, "MakePtrDerived1_CBase2 failed");
@ -242,6 +243,15 @@ public class multiple_inheritance_abstract_runme {
check(multiple_inheritance_abstract.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed"); check(multiple_inheritance_abstract.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
check(multiple_inheritance_abstract.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed"); check(multiple_inheritance_abstract.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
// Return const pointer references
check(multiple_inheritance_abstract.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
check(multiple_inheritance_abstract.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
// Return by value (sliced objects) // Return by value (sliced objects)
check(multiple_inheritance_abstract.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed"); check(multiple_inheritance_abstract.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
check(multiple_inheritance_abstract.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed"); check(multiple_inheritance_abstract.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");

View file

@ -244,6 +244,15 @@ public class multiple_inheritance_nspace_runme {
check(multiple_inheritance_nspace.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed"); check(multiple_inheritance_nspace.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
check(multiple_inheritance_nspace.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed"); check(multiple_inheritance_nspace.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
// Return const pointer references
check(multiple_inheritance_nspace.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
check(multiple_inheritance_nspace.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
// Return by value (sliced objects) // Return by value (sliced objects)
check(multiple_inheritance_nspace.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed"); check(multiple_inheritance_nspace.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
check(multiple_inheritance_nspace.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed"); check(multiple_inheritance_nspace.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");

View file

@ -309,6 +309,15 @@ public class multiple_inheritance_shared_ptr_runme {
check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed"); check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase1().cbase1y()!=7, "MakeRefDerived3_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed"); check(multiple_inheritance_shared_ptr.MakeRefDerived3_CBase2().cbase2()!=8, "MakeRefDerived3_CBase2 failed");
// Return const pointer references
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived1_CBase1().cbase1y()!=3, "MakeConstPtrRefDerived1_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived1_CBase2().cbase2()!=4, "MakeConstPtrRefDerived1_CBase2 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived2_CBase1().cbase1y()!=6, "MakeConstPtrRefDerived2_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived2_ABase1().abase1()!=5, "MakeConstPtrRefDerived2_ABase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_ABase1().abase1()!=9, "MakeConstPtrRefDerived3_ABase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_CBase1().cbase1y()!=7, "MakeConstPtrRefDerived3_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeConstPtrRefDerived3_CBase2().cbase2()!=8, "MakeConstPtrRefDerived3_CBase2 failed");
// Return by value (sliced objects) // Return by value (sliced objects)
check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed"); check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase1().cbase1y()!=1, "MakeValDerived1_CBase1 failed");
check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed"); check(multiple_inheritance_shared_ptr.MakeValDerived1_CBase2().cbase2()!=2, "MakeValDerived1_CBase2 failed");

View file

@ -22,7 +22,7 @@ namespace Space {
struct CBase1 { struct CBase1 {
virtual void cbase1x() { virtual void cbase1x() {
return; return;
} }
virtual int cbase1y() { virtual int cbase1y() {
return 1; return 1;
} }
@ -306,6 +306,36 @@ namespace Space {
return d; return d;
} }
// Return const pointer references
CBase1 *const&MakeConstPtrRefDerived1_CBase1() {
static CBase1 *d = new Derived1();
return d;
}
CBase2 *const&MakeConstPtrRefDerived1_CBase2() {
static CBase2 *const& d = new Derived1();
return d;
}
CBase1 *const&MakeConstPtrRefDerived2_CBase1() {
static CBase1 *const& d = new Derived2();
return d;
}
ABase1 *const&MakeConstPtrRefDerived2_ABase1() {
static ABase1 *const& d = new Derived2();
return d;
}
ABase1 *const&MakeConstPtrRefDerived3_ABase1() {
static ABase1 *const& d = new Derived3();
return d;
}
CBase1 *const&MakeConstPtrRefDerived3_CBase1() {
static CBase1 *const& d = new Derived3();
return d;
}
CBase2 *const&MakeConstPtrRefDerived3_CBase2() {
static CBase2 *const& d = new Derived3();
return d;
}
// Return by value (sliced objects) // Return by value (sliced objects)
CBase1 MakeValDerived1_CBase1() { CBase1 MakeValDerived1_CBase1() {
return Derived1(); return Derived1();

View file

@ -31,7 +31,7 @@ namespace Space {
struct CBase1 { struct CBase1 {
virtual void cbase1x() { virtual void cbase1x() {
return; return;
} }
virtual int cbase1y() { virtual int cbase1y() {
return 1; return 1;
} }
@ -315,6 +315,36 @@ namespace Space {
return d; return d;
} }
// Return const pointer references
CBase1 *const&MakeConstPtrRefDerived1_CBase1() {
static CBase1 *d = new Derived1();
return d;
}
CBase2 *const&MakeConstPtrRefDerived1_CBase2() {
static CBase2 *const& d = new Derived1();
return d;
}
CBase1 *const&MakeConstPtrRefDerived2_CBase1() {
static CBase1 *const& d = new Derived2();
return d;
}
ABase1 *const&MakeConstPtrRefDerived2_ABase1() {
static ABase1 *const& d = new Derived2();
return d;
}
ABase1 *const&MakeConstPtrRefDerived3_ABase1() {
static ABase1 *const& d = new Derived3();
return d;
}
CBase1 *const&MakeConstPtrRefDerived3_CBase1() {
static CBase1 *const& d = new Derived3();
return d;
}
CBase2 *const&MakeConstPtrRefDerived3_CBase2() {
static CBase2 *const& d = new Derived3();
return d;
}
// Return by value (sliced objects) // Return by value (sliced objects)
CBase1 MakeValDerived1_CBase1() { CBase1 MakeValDerived1_CBase1() {
return Derived1(); return Derived1();

View file

@ -424,6 +424,36 @@ namespace Space {
return d; return d;
} }
// Return const pointer references
CBase1 *const&MakeConstPtrRefDerived1_CBase1() {
static CBase1 *d = new Derived1();
return d;
}
CBase2 *const&MakeConstPtrRefDerived1_CBase2() {
static CBase2 *const& d = new Derived1();
return d;
}
CBase1 *const&MakeConstPtrRefDerived2_CBase1() {
static CBase1 *const& d = new Derived2();
return d;
}
ABase1 *const&MakeConstPtrRefDerived2_ABase1() {
static ABase1 *const& d = new Derived2();
return d;
}
ABase1 *const&MakeConstPtrRefDerived3_ABase1() {
static ABase1 *const& d = new Derived3();
return d;
}
CBase1 *const&MakeConstPtrRefDerived3_CBase1() {
static CBase1 *const& d = new Derived3();
return d;
}
CBase2 *const&MakeConstPtrRefDerived3_CBase2() {
static CBase2 *const& d = new Derived3();
return d;
}
// Return by value (sliced objects) // Return by value (sliced objects)
CBase1 MakeValDerived1_CBase1() { CBase1 MakeValDerived1_CBase1() {
return Derived1(); return Derived1();

View file

@ -258,7 +258,7 @@ SIMPLE_TYPEMAP(double, C_c_double, C_flonum, C_swig_is_number, (double), C_SIZEO
if (!SWIG_ConvertPtr(C_block_item($input,1), &result, $descriptor, 0)) { if (!SWIG_ConvertPtr(C_block_item($input,1), &result, $descriptor, 0)) {
C_word ptr = C_block_item($input,0); C_word ptr = C_block_item($input,0);
if (C_swig_is_string(ptr)) { if (C_swig_is_string(ptr)) {
SWIG_UnpackData(C_c_string(ptr), (void *) &$1, sizeof($type)); SWIG_UnpackData(C_c_string(ptr), (void *) &$1, sizeof($1));
} else { } else {
snprintf(err_msg, sizeof(err_msg), "Type error in argument #%i: expected %s", $argnum, ($descriptor->str ? $descriptor->str : $descriptor->name)); snprintf(err_msg, sizeof(err_msg), "Type error in argument #%i: expected %s", $argnum, ($descriptor->str ? $descriptor->str : $descriptor->name));
SWIG_Chicken_Barf(SWIG_BARF1_BAD_ARGUMENT_TYPE, err_msg); SWIG_Chicken_Barf(SWIG_BARF1_BAD_ARGUMENT_TYPE, err_msg);
@ -293,7 +293,7 @@ SIMPLE_TYPEMAP(double, C_c_double, C_flonum, C_swig_is_number, (double), C_SIZEO
if (!SWIG_ConvertPtr(C_block_item($input,1), &result, $descriptor, 0)) { if (!SWIG_ConvertPtr(C_block_item($input,1), &result, $descriptor, 0)) {
C_word ptr = C_block_item($input,0); C_word ptr = C_block_item($input,0);
if (C_swig_is_string(ptr)) { if (C_swig_is_string(ptr)) {
SWIG_UnpackData(C_c_string(ptr), (void *) &$1, sizeof($type)); SWIG_UnpackData(C_c_string(ptr), (void *) &$1, sizeof($1));
} else { } else {
snprintf(err_msg, sizeof(err_msg), "Type error in argument #%i: expected %s", 1, ($descriptor->str ? $descriptor->str : $descriptor->name)); snprintf(err_msg, sizeof(err_msg), "Type error in argument #%i: expected %s", 1, ($descriptor->str ? $descriptor->str : $descriptor->name));
SWIG_Chicken_Barf(SWIG_BARF1_BAD_ARGUMENT_TYPE, err_msg); SWIG_Chicken_Barf(SWIG_BARF1_BAD_ARGUMENT_TYPE, err_msg);

View file

@ -378,26 +378,26 @@ typedef unsigned long SCM;
#define %argument_fail(code, type, name, argn) scm_wrong_type_arg((char *) FUNC_NAME, argn, $input); #define %argument_fail(code, type, name, argn) scm_wrong_type_arg((char *) FUNC_NAME, argn, $input);
#define %as_voidptr(ptr) (void*)(ptr) #define %as_voidptr(ptr) (void*)(ptr)
%typemap(in) SWIGTYPE (CLASS::*) { %typemap(in) SWIGTYPE (CLASS::*) {
int res = SWIG_ConvertMember($input, %as_voidptr(&$1), sizeof($type),$descriptor); int res = SWIG_ConvertMember($input, %as_voidptr(&$1), sizeof($1), $descriptor);
if (!SWIG_IsOK(res)) { if (!SWIG_IsOK(res)) {
%argument_fail(res,"$type",$symname, $argnum); %argument_fail(res,"$type",$symname, $argnum);
} }
} }
%typemap(out,noblock=1) SWIGTYPE (CLASS::*) { %typemap(out,noblock=1) SWIGTYPE (CLASS::*) {
%set_output(SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($type), $descriptor)); %set_output(SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($1), $descriptor));
} }
%typemap(varin) SWIGTYPE (CLASS::*) { %typemap(varin) SWIGTYPE (CLASS::*) {
int res = SWIG_ConvertMember($input,%as_voidptr(&$1), sizeof($type), $descriptor); int res = SWIG_ConvertMember($input,%as_voidptr(&$1), sizeof($1), $descriptor);
if (!SWIG_IsOK(res)) { if (!SWIG_IsOK(res)) {
scm_wrong_type_arg((char *) FUNC_NAME, 1, $input); scm_wrong_type_arg((char *) FUNC_NAME, 1, $input);
} }
} }
%typemap(varout,noblock=1) SWIGTYPE (CLASS::*) { %typemap(varout,noblock=1) SWIGTYPE (CLASS::*) {
%set_varoutput(SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($type), $descriptor)); %set_varoutput(SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($1), $descriptor));
} }
/* ------------------------------------------------------------ /* ------------------------------------------------------------

View file

@ -28,7 +28,7 @@
} }
%typemap(javaout) CTYPE *const& { %typemap(javaout) CTYPE *const& {
long cPtr = $jnicall; long cPtr = $jnicall;
return (cPtr == 0) ? null : ($javainterfacename)new $javaclassname(cPtr, $owner); return (cPtr == 0) ? null : ($*javainterfacename)new $*javaclassname(cPtr, $owner);
} }
%typemap(javadirectorin) CTYPE "($&javainterfacename)new $&javaclassname($jniinput, true)" %typemap(javadirectorin) CTYPE "($&javainterfacename)new $&javaclassname($jniinput, true)"

View file

@ -237,13 +237,13 @@ $1=($1_ltype)&temp;%}
// therefore a special wrapping functions SWIG_ConvertMember() & SWIG_NewMemberObj() were written // therefore a special wrapping functions SWIG_ConvertMember() & SWIG_NewMemberObj() were written
%typemap(in,checkfn="lua_isuserdata") SWIGTYPE (CLASS::*) %typemap(in,checkfn="lua_isuserdata") SWIGTYPE (CLASS::*)
%{ %{
if (!SWIG_IsOK(SWIG_ConvertMember(L,$input,(void*)(&$1),sizeof($type),$descriptor))) if (!SWIG_IsOK(SWIG_ConvertMember(L,$input,(void*)(&$1),sizeof($1),$descriptor)))
SWIG_fail_ptr("$symname",$argnum,$descriptor); SWIG_fail_ptr("$symname",$argnum,$descriptor);
%} %}
%typemap(out) SWIGTYPE (CLASS::*) %typemap(out) SWIGTYPE (CLASS::*)
%{ %{
SWIG_NewMemberObj(L,(void*)(&$1),sizeof($type),$descriptor); SWIG_arg++; SWIG_NewMemberObj(L,(void*)(&$1),sizeof($1),$descriptor); SWIG_arg++;
%} %}

View file

@ -95,7 +95,7 @@
"sv_setiv(SvRV($result), PTR2IV(&$1));"; "sv_setiv(SvRV($result), PTR2IV(&$1));";
%typemap(varout,type="$1_descriptor") SWIGTYPE (CLASS::*) { %typemap(varout,type="$1_descriptor") SWIGTYPE (CLASS::*) {
SWIG_MakePackedObj($result, (void *) &$1, sizeof($1_type), $1_descriptor); SWIG_MakePackedObj($result, (void *) &$1, sizeof($1), $1_descriptor);
} }
%typemap(varout) SWIGTYPE *const = SWIGTYPE *; %typemap(varout) SWIGTYPE *const = SWIGTYPE *;

View file

@ -562,29 +562,29 @@
* ------------------------------------------------------------ */ * ------------------------------------------------------------ */
%typemap(in) SWIGTYPE (CLASS::*) { %typemap(in) SWIGTYPE (CLASS::*) {
int res = SWIG_ConvertMember($input, %as_voidptr(&$1), sizeof($type),$descriptor); int res = SWIG_ConvertMember($input, %as_voidptr(&$1), sizeof($1),$descriptor);
if (!SWIG_IsOK(res)) { if (!SWIG_IsOK(res)) {
%argument_fail(res,"$type",$symname, $argnum); %argument_fail(res,"$type",$symname, $argnum);
} }
} }
%typemap(out,noblock=1) SWIGTYPE (CLASS::*) { %typemap(out,noblock=1) SWIGTYPE (CLASS::*) {
%set_output(SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($type), $descriptor)); %set_output(SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($1), $descriptor));
} }
%typemap(varin) SWIGTYPE (CLASS::*) { %typemap(varin) SWIGTYPE (CLASS::*) {
int res = SWIG_ConvertMember($input,%as_voidptr(&$1), sizeof($type), $descriptor); int res = SWIG_ConvertMember($input,%as_voidptr(&$1), sizeof($1), $descriptor);
if (!SWIG_IsOK(res)) { if (!SWIG_IsOK(res)) {
%variable_fail(res, "$type", "$name"); %variable_fail(res, "$type", "$name");
} }
} }
%typemap(varout,noblock=1) SWIGTYPE (CLASS::*) { %typemap(varout,noblock=1) SWIGTYPE (CLASS::*) {
%set_varoutput(SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($type), $descriptor)); %set_varoutput(SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($1), $descriptor));
} }
%typemap(constcode,noblock=1) SWIGTYPE (CLASS::*) { %typemap(constcode,noblock=1) SWIGTYPE (CLASS::*) {
%set_constant("$symname", SWIG_NewMemberObj(%as_voidptr(&$value), sizeof($type), $descriptor)); %set_constant("$symname", SWIG_NewMemberObj(%as_voidptr(&$value), sizeof($value), $descriptor));
} }
#if defined(SWIG_DIRECTOR_TYPEMAPS) #if defined(SWIG_DIRECTOR_TYPEMAPS)
@ -592,13 +592,13 @@
/* directorin */ /* directorin */
%typemap(directorin,noblock=1) SWIGTYPE (CLASS::*) { %typemap(directorin,noblock=1) SWIGTYPE (CLASS::*) {
$input = SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($type), $descriptor); $input = SWIG_NewMemberObj(%as_voidptr(&$1), sizeof($1), $descriptor);
} }
/* directorout */ /* directorout */
%typemap(directorout) SWIGTYPE (CLASS::*) { %typemap(directorout) SWIGTYPE (CLASS::*) {
int swig_res = SWIG_ConvertMember($input,%as_voidptr(&$result), sizeof($type), $descriptor); int swig_res = SWIG_ConvertMember($input,%as_voidptr(&$result), sizeof($result), $descriptor);
if (!SWIG_IsOK(swig_res)) { if (!SWIG_IsOK(swig_res)) {
%dirout_fail(swig_res,"$type"); %dirout_fail(swig_res,"$type");
} }

View file

@ -93,7 +93,7 @@ int isStructuralDoxygen(String *s) {
const size_t len = strlen(structuralTags[n]); const size_t len = strlen(structuralTags[n]);
if (strncmp(slashPointer, structuralTags[n], len) == 0) { if (strncmp(slashPointer, structuralTags[n], len) == 0) {
/* Take care to avoid false positives with prefixes of other tags. */ /* Take care to avoid false positives with prefixes of other tags. */
if (slashPointer[len] == '\0' || isspace(slashPointer[len])) if (slashPointer[len] == '\0' || isspace((int)slashPointer[len]))
return 1; return 1;
} }
} }

View file

@ -157,9 +157,9 @@
#define WARN_TYPE_REDEFINED 404 #define WARN_TYPE_REDEFINED 404
#define WARN_TYPE_RVALUE_REF_QUALIFIER_IGNORED 405 #define WARN_TYPE_RVALUE_REF_QUALIFIER_IGNORED 405
#define WARN_TYPEMAP_SOURCETARGET 450 #define WARN_TYPEMAP_SOURCETARGET 450 /* No longer issued */
#define WARN_TYPEMAP_CHARLEAK 451 #define WARN_TYPEMAP_CHARLEAK 451
#define WARN_TYPEMAP_SWIGTYPE 452 #define WARN_TYPEMAP_SWIGTYPE 452 /* No longer issued */
#define WARN_TYPEMAP_APPLY_UNDEF 453 #define WARN_TYPEMAP_APPLY_UNDEF 453
#define WARN_TYPEMAP_SWIGTYPELEAK 454 #define WARN_TYPEMAP_SWIGTYPELEAK 454

View file

@ -2445,7 +2445,6 @@ int ALLEGROCL::functionWrapper(Node *n) {
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
Delete(tm); Delete(tm);
} }

View file

@ -426,7 +426,6 @@ void CFFI::cleanupFunction(Node *n, Wrapper *f, ParmList *parms) {
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
String *tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0); String *tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0);
if (tm) { if (tm) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, "\n", NULL); Printv(f->code, tm, "\n", NULL);
Delete(tm); Delete(tm);
} }
@ -546,7 +545,6 @@ int CFFI::functionWrapper(Node *n) {
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
String *tm = 0; String *tm = 0;
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
Delete(tm); Delete(tm);
} }

View file

@ -400,7 +400,6 @@ int CHICKEN::functionWrapper(Node *n) {
} }
SwigType *pt = Getattr(p, "type"); SwigType *pt = Getattr(p, "type");
String *ln = Getattr(p, "lname");
Printf(f->def, ", C_word scm%d", i + 1); Printf(f->def, ", C_word scm%d", i + 1);
Printf(declfunc, ",C_word"); Printf(declfunc, ",C_word");
@ -410,8 +409,6 @@ int CHICKEN::functionWrapper(Node *n) {
String *parse = Getattr(p, "tmap:in:parse"); String *parse = Getattr(p, "tmap:in:parse");
if (!parse) { if (!parse) {
String *source = NewStringf("scm%d", i + 1); String *source = NewStringf("scm%d", i + 1);
Replaceall(tm, "$source", source);
Replaceall(tm, "$target", ln);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); /* Save the location of Setattr(p, "emit:input", source); /* Save the location of
the object */ the object */
@ -480,7 +477,6 @@ int CHICKEN::functionWrapper(Node *n) {
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -491,7 +487,6 @@ int CHICKEN::functionWrapper(Node *n) {
/* Insert cleanup code */ /* Insert cleanup code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
} else { } else {
@ -510,8 +505,6 @@ int CHICKEN::functionWrapper(Node *n) {
Printf(argout, "SWIG_Chicken_SetupArgout\n"); Printf(argout, "SWIG_Chicken_SetupArgout\n");
} }
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printf(argout, "%s", tm); Printf(argout, "%s", tm);
@ -528,8 +521,6 @@ int CHICKEN::functionWrapper(Node *n) {
/* Return the function value */ /* Return the function value */
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
Replaceall(tm, "$source", Swig_cresult_name());
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$result", "resultobj"); Replaceall(tm, "$result", "resultobj");
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
Replaceall(tm, "$owner", "1"); Replaceall(tm, "$owner", "1");
@ -556,14 +547,12 @@ int CHICKEN::functionWrapper(Node *n) {
/* Look to see if there is any newfree cleanup code */ /* Look to see if there is any newfree cleanup code */
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
@ -719,8 +708,6 @@ int CHICKEN::variableWrapper(Node *n) {
if (!GetFlag(n, "feature:immutable")) { if (!GetFlag(n, "feature:immutable")) {
Printf(f->code, "if (argc > 2) {\n"); Printf(f->code, "if (argc > 2) {\n");
if ((tm = Swig_typemap_lookup("varin", n, name, 0))) { if ((tm = Swig_typemap_lookup("varin", n, name, 0))) {
Replaceall(tm, "$source", "value");
Replaceall(tm, "$target", name);
Replaceall(tm, "$input", "value"); Replaceall(tm, "$input", "value");
/* Printv(f->code, tm, "\n",NIL); */ /* Printv(f->code, tm, "\n",NIL); */
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
@ -740,9 +727,7 @@ int CHICKEN::variableWrapper(Node *n) {
// Now return the value of the variable - regardless // Now return the value of the variable - regardless
// of evaluating or setting. // of evaluating or setting.
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$source", varname);
Replaceall(tm, "$varname", varname); Replaceall(tm, "$varname", varname);
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$result", "resultobj"); Replaceall(tm, "$result", "resultobj");
/* Printf(f->code, "%s\n", tm); */ /* Printf(f->code, "%s\n", tm); */
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
@ -871,8 +856,6 @@ int CHICKEN::constantWrapper(Node *n) {
Printf(f_header, "static %s = %s;\n", SwigType_str(t, source), rvalue); Printf(f_header, "static %s = %s;\n", SwigType_str(t, source), rvalue);
} else { } else {
if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) { if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) {
Replaceall(tm, "$source", rvalue);
Replaceall(tm, "$target", source);
Replaceall(tm, "$result", source); Replaceall(tm, "$result", source);
Replaceall(tm, "$value", rvalue); Replaceall(tm, "$value", rvalue);
Printf(f_header, "%s\n", tm); Printf(f_header, "%s\n", tm);
@ -907,9 +890,7 @@ int CHICKEN::constantWrapper(Node *n) {
// Return the value of the variable // Return the value of the variable
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$source", source);
Replaceall(tm, "$varname", source); Replaceall(tm, "$varname", source);
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$result", "resultobj"); Replaceall(tm, "$result", "resultobj");
/* Printf(f->code, "%s\n", tm); */ /* Printf(f->code, "%s\n", tm); */
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);

View file

@ -901,8 +901,6 @@ public:
// Get typemap for this argument // Get typemap for this argument
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
canThrow(n, "in", p); canThrow(n, "in", p);
Replaceall(tm, "$source", arg); /* deprecated */
Replaceall(tm, "$target", ln); /* deprecated */
Replaceall(tm, "$arg", arg); /* deprecated? */ Replaceall(tm, "$arg", arg); /* deprecated? */
Replaceall(tm, "$input", arg); Replaceall(tm, "$input", arg);
Setattr(p, "emit:input", arg); Setattr(p, "emit:input", arg);
@ -921,7 +919,6 @@ public:
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
canThrow(n, "check", p); canThrow(n, "check", p);
Replaceall(tm, "$target", Getattr(p, "lname")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
@ -935,7 +932,6 @@ public:
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
canThrow(n, "freearg", p); canThrow(n, "freearg", p);
Replaceall(tm, "$source", Getattr(p, "emit:input")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
@ -949,8 +945,6 @@ public:
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
canThrow(n, "argout", p); canThrow(n, "argout", p);
Replaceall(tm, "$source", Getattr(p, "emit:input")); /* deprecated */
Replaceall(tm, "$target", Getattr(p, "lname")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$result", "jresult"); Replaceall(tm, "$result", "jresult");
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
@ -982,8 +976,6 @@ public:
/* Return value if necessary */ /* Return value if necessary */
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
canThrow(n, "out", n); canThrow(n, "out", n);
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Replaceall(tm, "$target", "jresult"); /* deprecated */
Replaceall(tm, "$result", "jresult"); Replaceall(tm, "$result", "jresult");
if (GetFlag(n, "feature:new")) if (GetFlag(n, "feature:new"))
@ -1011,7 +1003,6 @@ public:
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
canThrow(n, "newfree", n); canThrow(n, "newfree", n);
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
@ -1020,7 +1011,6 @@ public:
if (!native_function_flag) { if (!native_function_flag) {
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
canThrow(n, "ret", n); canThrow(n, "ret", n);
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }

View file

@ -74,7 +74,6 @@ void emit_parameter_variables(ParmList *l, Wrapper *f) {
while (p) { while (p) {
tm = Getattr(p, "tmap:arginit"); tm = Getattr(p, "tmap:arginit");
if (tm) { if (tm) {
Replace(tm, "$target", Getattr(p, "lname"), DOH_REPLACE_ANY);
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:arginit:next"); p = Getattr(p, "tmap:arginit:next");
} else { } else {
@ -87,7 +86,6 @@ void emit_parameter_variables(ParmList *l, Wrapper *f) {
while (p) { while (p) {
tm = Getattr(p, "tmap:default"); tm = Getattr(p, "tmap:default");
if (tm) { if (tm) {
Replace(tm, "$target", Getattr(p, "lname"), DOH_REPLACE_ANY);
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:default:next"); p = Getattr(p, "tmap:default:next");
} else { } else {
@ -116,7 +114,6 @@ void emit_attach_parmmaps(ParmList *l, Wrapper *f) {
while (p) { while (p) {
String *tm = Getattr(p, "tmap:in"); String *tm = Getattr(p, "tmap:in");
if (tm && checkAttribute(p, "tmap:in:numinputs", "0")) { if (tm && checkAttribute(p, "tmap:in:numinputs", "0")) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
np = Getattr(p, "tmap:in:next"); np = Getattr(p, "tmap:in:next");
while (p && (p != np)) { while (p && (p != np)) {

View file

@ -2615,7 +2615,6 @@ private:
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
String *tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0); String *tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0);
if (tm) { if (tm) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, "\n", NULL); Printv(f->code, tm, "\n", NULL);
Delete(tm); Delete(tm);
} }
@ -2627,7 +2626,6 @@ private:
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
String *tm; String *tm;
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
Delete(tm); Delete(tm);
} }

View file

@ -719,7 +719,6 @@ public:
sprintf(source, "argv[%d]", i); sprintf(source, "argv[%d]", i);
else else
sprintf(source, "s_%d", i); sprintf(source, "s_%d", i);
String *target = Getattr(p, "lname");
if (!args_passed_as_array) { if (!args_passed_as_array) {
if (i != 0) if (i != 0)
@ -730,8 +729,6 @@ public:
Printf(f->code, " if (%s != SCM_UNDEFINED) {\n", source); Printf(f->code, " if (%s != SCM_UNDEFINED) {\n", source);
} }
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
Replaceall(tm, "$source", source);
Replaceall(tm, "$target", target);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); Setattr(p, "emit:input", source);
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
@ -794,7 +791,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -807,8 +803,6 @@ public:
String *returns_argout = NewString(""); String *returns_argout = NewString("");
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$target", Getattr(p, "lname"));
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(outarg, tm, "\n", NIL); Printv(outarg, tm, "\n", NIL);
@ -828,7 +822,6 @@ public:
/* Insert cleanup code */ /* Insert cleanup code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
@ -859,8 +852,6 @@ public:
// Now have return value, figure out what to do with it. // Now have return value, figure out what to do with it.
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
Replaceall(tm, "$result", "gswig_result"); Replaceall(tm, "$result", "gswig_result");
Replaceall(tm, "$target", "gswig_result");
Replaceall(tm, "$source", Swig_cresult_name());
if (GetFlag(n, "feature:new")) if (GetFlag(n, "feature:new"))
Replaceall(tm, "$owner", "1"); Replaceall(tm, "$owner", "1");
else else
@ -898,13 +889,11 @@ public:
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
} }
} }
// Free any memory allocated by the function being wrapped.. // Free any memory allocated by the function being wrapped..
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
} }
// Wrap things up (in a manner of speaking) // Wrap things up (in a manner of speaking)
@ -1141,9 +1130,7 @@ public:
/* Check for a setting of the variable value */ /* Check for a setting of the variable value */
Printf(f->code, "if (s_0 != SCM_UNDEFINED) {\n"); Printf(f->code, "if (s_0 != SCM_UNDEFINED) {\n");
if ((tm = Swig_typemap_lookup("varin", n, name, 0))) { if ((tm = Swig_typemap_lookup("varin", n, name, 0))) {
Replaceall(tm, "$source", "s_0");
Replaceall(tm, "$input", "s_0"); Replaceall(tm, "$input", "s_0");
Replaceall(tm, "$target", name);
/* Printv(f->code,tm,"\n",NIL); */ /* Printv(f->code,tm,"\n",NIL); */
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
} else { } else {
@ -1155,8 +1142,6 @@ public:
// of evaluating or setting) // of evaluating or setting)
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$source", name);
Replaceall(tm, "$target", "gswig_result");
Replaceall(tm, "$result", "gswig_result"); Replaceall(tm, "$result", "gswig_result");
/* Printv(f->code,tm,"\n",NIL); */ /* Printv(f->code,tm,"\n",NIL); */
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
@ -1334,9 +1319,7 @@ public:
// See if there's a typemap // See if there's a typemap
if ((tm = Swig_typemap_lookup("constant", n, name, 0))) { if ((tm = Swig_typemap_lookup("constant", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
Replaceall(tm, "$target", name);
Printv(f_header, tm, "\n", NIL); Printv(f_header, tm, "\n", NIL);
} else { } else {
// Create variable and assign it a value // Create variable and assign it a value

View file

@ -1001,8 +1001,6 @@ public:
// Get typemap for this argument // Get typemap for this argument
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
addThrows(n, "tmap:in", p); addThrows(n, "tmap:in", p);
Replaceall(tm, "$source", arg); /* deprecated */
Replaceall(tm, "$target", ln); /* deprecated */
Replaceall(tm, "$arg", arg); /* deprecated? */ Replaceall(tm, "$arg", arg); /* deprecated? */
Replaceall(tm, "$input", arg); Replaceall(tm, "$input", arg);
Setattr(p, "emit:input", arg); Setattr(p, "emit:input", arg);
@ -1027,7 +1025,6 @@ public:
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
addThrows(n, "tmap:check", p); addThrows(n, "tmap:check", p);
Replaceall(tm, "$target", Getattr(p, "lname")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
@ -1041,7 +1038,6 @@ public:
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
addThrows(n, "tmap:freearg", p); addThrows(n, "tmap:freearg", p);
Replaceall(tm, "$source", Getattr(p, "emit:input")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
@ -1055,8 +1051,6 @@ public:
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
addThrows(n, "tmap:argout", p); addThrows(n, "tmap:argout", p);
Replaceall(tm, "$source", Getattr(p, "emit:input")); /* deprecated */
Replaceall(tm, "$target", Getattr(p, "lname")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$result", "jresult"); Replaceall(tm, "$result", "jresult");
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
@ -1090,8 +1084,6 @@ public:
/* Return value if necessary */ /* Return value if necessary */
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
addThrows(n, "tmap:out", n); addThrows(n, "tmap:out", n);
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Replaceall(tm, "$target", "jresult"); /* deprecated */
Replaceall(tm, "$result", "jresult"); Replaceall(tm, "$result", "jresult");
if (GetFlag(n, "feature:new")) if (GetFlag(n, "feature:new"))
@ -1118,7 +1110,6 @@ public:
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
addThrows(n, "tmap:newfree", n); addThrows(n, "tmap:newfree", n);
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
@ -1127,7 +1118,6 @@ public:
if (!native_function_flag) { if (!native_function_flag) {
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
addThrows(n, "tmap:ret", n); addThrows(n, "tmap:ret", n);
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }

View file

@ -722,18 +722,18 @@ int Language::typemapDirective(Node *n) {
String *code = Getattr(n, "code"); String *code = Getattr(n, "code");
Parm *kwargs = Getattr(n, "kwargs"); Parm *kwargs = Getattr(n, "kwargs");
Node *items = firstChild(n); Node *items = firstChild(n);
static int namewarn = 0; static int nameerror = 0;
if (code && (Strstr(code, "$source") || (Strstr(code, "$target")))) { if (code && (Strstr(code, "$source") || (Strstr(code, "$target")))) {
Swig_warning(WARN_TYPEMAP_SOURCETARGET, Getfile(n), Getline(n), "Deprecated typemap feature ($source/$target).\n"); Swig_error(Getfile(n), Getline(n), "Obsolete typemap feature ($source/$target).\n");
if (!namewarn) { if (!nameerror) {
Swig_warning(WARN_TYPEMAP_SOURCETARGET, Getfile(n), Getline(n), "The use of $source and $target in a typemap declaration is deprecated.\n\ Swig_error(Getfile(n), Getline(n), "The use of $source and $target in a typemap declaration is no longer supported.\n\
For typemaps related to argument input (in,ignore,default,arginit,check), replace\n\ For typemaps related to argument input (in,ignore,default,arginit,check), replace\n\
$source by $input and $target by $1. For typemaps related to return values (out,\n\ $source by $input and $target by $1. For typemaps related to return values (out,\n\
argout,ret,except), replace $source by $1 and $target by $result. See the file\n\ argout,ret,except), replace $source by $1 and $target by $result. See the file\n\
Doc/Manual/Typemaps.html for complete details.\n"); Doc/Manual/Typemaps.html for complete details.\n");
namewarn = 1; nameerror = 1;
} }
} }
@ -1481,8 +1481,6 @@ int Language::membervariableHandler(Node *n) {
} else { } else {
String *pname0 = Swig_cparm_name(0, 0); String *pname0 = Swig_cparm_name(0, 0);
String *pname1 = Swig_cparm_name(0, 1); String *pname1 = Swig_cparm_name(0, 1);
Replace(tm, "$source", pname1, DOH_REPLACE_ANY);
Replace(tm, "$target", target, DOH_REPLACE_ANY);
Replace(tm, "$input", pname1, DOH_REPLACE_ANY); Replace(tm, "$input", pname1, DOH_REPLACE_ANY);
Replace(tm, "$self", pname0, DOH_REPLACE_ANY); Replace(tm, "$self", pname0, DOH_REPLACE_ANY);
Setattr(n, "wrap:action", tm); Setattr(n, "wrap:action", tm);
@ -3049,8 +3047,6 @@ int Language::variableWrapper(Node *n) {
} }
} else { } else {
String *pname0 = Swig_cparm_name(0, 0); String *pname0 = Swig_cparm_name(0, 0);
Replace(tm, "$source", pname0, DOH_REPLACE_ANY);
Replace(tm, "$target", name, DOH_REPLACE_ANY);
Replace(tm, "$input", pname0, DOH_REPLACE_ANY); Replace(tm, "$input", pname0, DOH_REPLACE_ANY);
Setattr(n, "wrap:action", tm); Setattr(n, "wrap:action", tm);
Delete(tm); Delete(tm);

View file

@ -613,13 +613,9 @@ public:
} }
SwigType *pt = Getattr(p, "type"); SwigType *pt = Getattr(p, "type");
String *ln = Getattr(p, "lname");
/* Look for an input typemap */ /* Look for an input typemap */
sprintf(source, "%d", i + 1); sprintf(source, "%d", i + 1);
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
Replaceall(tm, "$source", source);
Replaceall(tm, "$target", ln);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); Setattr(p, "emit:input", source);
if (Getattr(p, "wrap:disown") || (Getattr(p, "tmap:in:disown"))) { if (Getattr(p, "wrap:disown") || (Getattr(p, "tmap:in:disown"))) {
@ -678,7 +674,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -690,7 +685,6 @@ public:
String *cleanup = NewString(""); String *cleanup = NewString("");
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
} else { } else {
@ -709,8 +703,6 @@ public:
// returnval+=GetInt(p,"tmap:argout:numoutputs"); // returnval+=GetInt(p,"tmap:argout:numoutputs");
// } // }
// else returnval++; // else returnval++;
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$target", Swig_cresult_name());
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(outarg, tm, "\n", NIL); Printv(outarg, tm, "\n", NIL);
@ -740,7 +732,6 @@ public:
// returnval+=GetInt(tm,"numoutputs"); // returnval+=GetInt(tm,"numoutputs");
// } // }
// else returnval++; // else returnval++;
Replaceall(tm, "$source", Swig_cresult_name());
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
Replaceall(tm, "$owner", "1"); Replaceall(tm, "$owner", "1");
} else { } else {
@ -762,14 +753,12 @@ public:
/* Look to see if there is any newfree cleanup code */ /* Look to see if there is any newfree cleanup code */
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
@ -1074,14 +1063,10 @@ public:
} }
if ((tm = Swig_typemap_lookup("consttab", n, name, 0))) { if ((tm = Swig_typemap_lookup("consttab", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", lua_name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
Replaceall(tm, "$nsname", nsname); Replaceall(tm, "$nsname", nsname);
registerConstant(luaCurrentSymbolNSpace(), tm); registerConstant(luaCurrentSymbolNSpace(), tm);
} else if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) { } else if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", lua_name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
Replaceall(tm, "$nsname", nsname); Replaceall(tm, "$nsname", nsname);
Printf(f_init, "%s\n", tm); Printf(f_init, "%s\n", tm);
@ -1110,8 +1095,6 @@ public:
Setattr(n_v2, "sym:name", lua_name_v2); Setattr(n_v2, "sym:name", lua_name_v2);
tm_v2 = Swig_typemap_lookup("consttab", n_v2, name, 0); tm_v2 = Swig_typemap_lookup("consttab", n_v2, name, 0);
if (tm_v2) { if (tm_v2) {
Replaceall(tm_v2, "$source", value);
Replaceall(tm_v2, "$target", lua_name_v2);
Replaceall(tm_v2, "$value", value); Replaceall(tm_v2, "$value", value);
Replaceall(tm_v2, "$nsname", nsname); Replaceall(tm_v2, "$nsname", nsname);
registerConstant(getNSpace(), tm_v2); registerConstant(getNSpace(), tm_v2);
@ -1123,8 +1106,6 @@ public:
Swig_restore(n); Swig_restore(n);
return SWIG_ERROR; return SWIG_ERROR;
} }
Replaceall(tm_v2, "$source", value);
Replaceall(tm_v2, "$target", lua_name_v2);
Replaceall(tm_v2, "$value", value); Replaceall(tm_v2, "$value", value);
Replaceall(tm_v2, "$nsname", nsname); Replaceall(tm_v2, "$nsname", nsname);
Printf(f_init, "%s\n", tm_v2); Printf(f_init, "%s\n", tm_v2);

View file

@ -1346,7 +1346,6 @@ MODULA3():
String *tm = Getattr(p, "tmap:check"); String *tm = Getattr(p, "tmap:check");
if (tm != NIL) { if (tm != NIL) {
addThrows(throws_hash, "check", p); addThrows(throws_hash, "check", p);
Replaceall(tm, "$target", Getattr(p, "lname")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
@ -1364,7 +1363,6 @@ MODULA3():
String *tm = Getattr(p, "tmap:freearg"); String *tm = Getattr(p, "tmap:freearg");
if (tm != NIL) { if (tm != NIL) {
addThrows(throws_hash, "freearg", p); addThrows(throws_hash, "freearg", p);
Replaceall(tm, "$source", Getattr(p, "emit:input")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
@ -1382,8 +1380,6 @@ MODULA3():
String *tm = Getattr(p, "tmap:argout"); String *tm = Getattr(p, "tmap:argout");
if (tm != NIL) { if (tm != NIL) {
addThrows(throws_hash, "argout", p); addThrows(throws_hash, "argout", p);
Replaceall(tm, "$source", Getattr(p, "emit:input")); /* deprecated */
Replaceall(tm, "$target", Getattr(p, "lname")); /* deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */ Replaceall(tm, "$arg", Getattr(p, "emit:input")); /* deprecated? */
Replaceall(tm, "$result", "cresult"); Replaceall(tm, "$result", "cresult");
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
@ -1415,8 +1411,6 @@ MODULA3():
String *tm; String *tm;
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
addThrows(throws_hash, "out", n); addThrows(throws_hash, "out", n);
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Replaceall(tm, "$target", "cresult"); /* deprecated */
Replaceall(tm, "$result", "cresult"); Replaceall(tm, "$result", "cresult");
Printf(f->code, "%s", tm); Printf(f->code, "%s", tm);
if (hasContent(tm)) if (hasContent(tm))
@ -1438,7 +1432,6 @@ MODULA3():
String *tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0); String *tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0);
if (tm != NIL) { if (tm != NIL) {
addThrows(throws_hash, "newfree", n); addThrows(throws_hash, "newfree", n);
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
@ -1447,7 +1440,6 @@ MODULA3():
if (!native_function_flag) { if (!native_function_flag) {
String *tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0); String *tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0);
if (tm != NIL) { if (tm != NIL) {
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }

View file

@ -322,8 +322,6 @@ public:
} }
// Handle parameter types. // Handle parameter types.
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
Replaceall(tm, "$source", source);
Replaceall(tm, "$target", target);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); Setattr(p, "emit:input", source);
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
@ -343,7 +341,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -355,8 +352,6 @@ public:
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
Replaceall(tm, "$source", Getattr(p, "emit:input")); /* Deprecated */
Replaceall(tm, "$target", Getattr(p, "lname")); /* Deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(outarg, tm, "\n", NIL); Printv(outarg, tm, "\n", NIL);
@ -371,7 +366,6 @@ public:
/* Insert cleanup code */ /* Insert cleanup code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
} else { } else {
@ -385,8 +379,6 @@ public:
// Now have return value, figure out what to do with it. // Now have return value, figure out what to do with it.
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
Replaceall(tm, "$source", Swig_cresult_name());
Replaceall(tm, "$target", "values[0]");
Replaceall(tm, "$result", "values[0]"); Replaceall(tm, "$result", "values[0]");
if (GetFlag(n, "feature:new")) if (GetFlag(n, "feature:new"))
Replaceall(tm, "$owner", "1"); Replaceall(tm, "$owner", "1");
@ -408,14 +400,12 @@ public:
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
} }
} }
// Free any memory allocated by the function being wrapped.. // Free any memory allocated by the function being wrapped..
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
} }
// Wrap things up (in a manner of speaking) // Wrap things up (in a manner of speaking)
@ -521,8 +511,6 @@ public:
/* Check for a setting of the variable value */ /* Check for a setting of the variable value */
Printf(f->code, "if (argc) {\n"); Printf(f->code, "if (argc) {\n");
if ((tm = Swig_typemap_lookup("varin", n, name, 0))) { if ((tm = Swig_typemap_lookup("varin", n, name, 0))) {
Replaceall(tm, "$source", "argv[0]");
Replaceall(tm, "$target", name);
Replaceall(tm, "$input", "argv[0]"); Replaceall(tm, "$input", "argv[0]");
Replaceall(tm, "$argnum", "1"); Replaceall(tm, "$argnum", "1");
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
@ -535,8 +523,6 @@ public:
// of evaluating or setting) // of evaluating or setting)
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$source", name);
Replaceall(tm, "$target", "swig_result");
Replaceall(tm, "$result", "swig_result"); Replaceall(tm, "$result", "swig_result");
/* Printf (f->code, "%s\n", tm); */ /* Printf (f->code, "%s\n", tm); */
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
@ -609,9 +595,7 @@ public:
Printv(rvalue, "'", temp, "'", NIL); Printv(rvalue, "'", temp, "'", NIL);
} }
if ((tm = Swig_typemap_lookup("constant", n, name, 0))) { if ((tm = Swig_typemap_lookup("constant", n, name, 0))) {
Replaceall(tm, "$source", rvalue);
Replaceall(tm, "$value", rvalue); Replaceall(tm, "$value", rvalue);
Replaceall(tm, "$target", name);
Printf(f_init, "%s\n", tm); Printf(f_init, "%s\n", tm);
} else { } else {
// Create variable and assign it a value // Create variable and assign it a value

View file

@ -590,8 +590,6 @@ public:
} }
// Handle parameter types. // Handle parameter types.
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
Replaceall(tm, "$source", source);
Replaceall(tm, "$target", target);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); Setattr(p, "emit:input", source);
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
@ -611,7 +609,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -623,8 +620,6 @@ public:
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
Replaceall(tm, "$source", Getattr(p, "emit:input")); /* Deprecated */
Replaceall(tm, "$target", Getattr(p, "lname")); /* Deprecated */
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Replaceall(tm, "$ntype", normalizeTemplatedClassName(Getattr(p, "type"))); Replaceall(tm, "$ntype", normalizeTemplatedClassName(Getattr(p, "type")));
@ -640,7 +635,6 @@ public:
/* Insert cleanup code */ /* Insert cleanup code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
} else { } else {
@ -681,8 +675,6 @@ public:
String *actioncode = emit_action(n); String *actioncode = emit_action(n);
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
Replaceall(tm, "$source", "swig_result");
Replaceall(tm, "$target", "rv");
Replaceall(tm, "$result", "rv"); Replaceall(tm, "$result", "rv");
Replaceall(tm, "$ntype", return_type_normalized); Replaceall(tm, "$ntype", return_type_normalized);
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
@ -701,14 +693,12 @@ public:
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", "swig_result");
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
} }
} }
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
Delete(tm); Delete(tm);
} }
@ -716,7 +706,6 @@ public:
// Free any memory allocated by the function being wrapped.. // Free any memory allocated by the function being wrapped..
if ((tm = Swig_typemap_lookup("swig_result", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("swig_result", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
} }
// Wrap things up (in a manner of speaking) // Wrap things up (in a manner of speaking)
@ -853,13 +842,9 @@ public:
/* Check for a setting of the variable value */ /* Check for a setting of the variable value */
Printf(f->code, "if (args != Val_int(0)) {\n"); Printf(f->code, "if (args != Val_int(0)) {\n");
if ((tm = Swig_typemap_lookup("varin", n, name, 0))) { if ((tm = Swig_typemap_lookup("varin", n, name, 0))) {
Replaceall(tm, "$source", "args");
Replaceall(tm, "$target", name);
Replaceall(tm, "$input", "args"); Replaceall(tm, "$input", "args");
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
} else if ((tm = Swig_typemap_lookup("in", n, name, 0))) { } else if ((tm = Swig_typemap_lookup("in", n, name, 0))) {
Replaceall(tm, "$source", "args");
Replaceall(tm, "$target", name);
Replaceall(tm, "$input", "args"); Replaceall(tm, "$input", "args");
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
} else { } else {
@ -871,13 +856,9 @@ public:
// of evaluating or setting) // of evaluating or setting)
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$source", name);
Replaceall(tm, "$target", "swig_result");
Replaceall(tm, "$result", "swig_result"); Replaceall(tm, "$result", "swig_result");
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
} else if ((tm = Swig_typemap_lookup("out", n, name, 0))) { } else if ((tm = Swig_typemap_lookup("out", n, name, 0))) {
Replaceall(tm, "$source", name);
Replaceall(tm, "$target", "swig_result");
Replaceall(tm, "$result", "swig_result"); Replaceall(tm, "$result", "swig_result");
emit_action_code(n, f->code, tm); emit_action_code(n, f->code, tm);
} else { } else {

View file

@ -611,9 +611,7 @@ public:
sprintf(source, "args(%d)", j); sprintf(source, "args(%d)", j);
Setattr(p, "emit:input", source); Setattr(p, "emit:input", source);
Replaceall(tm, "$source", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Replaceall(tm, "$target", Getattr(p, "lname"));
if (Getattr(p, "wrap:disown") || (Getattr(p, "tmap:in:disown"))) { if (Getattr(p, "wrap:disown") || (Getattr(p, "tmap:in:disown"))) {
Replaceall(tm, "$disown", "SWIG_POINTER_DISOWN"); Replaceall(tm, "$disown", "SWIG_POINTER_DISOWN");
@ -658,7 +656,6 @@ public:
// Insert constraint checking code // Insert constraint checking code
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -681,7 +678,6 @@ public:
} }
} }
if (tm && (Len(tm) != 0)) { if (tm && (Len(tm) != 0)) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
} }
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
@ -694,8 +690,6 @@ public:
String *outarg = NewString(""); String *outarg = NewString("");
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$target", "_outp");
Replaceall(tm, "$result", "_outp"); Replaceall(tm, "$result", "_outp");
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
@ -723,8 +717,6 @@ public:
// Return the function value // Return the function value
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
Replaceall(tm, "$source", Swig_cresult_name());
Replaceall(tm, "$target", "_outv");
Replaceall(tm, "$result", "_outv"); Replaceall(tm, "$result", "_outv");
if (GetFlag(n, "feature:new")) if (GetFlag(n, "feature:new"))
@ -745,13 +737,11 @@ public:
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Replaceall(tm, "$result", "_outv"); Replaceall(tm, "$result", "_outv");
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
Delete(tm); Delete(tm);
@ -849,8 +839,6 @@ public:
if (is_assignable(n)) { if (is_assignable(n)) {
Setattr(n, "wrap:name", setname); Setattr(n, "wrap:name", setname);
if ((tm = Swig_typemap_lookup("varin", n, name, 0))) { if ((tm = Swig_typemap_lookup("varin", n, name, 0))) {
Replaceall(tm, "$source", "args(0)");
Replaceall(tm, "$target", name);
Replaceall(tm, "$input", "args(0)"); Replaceall(tm, "$input", "args(0)");
if (Getattr(n, "tmap:varin:implicitconv")) { if (Getattr(n, "tmap:varin:implicitconv")) {
Replaceall(tm, "$implicitconv", get_implicitconv_flag(n)); Replaceall(tm, "$implicitconv", get_implicitconv_flag(n));
@ -874,8 +862,6 @@ public:
Octave_begin_function(n, getf->def, getname, getwname, true); Octave_begin_function(n, getf->def, getname, getwname, true);
Wrapper_add_local(getf, "obj", "octave_value obj"); Wrapper_add_local(getf, "obj", "octave_value obj");
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$source", name);
Replaceall(tm, "$target", "obj");
Replaceall(tm, "$result", "obj"); Replaceall(tm, "$result", "obj");
addfail = emit_action_code(n, getf->code, tm); addfail = emit_action_code(n, getf->code, tm);
Delete(tm); Delete(tm);
@ -920,8 +906,6 @@ public:
value = wname; value = wname;
} }
if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) { if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", name);
Replaceall(tm, "$value", cppvalue ? cppvalue : value); Replaceall(tm, "$value", cppvalue ? cppvalue : value);
Replaceall(tm, "$nsname", iname); Replaceall(tm, "$nsname", iname);
Printf(f_init, "%s\n", tm); Printf(f_init, "%s\n", tm);

View file

@ -725,14 +725,11 @@ public:
/* Produce string representation of source and target arguments */ /* Produce string representation of source and target arguments */
sprintf(source, "ST(%d)", i); sprintf(source, "ST(%d)", i);
String *target = Getattr(p, "lname");
if (i >= num_required) { if (i >= num_required) {
Printf(f->code, " if (items > %d) {\n", i); Printf(f->code, " if (items > %d) {\n", i);
} }
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
Replaceall(tm, "$target", target);
Replaceall(tm, "$source", source);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); /* Save input location */ Setattr(p, "emit:input", source); /* Save input location */
@ -767,7 +764,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -778,7 +774,6 @@ public:
/* Insert cleanup code */ /* Insert cleanup code */
for (i = 0, p = l; p; i++) { for (i = 0, p = l; p; i++) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
@ -793,8 +788,6 @@ public:
for (i = 0, p = l; p; i++) { for (i = 0, p = l; p; i++) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
SwigType *t = Getattr(p, "type"); SwigType *t = Getattr(p, "type");
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$target", "ST(argvi)");
Replaceall(tm, "$result", "ST(argvi)"); Replaceall(tm, "$result", "ST(argvi)");
if (is_shadow(t)) { if (is_shadow(t)) {
Replaceall(tm, "$shadow", "SWIG_SHADOW"); Replaceall(tm, "$shadow", "SWIG_SHADOW");
@ -855,8 +848,6 @@ public:
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
SwigType *t = Getattr(n, "type"); SwigType *t = Getattr(n, "type");
Replaceall(tm, "$source", Swig_cresult_name());
Replaceall(tm, "$target", "ST(argvi)");
Replaceall(tm, "$result", "ST(argvi)"); Replaceall(tm, "$result", "ST(argvi)");
if (is_shadow(t)) { if (is_shadow(t)) {
Replaceall(tm, "$shadow", "SWIG_SHADOW"); Replaceall(tm, "$shadow", "SWIG_SHADOW");
@ -884,13 +875,11 @@ public:
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
@ -995,8 +984,6 @@ public:
/* Check for a few typemaps */ /* Check for a few typemaps */
tm = Swig_typemap_lookup("varin", n, name, 0); tm = Swig_typemap_lookup("varin", n, name, 0);
if (tm) { if (tm) {
Replaceall(tm, "$source", "sv");
Replaceall(tm, "$target", name);
Replaceall(tm, "$input", "sv"); Replaceall(tm, "$input", "sv");
/* Printf(setf->code,"%s\n", tm); */ /* Printf(setf->code,"%s\n", tm); */
emit_action_code(n, setf->code, tm); emit_action_code(n, setf->code, tm);
@ -1019,9 +1006,7 @@ public:
Printv(getf->code, tab4, "MAGIC_PPERL\n", NIL); Printv(getf->code, tab4, "MAGIC_PPERL\n", NIL);
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$target", "sv");
Replaceall(tm, "$result", "sv"); Replaceall(tm, "$result", "sv");
Replaceall(tm, "$source", name);
if (is_shadow(t)) { if (is_shadow(t)) {
Replaceall(tm, "$shadow", "SWIG_SHADOW"); Replaceall(tm, "$shadow", "SWIG_SHADOW");
} else { } else {
@ -1111,8 +1096,6 @@ public:
} }
if ((tm = Swig_typemap_lookup("consttab", n, name, 0))) { if ((tm = Swig_typemap_lookup("consttab", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
if (is_shadow(type)) { if (is_shadow(type)) {
Replaceall(tm, "$shadow", "SWIG_SHADOW"); Replaceall(tm, "$shadow", "SWIG_SHADOW");
@ -1121,8 +1104,6 @@ public:
} }
Printf(constant_tab, "%s,\n", tm); Printf(constant_tab, "%s,\n", tm);
} else if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) { } else if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
if (is_shadow(type)) { if (is_shadow(type)) {
Replaceall(tm, "$shadow", "SWIG_SHADOW"); Replaceall(tm, "$shadow", "SWIG_SHADOW");

View file

@ -1345,7 +1345,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -1493,7 +1492,6 @@ public:
if (!wrapping_member_constant) { if (!wrapping_member_constant) {
{ {
tm = Swig_typemap_lookup("consttab", n, name, 0); tm = Swig_typemap_lookup("consttab", n, name, 0);
Replaceall(tm, "$target", name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
Printf(s_cinit, "%s\n", tm); Printf(s_cinit, "%s\n", tm);
} }

View file

@ -341,8 +341,6 @@ public:
/* Look for an input typemap */ /* Look for an input typemap */
sprintf(source, "Pike_sp[%d-args]", i - start + offset); sprintf(source, "Pike_sp[%d-args]", i - start + offset);
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
Replaceall(tm, "$source", source);
Replaceall(tm, "$target", ln);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); Setattr(p, "emit:input", source);
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
@ -371,7 +369,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -383,7 +380,6 @@ public:
String *cleanup = NewString(""); String *cleanup = NewString("");
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
} else { } else {
@ -395,8 +391,6 @@ public:
String *outarg = NewString(""); String *outarg = NewString("");
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(outarg, tm, "\n", NIL); Printv(outarg, tm, "\n", NIL);
@ -422,8 +416,6 @@ public:
Printv(description, ", ", NIL); Printv(description, ", ", NIL);
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
actioncode = 0; actioncode = 0;
Replaceall(tm, "$source", Swig_cresult_name());
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$result", "resultobj"); Replaceall(tm, "$result", "resultobj");
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
Replaceall(tm, "$owner", "1"); Replaceall(tm, "$owner", "1");
@ -454,14 +446,12 @@ public:
/* Look to see if there is any newfree cleanup code */ /* Look to see if there is any newfree cleanup code */
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
@ -586,8 +576,6 @@ public:
/* Perform constant typemap substitution */ /* Perform constant typemap substitution */
String *tm = Swig_typemap_lookup("constant", n, value, 0); String *tm = Swig_typemap_lookup("constant", n, value, 0);
if (tm) { if (tm) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", symname);
Replaceall(tm, "$symname", symname); Replaceall(tm, "$symname", symname);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
Printf(f_init, "%s\n", tm); Printf(f_init, "%s\n", tm);

View file

@ -2867,8 +2867,6 @@ public:
} else { } else {
Replaceall(tm, "$self", "obj0"); Replaceall(tm, "$self", "obj0");
} }
Replaceall(tm, "$source", source);
Replaceall(tm, "$target", ln);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); /* Save the location of the object */ Setattr(p, "emit:input", source); /* Save the location of the object */
@ -2976,7 +2974,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -2998,7 +2995,6 @@ public:
} }
} }
if (tm && (Len(tm) != 0)) { if (tm && (Len(tm) != 0)) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
} }
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
@ -3010,8 +3006,6 @@ public:
/* Insert argument output code */ /* Insert argument output code */
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
Printv(outarg, tm, "\n", NIL); Printv(outarg, tm, "\n", NIL);
@ -3100,8 +3094,6 @@ public:
} else { } else {
Replaceall(tm, "$self", "obj0"); Replaceall(tm, "$self", "obj0");
} }
Replaceall(tm, "$source", Swig_cresult_name());
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$result", "resultobj"); Replaceall(tm, "$result", "resultobj");
if (builtin_ctor) { if (builtin_ctor) {
Replaceall(tm, "$owner", "SWIG_BUILTIN_INIT"); Replaceall(tm, "$owner", "SWIG_BUILTIN_INIT");
@ -3167,7 +3159,6 @@ public:
/* Look to see if there is any newfree cleanup code */ /* Look to see if there is any newfree cleanup code */
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
Delete(tm); Delete(tm);
} }
@ -3175,7 +3166,6 @@ public:
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
Delete(tm); Delete(tm);
} }
@ -3461,8 +3451,6 @@ public:
} }
Printf(setf->def, "SWIGINTERN int %s(PyObject *_val) {", varsetname); Printf(setf->def, "SWIGINTERN int %s(PyObject *_val) {", varsetname);
if ((tm = Swig_typemap_lookup("varin", n, name, 0))) { if ((tm = Swig_typemap_lookup("varin", n, name, 0))) {
Replaceall(tm, "$source", "_val");
Replaceall(tm, "$target", name);
Replaceall(tm, "$input", "_val"); Replaceall(tm, "$input", "_val");
if (Getattr(n, "tmap:varin:implicitconv")) { if (Getattr(n, "tmap:varin:implicitconv")) {
Replaceall(tm, "$implicitconv", get_implicitconv_flag(n)); Replaceall(tm, "$implicitconv", get_implicitconv_flag(n));
@ -3503,8 +3491,6 @@ public:
Append(getf->code, " (void)self;\n"); Append(getf->code, " (void)self;\n");
} }
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$source", name);
Replaceall(tm, "$target", "pyobj");
Replaceall(tm, "$result", "pyobj"); Replaceall(tm, "$result", "pyobj");
addfail = emit_action_code(n, getf->code, tm); addfail = emit_action_code(n, getf->code, tm);
Delete(tm); Delete(tm);
@ -3584,8 +3570,6 @@ public:
} }
if ((tm = Swig_typemap_lookup("consttab", n, name, 0))) { if ((tm = Swig_typemap_lookup("consttab", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
Printf(const_code, "%s,\n", tm); Printf(const_code, "%s,\n", tm);
Delete(tm); Delete(tm);
@ -3600,8 +3584,6 @@ public:
} }
if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) { if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
if (needs_swigconstant(n) && !builtin && (shadow) && (!(shadow & PYSHADOW_MEMBER)) && (!in_class || !Getattr(n, "feature:python:callback"))) { if (needs_swigconstant(n) && !builtin && (shadow) && (!(shadow & PYSHADOW_MEMBER)) && (!in_class || !Getattr(n, "feature:python:callback"))) {
// Generate `*_swigconstant()` method which registers the new constant. // Generate `*_swigconstant()` method which registers the new constant.

View file

@ -634,7 +634,6 @@ String * R::createFunctionPointerHandler(SwigType *t, Node *n, int *numArgs) {
if(returnTM) { if(returnTM) {
String *tm = returnTM; String *tm = returnTM;
Replaceall(tm,"$input", "r_swig_cb_data->retValue"); Replaceall(tm,"$input", "r_swig_cb_data->retValue");
Replaceall(tm,"$target", Swig_cresult_name());
replaceRClass(tm, rettype); replaceRClass(tm, rettype);
Replaceall(tm,"$owner", "0"); Replaceall(tm,"$owner", "0");
Replaceall(tm,"$disown","0"); Replaceall(tm,"$disown","0");
@ -1745,7 +1744,7 @@ int R::functionWrapper(Node *n) {
/* Add the name of this member to a list for this class_name. /* Add the name of this member to a list for this class_name.
We will dump all these at the end. */ We will dump all these at the end. */
bool isSet(GetFlag(n, "memberset")); bool isSet = GetFlag(n, "memberset") ? true : false;
String *tmp = NewString(isSet ? Swig_name_set(NSPACE_TODO, class_name) : Swig_name_get(NSPACE_TODO, class_name)); String *tmp = NewString(isSet ? Swig_name_set(NSPACE_TODO, class_name) : Swig_name_get(NSPACE_TODO, class_name));
@ -1912,8 +1911,6 @@ int R::functionWrapper(Node *n) {
if ((tm = Getattr(p,"tmap:scheck"))) { if ((tm = Getattr(p,"tmap:scheck"))) {
Replaceall(tm,"$target", lname);
Replaceall(tm,"$source", name);
Replaceall(tm,"$input", name); Replaceall(tm,"$input", name);
replaceRClass(tm, Getattr(p, "type")); replaceRClass(tm, Getattr(p, "type"));
Printf(sfun->code,"%s\n",tm); Printf(sfun->code,"%s\n",tm);
@ -1924,8 +1921,6 @@ int R::functionWrapper(Node *n) {
curP = p; curP = p;
if ((tm = Getattr(p,"tmap:in"))) { if ((tm = Getattr(p,"tmap:in"))) {
Replaceall(tm,"$target", lname);
Replaceall(tm,"$source", name);
Replaceall(tm,"$input", name); Replaceall(tm,"$input", name);
if (Getattr(p,"wrap:disown") || (Getattr(p,"tmap:in:disown"))) { if (Getattr(p,"wrap:disown") || (Getattr(p,"tmap:in:disown"))) {
@ -1984,7 +1979,6 @@ int R::functionWrapper(Node *n) {
String *cleanup = NewString(""); String *cleanup = NewString("");
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
if (tm && (Len(tm) != 0)) { if (tm && (Len(tm) != 0)) {
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
} }
@ -2001,7 +1995,6 @@ int R::functionWrapper(Node *n) {
// String *lname = Getattr(p, "lname"); // String *lname = Getattr(p, "lname");
numOutArgs++; numOutArgs++;
String *pos = NewStringf("%d", numOutArgs); String *pos = NewStringf("%d", numOutArgs);
Replaceall(tm,"$source", Getattr(p, "lname"));
Replaceall(tm,"$result", "r_ans"); Replaceall(tm,"$result", "r_ans");
Replaceall(tm,"$n", pos); // The position into which to store the answer. Replaceall(tm,"$n", pos); // The position into which to store the answer.
Replaceall(tm,"$arg", Getattr(p, "emit:input")); Replaceall(tm,"$arg", Getattr(p, "emit:input"));
@ -2076,14 +2069,12 @@ int R::functionWrapper(Node *n) {
/* Look to see if there is any newfree cleanup code */ /* Look to see if there is any newfree cleanup code */
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name()); /* deprecated */
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
Delete(tm); Delete(tm);
} }
@ -2092,7 +2083,6 @@ int R::functionWrapper(Node *n) {
/*If the user gave us something to convert the result in */ /*If the user gave us something to convert the result in */
if ((tm = Swig_typemap_lookup("scoerceout", n, Swig_cresult_name(), sfun))) { if ((tm = Swig_typemap_lookup("scoerceout", n, Swig_cresult_name(), sfun))) {
Replaceall(tm,"$source","ans");
Replaceall(tm,"$result","ans"); Replaceall(tm,"$result","ans");
if (constructor) { if (constructor) {
Node * parent = Getattr(n, "parentNode"); Node * parent = Getattr(n, "parentNode");

View file

@ -1425,16 +1425,14 @@ public:
* applyInputTypemap() * applyInputTypemap()
* *
* Look up the appropriate "in" typemap for this parameter (p), * Look up the appropriate "in" typemap for this parameter (p),
* substitute the correct strings for the $target and $input typemap * substitute the correct strings for the typemap parameters, and dump the
* parameters, and dump the resulting code to the wrapper file. * resulting code to the wrapper file.
* --------------------------------------------------------------------- */ * --------------------------------------------------------------------- */
Parm *applyInputTypemap(Parm *p, String *ln, String *source, Wrapper *f, String *symname) { Parm *applyInputTypemap(Parm *p, String *source, Wrapper *f, String *symname) {
String *tm; String *tm;
SwigType *pt = Getattr(p, "type"); SwigType *pt = Getattr(p, "type");
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
Replaceall(tm, "$target", ln);
Replaceall(tm, "$source", source);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Replaceall(tm, "$symname", symname); Replaceall(tm, "$symname", symname);
@ -1474,10 +1472,8 @@ public:
Parm *p; Parm *p;
String *tm; String *tm;
String *source; String *source;
String *target;
source = NewString(""); source = NewString("");
target = NewString("");
bool ctor_director = (current == CONSTRUCTOR_INITIALIZE && Swig_directorclass(n)); bool ctor_director = (current == CONSTRUCTOR_INITIALIZE && Swig_directorclass(n));
@ -1498,7 +1494,6 @@ public:
p = skipIgnoredArgs(p); p = skipIgnoredArgs(p);
String *pn = Getattr(p, "name"); String *pn = Getattr(p, "name");
String *ln = Getattr(p, "lname");
/* Produce string representation of source argument */ /* Produce string representation of source argument */
Clear(source); Clear(source);
@ -1510,10 +1505,6 @@ public:
Printf(source, "argv[%d]", i - start); Printf(source, "argv[%d]", i - start);
} }
/* Produce string representation of target argument */
Clear(target);
Printf(target, "%s", Char(ln));
if (i >= (numreq)) { /* Check if parsing an optional argument */ if (i >= (numreq)) { /* Check if parsing an optional argument */
Printf(f->code, " if (argc > %d) {\n", i - start); Printf(f->code, " if (argc > %d) {\n", i - start);
} }
@ -1526,7 +1517,7 @@ public:
} }
/* Look for an input typemap */ /* Look for an input typemap */
p = applyInputTypemap(p, ln, source, f, Getattr(n, "name")); p = applyInputTypemap(p, source, f, Getattr(n, "name"));
if (i >= numreq) { if (i >= numreq) {
Printf(f->code, "}\n"); Printf(f->code, "}\n");
} }
@ -1553,7 +1544,6 @@ public:
} }
Delete(source); Delete(source);
Delete(target);
} }
/* --------------------------------------------------------------------- /* ---------------------------------------------------------------------
@ -1569,7 +1559,6 @@ public:
String *tm; String *tm;
for (p = l; p;) { for (p = l; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -1591,7 +1580,6 @@ public:
for (Parm *p = l; p;) { for (Parm *p = l; p;) {
if ((tm = Getattr(p, "tmap:freearg"))) { if ((tm = Getattr(p, "tmap:freearg"))) {
if (Len(tm) != 0) { if (Len(tm) != 0) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
} }
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
@ -1613,8 +1601,6 @@ public:
String *tm; String *tm;
for (Parm *p = l; p;) { for (Parm *p = l; p;) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Replaceall(tm, "$target", "vresult");
Replaceall(tm, "$result", "vresult"); Replaceall(tm, "$result", "vresult");
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
Replaceall(tm, "$input", Getattr(p, "emit:input")); Replaceall(tm, "$input", Getattr(p, "emit:input"));
@ -1876,8 +1862,6 @@ public:
actioncode = 0; actioncode = 0;
if (tm) { if (tm) {
Replaceall(tm, "$result", "vresult"); Replaceall(tm, "$result", "vresult");
Replaceall(tm, "$source", Swig_cresult_name());
Replaceall(tm, "$target", "vresult");
if (GetFlag(n, "feature:new")) if (GetFlag(n, "feature:new"))
Replaceall(tm, "$owner", "SWIG_POINTER_OWN"); Replaceall(tm, "$owner", "SWIG_POINTER_OWN");
@ -1975,7 +1959,6 @@ public:
if (current != CONSTRUCTOR_ALLOCATE && GetFlag(n, "feature:new")) { if (current != CONSTRUCTOR_ALLOCATE && GetFlag(n, "feature:new")) {
tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0); tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0);
if (tm) { if (tm) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
Delete(tm); Delete(tm);
} }
@ -1984,7 +1967,6 @@ public:
/* Special processing on return value. */ /* Special processing on return value. */
tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0); tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0);
if (tm) { if (tm) {
Replaceall(tm, "$source", Swig_cresult_name());
Printv(f->code, tm, NIL); Printv(f->code, tm, NIL);
Delete(tm); Delete(tm);
} }
@ -2214,8 +2196,6 @@ public:
tm = Swig_typemap_lookup("varout", n, name, 0); tm = Swig_typemap_lookup("varout", n, name, 0);
if (tm) { if (tm) {
Replaceall(tm, "$result", "_val"); Replaceall(tm, "$result", "_val");
Replaceall(tm, "$target", "_val");
Replaceall(tm, "$source", name);
/* Printv(getf->code,tm, NIL); */ /* Printv(getf->code,tm, NIL); */
addfail = emit_action_code(n, getf->code, tm); addfail = emit_action_code(n, getf->code, tm);
} else { } else {
@ -2250,8 +2230,6 @@ public:
tm = Swig_typemap_lookup("varin", n, name, 0); tm = Swig_typemap_lookup("varin", n, name, 0);
if (tm) { if (tm) {
Replaceall(tm, "$input", "_val"); Replaceall(tm, "$input", "_val");
Replaceall(tm, "$source", "_val");
Replaceall(tm, "$target", name);
/* Printv(setf->code,tm,"\n",NIL); */ /* Printv(setf->code,tm,"\n",NIL); */
emit_action_code(n, setf->code, tm); emit_action_code(n, setf->code, tm);
} else { } else {
@ -2363,8 +2341,6 @@ public:
if (!tm) if (!tm)
tm = Swig_typemap_lookup("constcode", n, value, 0); tm = Swig_typemap_lookup("constcode", n, value, 0);
if (tm) { if (tm) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", iname);
Replaceall(tm, "$symname", iname); Replaceall(tm, "$symname", iname);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
if (current == CLASS_CONST) { if (current == CLASS_CONST) {

View file

@ -472,7 +472,6 @@ public:
String *tm; String *tm;
if ((tm = Getattr(param, "tmap:freearg"))) { if ((tm = Getattr(param, "tmap:freearg"))) {
if (tm && (Len(tm) != 0)) { if (tm && (Len(tm) != 0)) {
Replaceall(tm, "$source", Getattr(param, "lname"));
Printf(wrapper->code, "%s\n", tm); Printf(wrapper->code, "%s\n", tm);
} }
param = Getattr(param, "tmap:freearg:next"); param = Getattr(param, "tmap:freearg:next");
@ -484,7 +483,6 @@ public:
/* See if there is any return cleanup code */ /* See if there is any return cleanup code */
String *tm; String *tm;
if ((tm = Swig_typemap_lookup("ret", node, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", node, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(wrapper->code, "%s\n", tm); Printf(wrapper->code, "%s\n", tm);
Delete(tm); Delete(tm);
} }

View file

@ -336,8 +336,6 @@ public:
if ((tm = Getattr(p, "tmap:in"))) { if ((tm = Getattr(p, "tmap:in"))) {
String *parse = Getattr(p, "tmap:in:parse"); String *parse = Getattr(p, "tmap:in:parse");
if (!parse) { if (!parse) {
Replaceall(tm, "$target", ln);
Replaceall(tm, "$source", source);
Replaceall(tm, "$input", source); Replaceall(tm, "$input", source);
Setattr(p, "emit:input", source); Setattr(p, "emit:input", source);
@ -401,7 +399,6 @@ public:
/* Insert constraint checking code */ /* Insert constraint checking code */
for (p = parms; p;) { for (p = parms; p;) {
if ((tm = Getattr(p, "tmap:check"))) { if ((tm = Getattr(p, "tmap:check"))) {
Replaceall(tm, "$target", Getattr(p, "lname"));
Printv(f->code, tm, "\n", NIL); Printv(f->code, tm, "\n", NIL);
p = Getattr(p, "tmap:check:next"); p = Getattr(p, "tmap:check:next");
} else { } else {
@ -414,7 +411,6 @@ public:
if (!checkAttribute(p, "tmap:in:numinputs", "0") if (!checkAttribute(p, "tmap:in:numinputs", "0")
&& !Getattr(p, "tmap:in:parse") && (tm = Getattr(p, "tmap:freearg"))) { && !Getattr(p, "tmap:in:parse") && (tm = Getattr(p, "tmap:freearg"))) {
if (Len(tm) != 0) { if (Len(tm) != 0) {
Replaceall(tm, "$source", Getattr(p, "lname"));
Printv(cleanup, tm, "\n", NIL); Printv(cleanup, tm, "\n", NIL);
} }
p = Getattr(p, "tmap:freearg:next"); p = Getattr(p, "tmap:freearg:next");
@ -426,12 +422,9 @@ public:
/* Insert argument output code */ /* Insert argument output code */
for (i = 0, p = parms; p; i++) { for (i = 0, p = parms; p; i++) {
if ((tm = Getattr(p, "tmap:argout"))) { if ((tm = Getattr(p, "tmap:argout"))) {
Replaceall(tm, "$source", Getattr(p, "lname"));
#ifdef SWIG_USE_RESULTOBJ #ifdef SWIG_USE_RESULTOBJ
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$result", "resultobj"); Replaceall(tm, "$result", "resultobj");
#else #else
Replaceall(tm, "$target", "(Tcl_GetObjResult(interp))");
Replaceall(tm, "$result", "(Tcl_GetObjResult(interp))"); Replaceall(tm, "$result", "(Tcl_GetObjResult(interp))");
#endif #endif
Replaceall(tm, "$arg", Getattr(p, "emit:input")); Replaceall(tm, "$arg", Getattr(p, "emit:input"));
@ -450,12 +443,9 @@ public:
/* Return value if necessary */ /* Return value if necessary */
if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) { if ((tm = Swig_typemap_lookup_out("out", n, Swig_cresult_name(), f, actioncode))) {
Replaceall(tm, "$source", Swig_cresult_name());
#ifdef SWIG_USE_RESULTOBJ #ifdef SWIG_USE_RESULTOBJ
Replaceall(tm, "$target", "resultobj");
Replaceall(tm, "$result", "resultobj"); Replaceall(tm, "$result", "resultobj");
#else #else
Replaceall(tm, "$target", "(Tcl_GetObjResult(interp))");
Replaceall(tm, "$result", "(Tcl_GetObjResult(interp))"); Replaceall(tm, "$result", "(Tcl_GetObjResult(interp))");
#endif #endif
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
@ -478,13 +468,11 @@ public:
/* Look for any remaining cleanup */ /* Look for any remaining cleanup */
if (GetFlag(n, "feature:new")) { if (GetFlag(n, "feature:new")) {
if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("newfree", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
} }
if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) { if ((tm = Swig_typemap_lookup("ret", n, Swig_cresult_name(), 0))) {
Replaceall(tm, "$source", Swig_cresult_name());
Printf(f->code, "%s\n", tm); Printf(f->code, "%s\n", tm);
} }
#ifdef SWIG_USE_RESULTOBJ #ifdef SWIG_USE_RESULTOBJ
@ -580,8 +568,6 @@ public:
Printv(getf->def, "SWIGINTERN const char *", getfname, "(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, char *name1, char *name2, int flags) {", NIL); Printv(getf->def, "SWIGINTERN const char *", getfname, "(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, char *name1, char *name2, int flags) {", NIL);
Wrapper_add_local(getf, "value", "Tcl_Obj *value = 0"); Wrapper_add_local(getf, "value", "Tcl_Obj *value = 0");
if ((tm = Swig_typemap_lookup("varout", n, name, 0))) { if ((tm = Swig_typemap_lookup("varout", n, name, 0))) {
Replaceall(tm, "$source", name);
Replaceall(tm, "$target", "value");
Replaceall(tm, "$result", "value"); Replaceall(tm, "$result", "value");
/* Printf(getf->code, "%s\n",tm); */ /* Printf(getf->code, "%s\n",tm); */
addfail = emit_action_code(n, getf->code, tm); addfail = emit_action_code(n, getf->code, tm);
@ -616,8 +602,6 @@ public:
Wrapper_add_local(setf, "name1o", "Tcl_Obj *name1o = 0"); Wrapper_add_local(setf, "name1o", "Tcl_Obj *name1o = 0");
if ((tm = Swig_typemap_lookup("varin", n, name, 0))) { if ((tm = Swig_typemap_lookup("varin", n, name, 0))) {
Replaceall(tm, "$source", "value");
Replaceall(tm, "$target", name);
Replaceall(tm, "$input", "value"); Replaceall(tm, "$input", "value");
Printf(setf->code, "name1o = Tcl_NewStringObj(name1,-1);\n"); Printf(setf->code, "name1o = Tcl_NewStringObj(name1,-1);\n");
Printf(setf->code, "value = Tcl_ObjGetVar2(interp, name1o, 0, flags);\n"); Printf(setf->code, "value = Tcl_ObjGetVar2(interp, name1o, 0, flags);\n");
@ -690,14 +674,10 @@ public:
} }
if ((tm = Swig_typemap_lookup("consttab", n, name, 0))) { if ((tm = Swig_typemap_lookup("consttab", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
Replaceall(tm, "$nsname", nsname); Replaceall(tm, "$nsname", nsname);
Printf(const_tab, "%s,\n", tm); Printf(const_tab, "%s,\n", tm);
} else if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) { } else if ((tm = Swig_typemap_lookup("constcode", n, name, 0))) {
Replaceall(tm, "$source", value);
Replaceall(tm, "$target", name);
Replaceall(tm, "$value", value); Replaceall(tm, "$value", value);
Replaceall(tm, "$nsname", nsname); Replaceall(tm, "$nsname", nsname);
Printf(f_init, "%s\n", tm); Printf(f_init, "%s\n", tm);

View file

@ -113,7 +113,7 @@ static int is_digits(const String *str) {
const char *s = Char(str); const char *s = Char(str);
int isdigits = (*s != 0); int isdigits = (*s != 0);
while (*s) { while (*s) {
if (!isdigit(*s)) { if (!isdigit((int)*s)) {
isdigits = 0; isdigits = 0;
break; break;
} }

View file

@ -44,6 +44,8 @@ case "$SWIGLANG" in
travis_retry npm install -g node-gyp@$VER travis_retry npm install -g node-gyp@$VER
elif [ "$VER" == "8" ] ; then elif [ "$VER" == "8" ] ; then
travis_retry npm install -g node-gyp@6 travis_retry npm install -g node-gyp@6
elif [ "$VER" == "10" ] || [ "$VER" == "12" ] || [ "$VER" == "14" ] || [ "$VER" == "16" ]; then
travis_retry npm install -g node-gyp@7
else else
travis_retry npm install -g node-gyp travis_retry npm install -g node-gyp
fi fi

View file

@ -12,8 +12,10 @@ environment:
PY3: 3 PY3: 3
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
#matrix: matrix:
# allow_failures: allow_failures:
- SWIGLANG: python
OSVARIANT: cygwin
install: install:
- date /T & time /T - date /T & time /T
@ -76,7 +78,7 @@ install:
$env:CHECK_OPTIONS2="CFLAGS+=-DMS_WIN64 CXXFLAGS+=-DMS_WIN64" $env:CHECK_OPTIONS2="CFLAGS+=-DMS_WIN64 CXXFLAGS+=-DMS_WIN64"
} }
} }
- if "%OSVARIANT%"=="" bash -c "cd /usr/bin && curl --retry 15 -s -L https://github.com/swig/cccl/archive/cccl-1.0.tar.gz | tar -xz --strip 1 cccl-cccl-1.0/cccl" - if "%OSVARIANT%"=="" bash -c "cd /usr/bin && curl --retry 15 -s -L https://github.com/swig/cccl/archive/cccl-1.2.tar.gz | tar -xz --strip 1 cccl-cccl-1.2/cccl"
- if "%OSVARIANT%"=="" call "%VCVARSBAT%" %VCVARSARG% - if "%OSVARIANT%"=="" call "%VCVARSBAT%" %VCVARSARG%
- if "%OSVARIANT%"=="" Tools\nuget-install.cmd pcre -Verbosity quiet -Version 8.33.0.1 -OutputDirectory C:\pcre - if "%OSVARIANT%"=="" Tools\nuget-install.cmd pcre -Verbosity quiet -Version 8.33.0.1 -OutputDirectory C:\pcre
- if "%OSVARIANT%"=="" set PCRE_ROOT=C:/pcre/pcre.8.33.0.1/build/native - if "%OSVARIANT%"=="" set PCRE_ROOT=C:/pcre/pcre.8.33.0.1/build/native
@ -105,7 +107,7 @@ build_script:
- set CHECK_OPTIONS=CSHARPOPTIONS=-platform:%Platform% - set CHECK_OPTIONS=CSHARPOPTIONS=-platform:%Platform%
- if "%BUILDSYSTEM%"=="cmake" cmake --version && cmake -G "Visual Studio 14 2015%VSARCH%" -DCMAKE_INSTALL_PREFIX="%CD:\=/%/install2" -DCMAKE_C_FLAGS="/WX /DPCRE_STATIC" -DCMAKE_CXX_FLAGS="/WX /DPCRE_STATIC" -DPCRE_INCLUDE_DIR=%PCRE_ROOT%/include -DPCRE_LIBRARY=%PCRE_ROOT%/lib/v110/%PCRE_PLATFORM%/Release/static/utf8/pcre8.lib -DBISON_EXECUTABLE=C:/cygwin/bin/bison.exe . && cmake --build . --config Release --target install && ctest --output-on-failure -V -C Release && appveyor exit - if "%BUILDSYSTEM%"=="cmake" cmake --version && cmake -G "Visual Studio 14 2015%VSARCH%" -DCMAKE_INSTALL_PREFIX="%CD:\=/%/install2" -DCMAKE_C_FLAGS="/WX /DPCRE_STATIC" -DCMAKE_CXX_FLAGS="/WX /DPCRE_STATIC" -DPCRE_INCLUDE_DIR=%PCRE_ROOT%/include -DPCRE_LIBRARY=%PCRE_ROOT%/lib/v110/%PCRE_PLATFORM%/Release/static/utf8/pcre8.lib -DBISON_EXECUTABLE=C:/cygwin/bin/bison.exe . && cmake --build . --config Release --target install && ctest --output-on-failure -V -C Release && appveyor exit
# Open dummy file descriptor to fix error on cygwin: ./configure: line 560: 0: Bad file descriptor # Open dummy file descriptor to fix error on cygwin: ./configure: line 560: 0: Bad file descriptor
- if "%OSVARIANT%"=="" bash -c "exec 0</dev/null && ./autogen.sh && time ./configure --disable-dependency-tracking --disable-ccache CC=$CC CXX=$CXX CFLAGS='-O2' CXXFLAGS='-O2' LDFLAGS='--cccl-link /LTCG' PCRE_CFLAGS='-I%PCRE_ROOT%/include -DPCRE_STATIC' PCRE_LIBS='-L%PCRE_ROOT%/lib/v110/%PCRE_PLATFORM%/Release/static/utf8 -lpcre8' --without-perl5 --without-go --with-boost=%BOOSTROOT% || cat config.log" - if "%OSVARIANT%"=="" bash -c "exec 0</dev/null && ./autogen.sh && time ./configure --disable-dependency-tracking --disable-ccache --enable-cpp11-testing CC=$CC CXX=$CXX CFLAGS='-O2' CXXFLAGS='-O2' LDFLAGS='--cccl-link /LTCG' PCRE_CFLAGS='-I%PCRE_ROOT%/include -DPCRE_STATIC' PCRE_LIBS='-L%PCRE_ROOT%/lib/v110/%PCRE_PLATFORM%/Release/static/utf8 -lpcre8' --without-perl5 --without-go --with-boost=%BOOSTROOT% || cat config.log"
- if not "%OSVARIANT%"=="" bash -c "exec 0</dev/null && ./autogen.sh && time ./configure CC=%CC% CXX=%CXX% --without-alllang --with-$SWIGLANG$PY3$SWIGWITHLANG --enable-cpp11-testing || cat config.log" - if not "%OSVARIANT%"=="" bash -c "exec 0</dev/null && ./autogen.sh && time ./configure CC=%CC% CXX=%CXX% --without-alllang --with-$SWIGLANG$PY3$SWIGWITHLANG --enable-cpp11-testing || cat config.log"
- bash -c "time make -s -j%MAKEJOBS%" - bash -c "time make -s -j%MAKEJOBS%"

View file

@ -3,7 +3,7 @@ dnl The macros which aren't shipped with the autotools are stored in the
dnl Tools/config directory in .m4 files. dnl Tools/config directory in .m4 files.
AC_INIT([swig],[4.1.0],[http://www.swig.org]) AC_INIT([swig],[4.1.0],[http://www.swig.org])
AC_PREREQ(2.60) AC_PREREQ([2.60])
AC_CONFIG_SRCDIR([Source/Swig/swig.h]) AC_CONFIG_SRCDIR([Source/Swig/swig.h])
AC_CONFIG_AUX_DIR([Tools/config]) AC_CONFIG_AUX_DIR([Tools/config])
@ -34,8 +34,8 @@ AC_MSG_RESULT([$CXXFLAGS])
AC_DEFINE_UNQUOTED(SWIG_CXX, ["$CXX"], [Compiler that built SWIG]) AC_DEFINE_UNQUOTED(SWIG_CXX, ["$CXX"], [Compiler that built SWIG])
AC_DEFINE_UNQUOTED(SWIG_PLATFORM, ["$host"], [Platform that SWIG is built for]) AC_DEFINE_UNQUOTED(SWIG_PLATFORM, ["$host"], [Platform that SWIG is built for])
dnl Checks for header files. # For AC_EGREP_CPP
AC_HEADER_STDC AC_PROG_EGREP
dnl Look for popen dnl Look for popen
AC_ARG_WITH(popen, AS_HELP_STRING([--without-popen], [Disable popen]), with_popen="$withval") AC_ARG_WITH(popen, AS_HELP_STRING([--without-popen], [Disable popen]), with_popen="$withval")
@ -301,18 +301,51 @@ PLATCXXFLAGS="$PLATCFLAGS"
if test x"$enable_cpp11_testing" = xyes; then if test x"$enable_cpp11_testing" = xyes; then
CXX_SAVED=$CXX CXX_SAVED=$CXX
CXXCPP_SAVED=$CXXCPP CXXCPP_SAVED=$CXXCPP
# Test for c++17
CXXCPP=" " CXXCPP=" "
AX_CXX_COMPILE_STDCXX(11, [noext], [optional]) AX_CXX_COMPILE_STDCXX(17, [noext], [optional])
AC_MSG_CHECKING([whether C++11 testing is actually enabled]) AC_MSG_CHECKING([whether C++17 and earlier testing is enabled])
if test "$HAVE_CXX11" = "1"; then if test "$HAVE_CXX17" = "1"; then
AC_MSG_RESULT([yes]) AC_MSG_RESULT([yes])
PLATCXXFLAGS="$CXXCPP $PLATCXXFLAGS" PLATCXXFLAGS="$CXXCPP $PLATCXXFLAGS"
HAVE_CXX14="1"
HAVE_CXX11="1"
else else
AC_MSG_RESULT([no]) AC_MSG_RESULT([no])
# Test for c++14
CXXCPP=" "
CXX=$CXX_SAVED
AX_CXX_COMPILE_STDCXX(14, [noext], [optional])
AC_MSG_CHECKING([whether C++14 and earlier testing is enabled])
if test "$HAVE_CXX14" = "1"; then
AC_MSG_RESULT([yes])
PLATCXXFLAGS="$CXXCPP $PLATCXXFLAGS"
HAVE_CXX11="1"
else
AC_MSG_RESULT([no])
# Test for c++11
CXXCPP=" "
CXX=$CXX_SAVED
AX_CXX_COMPILE_STDCXX(11, [noext], [optional])
AC_MSG_CHECKING([whether C++11 and earlier testing is enabled])
if test "$HAVE_CXX11" = "1"; then
AC_MSG_RESULT([yes])
PLATCXXFLAGS="$CXXCPP $PLATCXXFLAGS"
else
AC_MSG_RESULT([no])
fi
fi
fi fi
CXX=$CXX_SAVED CXX=$CXX_SAVED
CXXCPP=$CXXCPP_SAVED CXXCPP=$CXXCPP_SAVED
fi fi
AC_SUBST(HAVE_CXX11)
# On darwin 10.7,10.8,10.9 using clang++, need to ensure using # On darwin 10.7,10.8,10.9 using clang++, need to ensure using
# libc++ for tests and examples to run under mono. May affect # libc++ for tests and examples to run under mono. May affect
@ -369,7 +402,6 @@ AC_SUBST(TRYLINKINGWITHCXX)
AC_SUBST(RPATH) AC_SUBST(RPATH)
AC_SUBST(PLATCFLAGS) AC_SUBST(PLATCFLAGS)
AC_SUBST(PLATCXXFLAGS) AC_SUBST(PLATCXXFLAGS)
AC_SUBST(HAVE_CXX11)
AC_SUBST(LINKFORSHARED) AC_SUBST(LINKFORSHARED)
# This variation is needed on OS-X because there is no (apparent) consistency in shared library naming. # This variation is needed on OS-X because there is no (apparent) consistency in shared library naming.
@ -471,6 +503,7 @@ AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
TCLINCLUDE= TCLINCLUDE=
TCLLIB= TCLLIB=
TCLPACKAGE= TCLPACKAGE=
TCLLINK=
AC_ARG_WITH(tclconfig, AS_HELP_STRING([--without-tcl], [Disable Tcl]) AC_ARG_WITH(tclconfig, AS_HELP_STRING([--without-tcl], [Disable Tcl])
AS_HELP_STRING([--with-tclconfig=path], [Set location of tclConfig.sh]), [with_tclconfig="$withval"], [with_tclconfig=]) AS_HELP_STRING([--with-tclconfig=path], [Set location of tclConfig.sh]), [with_tclconfig="$withval"], [with_tclconfig=])
@ -543,7 +576,7 @@ fi
AC_MSG_CHECKING(for Tcl header files) AC_MSG_CHECKING(for Tcl header files)
if test -z "$TCLINCLUDE"; then if test -z "$TCLINCLUDE"; then
AC_TRY_CPP([#include <tcl.h>], , TCLINCLUDE="") AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <tcl.h>]])],[],[TCLINCLUDE=""])
if test -z "$TCLINCLUDE"; then if test -z "$TCLINCLUDE"; then
dirs="/usr/local/include /usr/include /opt/local/include" dirs="/usr/local/include /usr/include /opt/local/include"
for i in $dirs ; do for i in $dirs ; do
@ -563,7 +596,7 @@ fi
AC_MSG_CHECKING(for Tcl library) AC_MSG_CHECKING(for Tcl library)
if test -z "$TCLLIB"; then if test -z "$TCLLIB"; then
dirs="/usr/local/lib /usr/lib /opt/local/lib" dirs="/usr/local/lib /usr/lib /opt/local/lib /opt/freeware/lib"
for i in $dirs ; do for i in $dirs ; do
if test -r $i/libtcl.a; then if test -r $i/libtcl.a; then
AC_MSG_RESULT($i) AC_MSG_RESULT($i)
@ -581,9 +614,16 @@ fi
# Cygwin (Windows) needs the library for dynamic linking # Cygwin (Windows) needs the library for dynamic linking
case $host in case $host in
*-*-cygwin* | *-*-mingw*) TCLDYNAMICLINKING="$TCLLIB";; *-*-cygwin* | *-*-mingw*) TCLDYNAMICLINKING="$TCLLIB";;
*-*-aix*) TCLDYNAMICLINKING="$TCLLIB";;
*)TCLDYNAMICLINKING="";; *)TCLDYNAMICLINKING="";;
esac esac
# AIX needs -ltcl for linking at test time
case $host in
*-*-aix*) TCLLINK="-ltcl";;
*)TCLLINK="";;
esac
case $host in case $host in
*-*-darwin*) *-*-darwin*)
TCLLDSHARED='$(CC) -dynamiclib -undefined suppress -flat_namespace' TCLLDSHARED='$(CC) -dynamiclib -undefined suppress -flat_namespace'
@ -602,6 +642,7 @@ AC_SUBST(TCLLIB)
AC_SUBST(TCLDYNAMICLINKING) AC_SUBST(TCLDYNAMICLINKING)
AC_SUBST(TCLLDSHARED) AC_SUBST(TCLLDSHARED)
AC_SUBST(TCLCXXSHARED) AC_SUBST(TCLCXXSHARED)
AC_SUBST(TCLLINK)
#---------------------------------------------------------------- #----------------------------------------------------------------
# Look for Python # Look for Python
@ -1603,15 +1644,15 @@ else
if test -z "$JSCORELIB" -a -n "$PKG_CONFIG "; then if test -z "$JSCORELIB" -a -n "$PKG_CONFIG "; then
AC_MSG_CHECKING(for JavaScriptCore/Webkit library) AC_MSG_CHECKING(for JavaScriptCore/Webkit library)
if $PKG_CONFIG javascriptcoregtk-4.0; then if $PKG_CONFIG javascriptcoregtk-4.0 2>/dev/null ; then
JSCORELIB=`$PKG_CONFIG --libs javascriptcoregtk-4.0` JSCORELIB=`$PKG_CONFIG --libs javascriptcoregtk-4.0`
JSCOREINC=`$PKG_CONFIG --cflags-only-I javascriptcoregtk-4.0` JSCOREINC=`$PKG_CONFIG --cflags-only-I javascriptcoregtk-4.0`
JSCOREVERSION=`$PKG_CONFIG --modversion javascriptcoregtk-4.0` JSCOREVERSION=`$PKG_CONFIG --modversion javascriptcoregtk-4.0`
elif $PKG_CONFIG javascriptcoregtk-3.0; then elif $PKG_CONFIG javascriptcoregtk-3.0 2>/dev/null ; then
JSCORELIB=`$PKG_CONFIG --libs javascriptcoregtk-3.0` JSCORELIB=`$PKG_CONFIG --libs javascriptcoregtk-3.0`
JSCOREINC=`$PKG_CONFIG --cflags-only-I javascriptcoregtk-3.0` JSCOREINC=`$PKG_CONFIG --cflags-only-I javascriptcoregtk-3.0`
JSCOREVERSION=`$PKG_CONFIG --modversion javascriptcoregtk-3.0` JSCOREVERSION=`$PKG_CONFIG --modversion javascriptcoregtk-3.0`
elif $PKG_CONFIG javascriptcoregtk-1.0; then elif $PKG_CONFIG javascriptcoregtk-1.0 2>/dev/null ; then
JSCORELIB=`$PKG_CONFIG --libs javascriptcoregtk-1.0` JSCORELIB=`$PKG_CONFIG --libs javascriptcoregtk-1.0`
JSCOREVERSION=`$PKG_CONFIG --modversion javascriptcoregtk-1.0` JSCOREVERSION=`$PKG_CONFIG --modversion javascriptcoregtk-1.0`
fi fi