From 83746ec43beaa815faf412d0bd95715637434d92 Mon Sep 17 00:00:00 2001 From: Thien-Thi Nguyen Date: Wed, 12 Apr 2000 11:57:50 +0000 Subject: [PATCH] New entry. Here are Matthias Koeppe's words on the changes: Why did you remove the INPUT/OUTPUT/BOTH typemaps in revision 1.3 of Lib/guile/typemaps.i? They seem to be standard in SWIG, as they are present in the other language modules, and everyone needs them. I suggest you put them back in. Lib/exception.i, Source/Modules1.1/guile.cxx: I have written the Guile-specific code for Lib/exception.i, which implements SWIG_exception as a macro calling _SWIG_exception, which is defined in the same file. The SWIG_*Error constants are mapped to Guile error symbols, which are passed to scm_error. The macro uses the preprocessor macro SCHEME_NAME, which is set at the beginning of the function wrapper code by a modified Source/Modules1.1/guile.cxx. Here is a test (with array.i): (int-get '() 0) ==> signals swig-value-error Moreover, I fixed a type-lookup bug in Lib/guile/guile.swg when compiled -with-smobs, which had crept in from swigptr.swg. Here is a test (again with array.i): (define c (int-array 5)) (int-get c 0) ==> must not signal a wrong-type error Lib/guile/guiledec.swg, Source/Modules1.1/guile.cxx: Use the SWIG_NOINCLUDE preprocessor symbol to indicate that SWIG runtime functions are imported from a different module, as it is done in other language modules. (SWIG_init) Make this function globally visible only in simple linkage (the user should rename the function by a #define in this case). In other linkages, having SWIG_init globally visible (in multiple modules) just makes trouble. Source/Modules1.1/guile.cxx (GUILE::link_variable) Printf the C string, not the String class. Source/SWIG1.1/swig11.h, Source/SWIG1.1/sstring.cxx: Constified two operator arguments, to get rid of warnings issued by the SUNWSpro C++ compiler. git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@417 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- CHANGES | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index b0ac69590..81abfc4a4 100644 --- a/CHANGES +++ b/CHANGES @@ -1,5 +1,11 @@ SWIG (Simplified Wrapper and Interface Generator) +4/11/00 : ttn + Incorporated further Guile-support patch by Matthias Koeppe. + Typemaps previously deleted have been re-added. There is now + exception handling (see Doc/engineering.html). `SWIG_init' is now + declared extern only for simple linkage. Some bugs were fixed. + 4/06/00 : ttn Incorporated MzScheme support contributed by Oleg Tolmatcev. This includes new directories Lib/mzscheme and Examples/mzscheme. @@ -11,7 +17,7 @@ SWIG (Simplified Wrapper and Interface Generator) 4/02/00 : ttn Incorporated new guilemain.i by Martin Froehlich. - Incorporated guile-support rewrite patch by Matthias Koeppe. + Incorporated Guile-support rewrite patch by Matthias Koeppe. The command line option "-with-smobs" enables implementation of pointer type handling using smobs, the canonical mechanism for defining new types in Guile. Previous implementation (using