diff options
author | Olly Betts <olly@survex.com> | 2007-11-16 16:01:17 +0000 |
---|---|---|
committer | Olly Betts <olly@survex.com> | 2007-11-16 16:01:17 +0000 |
commit | be5500996566f85929d60bd8874569c8b9c89389 (patch) | |
tree | 66be2b98029c84234ce534ed831f7e4f7946d11d /CHANGES | |
parent | 8c2b3d9dcde7a2357a560a4a7f3567473ca87f14 (diff) | |
download | swig-be5500996566f85929d60bd8874569c8b9c89389.tar.gz |
Start a new CHANGES.current
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10144 626c5289-ae23-0410-ae9c-e8d60b6d4f22
Diffstat (limited to 'CHANGES')
-rw-r--r-- | CHANGES | 894 |
1 files changed, 894 insertions, 0 deletions
@@ -2,6 +2,900 @@ SWIG (Simplified Wrapper and Interface Generator) See CHANGES.current for current version. +Version 1.3.32 (November 15, 2007) +================================== + +11/14/2007: wsfulton + [R] Package name and dll name is now the same as the SWIG module + name. It used to be the module name with _wrap as a suffix. The package + and dll names can be modified using the -package and -dll commandline + options. + + *** POTENTIAL INCOMPATIBILITY *** + +11/11/2007: wsfulton + [R] Add support for Windows (Visual C++ 8 tested) + +11/10/2007: olly + [php] Fix makefile generated by -make (SF#1633679). Update + documentation to mark "-make" as deprecated (none of the other + SWIG backends seem to offer such a feature, it can't realistically + generate a fully portable makefile, and the commands to build an + extension are easy enough to write for the user's preferred build + tool). Also recommend against the use of "-phpfull" (it's only + really useful when static linking, and a dynamically loadable + module is virtually always the better approach). + +11/09/2007: olly + Fix --help output to note that `export SWIG_FEATURES' is required. + +10/29/2007: wsfulton + [R] Fix seg fault on Windows + [R] Examples R scripts are now platform independent + +10/30/2007: mgossage + [lua] fixed bug in template classes which cases template_default2 + and template_specialization_defarg to fail. + Added several warning filters into the overload's test cases. + Added runtime tests for several codes. + You can now make check-lua-test-suite with no errors and only a few warnings. + +10/30/2007: olly + [guile] Fix the configure test to put GUILELINK in LIBS not LDFLAGS + (SF#1822430). + +10/30/2007: olly + [guile] Fix the guile examples on 64-bit platforms. + +10/29/2007: wsfulton + [C#] Fix member pointers on 64 bit platforms. + +10/28/2007: olly + [lua] Fix swig_lua_class instances to be static to allow multiple + SWIG wrappers to be compiled into the same executable statically. + Patch from Andreas Fredriksson (posted to the swig mailing list). + +10/28/2007: olly + [lua] Fix Examples/lua to pass SRCS for C tests rather than CXXSRCS. + The code as it was happened to work on x86, but broke on x86_64 (and + probably any other platforms which require -fPIC). + +10/28/2007: wsfulton + [Java, C#] New approach for fixing uninitialised variable usage on error in director + methods using the new templated initialisation function SwigValueInit(). + +10/28/2007: wsfulton + [Perl] Use more efficient SvPV_nolen(x) instead of SvPV(x,PL_na) if SvPV_nolen is + supported. + +10/26/2007: wuzzeb + [Chicken] Fix global variables of class member function pointers. + Other minor fixes, so all tests in the chicken test suite now pass + +10/25/2007: olly + Fix UTL typecheck macro for a function taking char[] or const + char[] (SF#1820132). + +10/22/2007: mkoeppe + [Guile] Filter out -ansi -pedantic from CFLAGS while compiling test programs for Guile + in configure. This enables running the test suite for Guile if it is installed and + usable. + +10/22/2007: mkoeppe + [Guile -scm] Fix testcases apply_signed_char and apply_strings + by adding explicit casts to the appropriate $ltype. + +10/22/2007: wsfulton + [Java, C#] Fix uninitialised variable usage on error in director methods. + +10/19/2007: wsfulton + [Java, C#] Bug #1794247 - fix generated code for derived classes when csbase or javabase + typemaps are used with the replace="1" attribute. + +10/19/2007: wsfulton + [Python] Docs updated to suggest using distutils. Patch #1796681 from Christopher Barker. + +10/19/2007: olly + [perl5] Clear errno before calls to strtol(), strtoul(), strtoll() + and strtoull() which we check errno after to avoid seeing a junk + value of errno if there isn't an error in the call. + +10/16/2007: wsfulton + Deprecate %attribute_ref and replace with %attributeref. There is just an argument + order change in order to maintain consistency with %attribute, from: + + %attribute_ref(Class, AttributeType, AccessorMethod, AttributeName) + to + %attributeref(Class, AttributeType, AttributeName, AccessorMethod) + +10/16/2007: olly + [Tcl] Fix several ocurrences of "warning: deprecated conversion + from string constant to 'char*'" from GCC 4.2 in generated C/C++ + code. + +10/16/2007: olly + [PHP] Fix many occurrences of "warning: deprecated conversion from + string constant to 'char*'" from GCC 4.2 in generated C/C++ code + when compiling with a new enough version of PHP 5 (tested with + PHP 5.2.3, but PHP 5.2.1 is probably the minimum requirement). + +10/15/2007: wsfulton + Patch #1797133 from David Piepgrass fixes %attribute when the getter has the same name + as the attribute name and no longer generate non-functional setter for read-only attributes. + +10/15/2007: olly + [Tcl] Prevent SWIG_Tcl_ConvertPtr from calling the unknown proc. + Add Examples/tcl/std_vector/ which this change fixes. Patch + is from "Cliff C" in SF#1809819. + +10/12/2007: wsfulton + [Java] Add DetachCurrentThread back in for directors. See entry dated 08/11/2006 and + search for DetachCurrentThread on the mailing lists for details. The crashes on Solaris + seem to be only present in jdk-1.4.2 and lower (jdk-1.5.0 and jdk-1.6.0 are okay), so + anyone using directors should use a recent jdk on Solaris, or define (see director.swg) + SWIG_JAVA_NO_DETACH_CURRENT_THREAD to the C++ compiler to get old behaviour. + +10/12/2007: wsfulton + [Java] Ensure the premature garbage collection prevention parameter (pgcpp) is generated + when there are C comments in the jtype and jstype typemaps. + +10/12/2007: wuzzeb + Added a testsuite entry for Bug #1735931 + +10/09/2007: olly + Automatically rerun autogen.sh if configure.in is modified. + +10/09/2007: olly + Enhance check-%-test-suite rule and friends to give a more helpful + error message if you try them for a language which doesn't exist + (e.g. "make check-php-test-suite" rather than the correct + "make check-php4-test-suite"). + +10/09/2007: olly + Add make rule to regenerate Makefile from Makefile.in if it has + changed. + +10/09/2007: olly + [php] Fix long-standing memory leak in wrapped constructors and + wrapped functions/methods which return an object. + +10/08/2007: olly + Fix Makefile.in to read check.list files correctly in a VPATH + build. + +10/07/2007: wsfulton + [C#, Java] Experimental shared_ptr typemaps added + +09/27/2007: mgossage + [lua] added more verbose error messages for incorrect typechecks. + Added a routine which checks the exact number of parameters passed to a function + (breaks operator_overloading for unary minus operator, currently disabled). + Reorganised the luatypemaps.swg to tidy it up. + Added a lot of %ignores on the operators not supported by lua. + Added support for constant member function pointers & runtest for member_pointer.i + Added first version of wchar.i + +09/25/2007: wsfulton + [C#, Java] throws typemaps for std::wstring using C# patch #1799064 from David Piepgrass + +09/24/2007: wsfulton + [Tcl] Apply #1771313 to fix bug #1650229 - fixes long long and unsigned long long + handling. + +09/20/2007: olly + [Java] Eliminate some unnecessary uses of a temporary buffer + allocated using new[]. SF#1796609. + +09/19/2007: wsfulton + [C#] The $csinput special variable can be used in the csvarin typemap where it is always + expanded to 'value'. + +09/19/2007: wsfulton + [C#] Fix bug reported by Glenn A Watson and #1795260 where the cstype typemap used the 'ref' + keyword in the typemap body, it produced uncompilable C# properties (variable wrappers). + The type for the property now correctly comes from the 'out' attribute in the cstype typemap. + +09/19/2007: wsfulton + [Java] Fix const std::wstring& typemaps + +09/19/2007: wsfulton + [Java] Ensure the premature garbage collection prevention parameter (pgcpp) is generated + where a parameter is passed by pointer reference, eg in the std::vector wrappers. The pgcpp + is also generated now when user's custom typemaps use a proxy class in the jstype typemap + and a 'long' in the jtype typemap. + +09/18/2007: olly + [php] Add typemaps for handling parameters of type std::string & + which are modified by the wrapped function. + +09/17/2007: olly + [python] Split potentially long string literals to avoid hitting + MSVC's low fixed limit on string literal length - patch from + SF#1723770, also reported as SF#1630855. + +09/17/2007: olly + [ocaml] Fix renaming of overloaded methods in the method_table - + my patch from SF#940399. + +09/17/2007: olly + [python] Simpler code for SWIG_AsVal_bool() which fixes a "strict + aliasing" warning from GCC - patch from SF#1724581 by Andrew + Baumann. + +09/17/2007: olly + [perl5] Use sv_setpvn() to set a scalar from a pointer and length + - patch from SF#174460 by "matsubaray". + +09/17/2007: olly + When wrapping C++ code, generate code which uses + std::string::assign(PTR, LEN) rather than assigning + std::string(PTR, LEN). Using assign generates more efficient code + (tested with GCC 4.1.2). + +09/07/2007: wsfulton + Fix %ignore on constructors which are not explicitly declared [SF #1777712] + +09/05/2007: wuzzeb (John Lenz) + - Change r_ltype in typesys.c to store a hashtable instead of a single value. + several very subtle bugs were being caused by multiple ltypes being mapped + to a single mangled type, mostly when using typedefed template parameters. + Now, r_ltype stores a hashtable of possible ltypes, and when generating the + type table, all the ltypes are added into the swig_type_info structure. + +08/31/2007: wsfulton + SF #1754967 from James Bigler. + - Fix bug in turning on warnings that were turned off by default. Eg 'swig -w+309' will now + turn on the normally suppressed warning 309. + + - New -Wextra commandline option which enables the extra warning numbers: + 202,309,403,512,321,322 (this is the list of warnings that have always been suppressed by + default). By specifying -Wextra, all warnings will be turned on, but unlike -Wall, + warnings can still be selectively turned on/off using %warnfilter, + #pragma SWIG nowarn or further -w commandline options, eg: + swig -Wextra -w309 + will turn on all warnings except 309. + +08/28/2007: wsfulton + - New debugging options, -debug-module <n> and -debug-top <n> to display the parse tree at + various stages, where <n> is a comma separated list of stages 1-4.For example, to + display top of parse tree at stages 1 and 3: + swig -debug-top 1,3 + + - Deprecate the following options which have equivalents below: + -dump_parse_module => -debug-module 1 + -dump_module => -debug-module 4 + -dump_parse_top => -debug-top 1 + -dump_top => -debug-top 4 + + - Renamed some commandline options for naming consistency across all options: + -debug_template => -debug-template + -debug_typemap => -debug-typemap + -dump_classes => -debug-classes + -dump_tags => -debug-tags + -dump_typedef => -debug-typedef + -dump_memory => -debug-memory + +08/25/2007: olly + [PHP5] Fix handling of double or float parameters with an integer + default value. + +08/25/2007: olly + [PHP5] Generate __isset() methods for setters for PHP 5.1 and later. + +08/20/2007: wsfulton + [Java C#] Fix director bug #1776651 reported by Stephane Routelous which occurred when + the director class name is the same as the start of some other symbols used within + the director class. + +08/17/2007: wsfulton + Correct behaviour for templated methods used with %rename or %ignore and the empty + template declaration - %template(). A warning is issued if the method has not been + renamed. + +08/16/2007: mutandiz (Mikel Bancroft) + [allegrocl] Name generated cl file based on input file rather than by + module name. It was possible to end up with a mypackage.cl and a test_wrap.c + when parsing a test.i input file. Confusing. Also, include external-format + templates for :fat and :fat-le automatically to avoid these being compiled + at runtime. + +08/15/2007: efuzzyone + [cffi] Apply patch #1766076 from Leigh Smith adding support for newly introduced + in cffi :long-long and :unsigned-long-long. + +08/10/2007: wsfulton + [Java] Add documentation patch #1743573 from Jeffrey Sorensen. It contains a neat + idea with respect to better memory management by the JVM of C++ allocated memory. + +08/10/2007: wsfulton + [Perl] Apply patch #1771410 from Wade Brainerd to fix typedef XS(SwigPerlWrapper) in + perlrun.swg for ActiveState Perl build 822 and Perl 5.8.9 and 5.10 branches. + +08/10/2007: wsfulton + [Lua] const enum reference typemaps fixed. + +08/09/2007: wsfulton + [C#] Added missing support for C++ class member pointers. + +08/09/2007: wsfulton + [C#, Java] Add support for $owner in the "out" typemaps like in the the scripting + language modules. Note that $owner has always been supported in the "javaout" / "csout" + typemaps. + +08/01/2007: wsfulton + Fix smart pointer handling for classes that have templated methods within the smart + pointer type. Problem reported by craigdo at ee.washington.edu. + +07/31/2007: efuzzyone + [cffi] fixed memory access after being freed bug. thanks to Martin Percossi. + package name clos changed to cl. thanks to Ralf Mattes + +07/24/2007: wsfulton + Parallel make support added for the examples and test-suite for developers who have + more than one CPU. Now parallel make can be used for checking in addition to building + the SWIG executable. Some typical checking examples: + + make -j8 -k check + make -j4 check-java-test-suite + make -j2 check-java-examples + +07/19/2007: mgossage + Fixed bug that stopped configure working on mingw (applied dos2unix to configure.in) + +07/10/2007: mgossage + [lua] Extra compatibility with Lua 5.1 (updated SWIG_init, docs, examples, test suite) + Removed name clash for static link of multiple modules + +07/05/2007: mgossage + [lua] Fix a bug in SWIG_ALLOC_ARRAY() + improved the error messages for incorrect arguments. + Changed the output of swig_type() to use the human readable form of the type, + rather than the raw swig type. + +07/03/2007: wsfulton + [C#] Fix directors for some overloaded methods where the imtype resulted in identical + methods being generated in the C# director class, eg void foo(int *) and void foo(double *) + used to generated two of these: + + private void SwigDirectorfoo(IntPtr p) { ... } + +06/25/2007: wsfulton + [Java, C#] Some parameter name changes in std_vector.i allowing better targeting + of typemaps for method parameters (for memory management of containers of pointers). + +06/07/2007: mutandiz (Mikel Bancroft) + [allegrocl] + fix foreign-type constructor to properly look for ffitype typemap + bindings. fix inout_typemaps.i for strings. + +06/06/2007: olly + [Ruby] + Use whichever of "long" or "long long" is the same size as "void*" + to hold pointers as integers, rather than whichever matches off_t. + Fixes compilation on OS X and GCC warnings on platforms where + sizeof(void*) < sizeof(off_t) (SF patch #1731979). + +06/06/2007: olly + [PHP5] + Fix handling of a particular case involving overloaded functions + with default parameters. + +06/05/2007: mutandiz (Mikel Bancroft) + [allegrocl] + Fix case where we'd pass fully qualified identifiers + (i.e. NS1::NS2::FOO) to swig-insert-id. All namespaces + should be stripped. + + Fix bug in TypedefHandler introduced by last fix. + +06/05/2007: olly + Fix reporting of filenames in errors after %include (patch from + Leigh Smith in #1731040; also reported as #1699940). + +05/31/2007: olly + [Python] + Fix "missing initialiser" warning when compiling generated C/C++ + wrapper code with Python 2.5 with warnings enabled (patch from + bug#1727668 from Luke Moore). + +05/29/2007: olly + [Python] + Split docstrings into separate string literals at each newline when + generating C/C++ wrapper code (the C/C++ compiler will just combine + them back into a single string literal). This avoids MSVC + complaining that the strings are too long (problem reported by + Bo Peng on the mailing list). + +05/28/2007: olly + [Python] + Escape backslashes in docstrings. + +05/26/2007: olly + [Python] + Fix autodoc generation of enums to be more consistent with how the + enums are wrapped - patch #1697226 from Josh Cherry. + +05/26/2007: olly + [PHP5] + Fix wrapping of methods and functions which return a pointer to a + class (bug#1700788) and those which have overloaded forms returning + both classes and non-classes (bug#1712717, thanks to Simon + Berthiaume for the patch). + +05/25/2007: wsfulton + Fixed %rename inconsistency in conversion operators as reported by Zhong Ren. The matching + is now done on the operator name in the same way as it is done for parameters. For example: + + %rename(opABC) Space::ABC::operator ABC() const; + %rename(methodABC) Space::ABC::method(ABC a) const; + namespace Space { + class ABC { + public: + void method(ABC a) const {} + operator ABC() const { ABC a; return a; } + }; + } + + Note that qualifying the conversion operator previously may or may not have matched. + Now it definitely won't, so this will not match: + + %rename(opABC) Space::ABC::operator Space::ABC() const; + + in the same way that this does not match: + + %rename(methodABC) Space::ABC::method(Space::ABC a) const; + + The documentation has been improved with respect to %rename, namespaces and templates. + Conversion operators documentation too. + + *** POTENTIAL INCOMPATIBILITY *** + +05/16/2007: mutandiz + [allegrocl] + Fix bad generation of local var ltype's in functionWrapper(). + Try to work better with the backward order in which swig + unrolls nested class definitions. + cleaned up a little unnecessary code/debug printf's. + Remove warning when replacing $ldestructor for ff:foreign-pointer + +05/12/2007: olly + [Python] + swig -python -threads now generates C/C++ code which uses Python's + own threading abstraction (from pythread.h) rather than OS specific + code. The old code failed to compile on MS Windows. (See SF patch + tracker #1710341). + +05/04/2007: gga + [Ruby] + Changed STL renames to be global renames. This fixes + STL functions not being renamed when autorename is on. + This is a not a totally perfect work-around, but better. + Someone really needs to fix the template renaming code. + (See bug #1545634) + +05/04/2007 gga + [All] + Changed %rename("%(undercase)s") a little so that single + numbers at the end of a function are not undercased. That is: + getSomething -> get_something + get2D -> get_2d + get234 -> get_234 + BUT: + asFloat2 -> as_float2 + (Bug #1699714) + +05/03/2007: gga + [Ruby] + Made __swigtype__ => @__swigtype__ so it can be accessed + from the scripting language (and follows Ruby's official + documentation, just in case). + Made tracking => @__trackings__ for same reason. + Currently storing ivars without the @ seems valid, but + the PickAxe says this is not correct, so just in case... + +05/03/2007: gga + [Ruby] + Applied patch for -minherit bug and exception classes. + This issue should be revisited more closely, as Multiple + Inheritance in Ruby is still problematic. + (patch/bug #1604878) + +05/03/2007: gga + [Ruby] + Overloaded functions in ruby will now report to the user + the possible prototypes when the user mistypes the number or + type of a parameter. + +05/03/2007: gga + [Ruby] + Forgot to document the bug fixing of an old bug regarding + exceptions. + (bug #1458247) + +05/03/2007: gga + [Ruby] + Fixed Ruby documentation to use the proper css styles for + each section. Added autodoc section to Ruby's docs to + document the features supported by Ruby in documenting its modules. + Made rdoc documentation spit out the full name of the class + + method name. Albeit this will make the current rdoc not recognize + the method, this is still needed to disambiguate between different + classes with similar methods (rdoc was created to document the + ruby source which only contains one class per c file, unlike swig) + I have patched rdoc to make it more friendly to swig. This + patch needs to be merged in the ruby std library now. + +05/03/2007: gga + [Ruby] + Changed flag -feature to be -init_name to better reflect its + purpose and avoid confusion with -features. + +05/03/2007: gga + [Ruby] + Improved autodoc generation. + Added autodoc .swg files to Ruby library for easily adding + documentation to common Ruby methods and STL methods. + Fixed autodoc documenting of getters and setters and module. + Made test suite always generate autodocs. + +05/03/2007: gga + [Ruby] + Removed some warnings from STL and test suite. + +05/02/2007: mgossage + [Lua] Fixed issues with C++ classes and hierachies across multiple + source files. Fixed imports test case & added run test. + Added Examples/imports. + Added typename for raw lua_State* + Added documentation on native functions. + +05/02/2007: gga + [Ruby] + Docstrings are now supported. + %feature("autodoc") and %feature("docstring") are now + properly supported in Ruby. These features will generate + a _wrap.cxx file with rdoc comments in them. + +05/02/2007: gga + [Ruby] + STL files have been upgraded to follow the new swig/python + Lib/std conventions. + This means std::vector, std::set, std::map, set::multimap, + std::multiset, std::deque and std::string are now properly + supported, including their iterators, support for containing + ruby objects (swig::GC_VALUE) and several other ruby + enhancements. + std::complex, std::ios, std::iostream, std::iostreambuf and + std::sstream are now also supported. + std::wstring, std::wios, std::wiostream, std::wiostreambuf + and std::wsstream are supported verbatim with no unicode + conversion. + + std_vector.i now mimics the behavior of Ruby Arrays much more + closely, supporting slicing, shifting, unshifting, + multiple indexing and proper return values on assignment. + + COMPATABILITY NOTE: this changes the older api a little bit in + that improper indexing would previously (incorrectly) raise + exceptions. Now, nil is returned instead, following ruby's + standard Array behavior. + +05/02/2007: gga + [Ruby] + Changed the value of SWIG_TYPECHECK_BOOL to be 10000 (ie. higher + than that of all integers). + This is because Ruby allows typecasting + integers down to booleans which can make overloaded functions on + bools and integers to fail. + (bug# 1488142) + +05/02/2007: gga + [Ruby] + Fixed a subtle bug in multiple argouts that could get triggered if + the user returned two or more arguments and the first one was an + array. + +05/01/2007: gga + [Ruby] + Improved the documentation to document the new features + added, add directorin/out/argout typemaps, etc. + +05/01/2007: gga + [Ruby] + Added %initstack and %ignorestack directives for director + functions. These allow you to control whether a director + function should re-init the Ruby stack. + This is sometimes needed for an embedded Ruby where the + director method is used as a C++ callback and not called + by the user from ruby code. + Explanation: + Ruby's GC needs to be aware of the running OS stack in order to + mark any VALUE (Ruby objects) it finds there to avoid collection + of them. This allows the ruby API to be very simple and allows + you to write code like "VALUE a = sth" anywhere without needing + to do things like refcounting like python. + By default, the start of the stack is set when ruby_init() is + called. If ruby is inited within main(), as it usually is the + case with the main ruby executable, ruby will be able to calculate + its stack properly. However, when this is not possible, as when + ruby is embedded as a plugin to an application where main is not + available, ruby_init() will be called in the wrong place, and + ruby will be incorrectly tracking the stack from the function + that called ruby_init() forwards only, which can lead to + all sorts of weird crashes or to ruby thinking it has run out of + stack space incorrectly. + To avoid this, director (callback) functions can now be tagged + to try to reset the ruby stack, which will solve the issues. + NOTE: ruby1.8.6 still contains a bug in it in that its function + to reset the stack will not always do so. This bug is triggered + very rarely, when ruby is called from two very distinct places + in memory, like a branch of main() and another dso. This bug + has now been reported to ruby-core and is pending further + investigation. + (bug #1700535 and patch #1702907) + +04/30/2007: wsfulton + Fix #1707582 - Restore building from read-only source directories. + +04/30/2007: gga + [Ruby] + Ruby will now report the parameter index properly on type + errors as well as the class and value of the incorrect + argument passed. + (feature request #1699670) + +04/30/2007: gga + [Ruby] + Ruby no longer creates the free_Class function if the class + contains its own user defined free function (%freefunc). + (bug #1702882) + +04/30/2007: gga + [Ruby] + Made directors raise a ruby exception for incorrect argout + returned values if RUBY_EMBEDDED is set, instead of throwing + an actual SwigDirector exception. + This will prevent crashes when ruby is embedded and unaware + of the SwigDirector exception. + +04/30/2007: gga + [Ruby] + Removed the need for -DSWIGEXTERN. + Changed swig_ruby_trackings to be a static variable, but also + be kept within a hidden instance variable in the SWIG module. + This allows properly dealing with trackings across multiple + DSOs, which was previously broken. + (bug #1700535 and improvement to patch #1702907) + +04/29/2007: gga + [Ruby] Fixed GC memory issues with trackings that could lead + to segfaults when dealing, mainly, with static variables. + (bug #1700535 and patch #1702907) + +04/29/2007: gga + [Ruby] + Fixed String conversion using old ruby1.6 macros. Now + StringValuePtr() is used if available. This removes warnings + when converting strings with \0 in them. + (bug #1700535 and patch #1702907) + +04/29/2007: gga + [Ruby] + Fixed the argout count in directors for Ruby. Previously, + ignored or "numinputs=0" typemaps would incorrectly not get + counted towards the argout count. + (bug/patch #1545585) + +04/29/2007: gga + [Ruby] + Upgraded Ruby converter to recognize "numinputs=0". Previously, + only the old "ignore" flag was checked (which would currently + still work properly, but is deprecated). + +04/29/2007: gga + [Ruby - but should be made generic] + + %feature("numoutputs","0") added. + + This feature allows you to ignore the output of a function so + that it is not added to a list of output values + ( ie. argouts ). + This should also become a feature of %typemap(directorout) + as "numoutputs"=0, just like "numinputs"=0 exists. + + %feature("directors"=1) + + %include <typemaps.i> + + %feature("numoutputs","0") { Class::member_function1 }; + %typemap(out) MStatus { // some code, like check mstatus + // and raise exception if wrong }; + + %inline %{ + typedef int MStatus; + class Class { + + // one argument returned, but director out code added + // MStatus is discarded as a return (out) parameter. + virtual MStatus member_function1( int& OUTPUT ); + + // two arguments returned, director out code added + // MStatus is not discarded + virtual MStatus member_function2( int& OUTPUT ); + }; + %} + + +04/21/2007: olly + Fix parsing of float constants with an exponent (e.g. 1e-02f) + (bug #1699646). + +04/20/2007: olly + [Python] Fix lack of generation of docstrings when -O is used. + Also, fix generation of docstrings containing a double quote + character. Patch from Richard Boulton in bug#1700146. + +04/17/2007: wsfulton + [Java, C#] Support for adding in Java/C# code before and after the intermediary call, + specifically related to the marshalling of the proxy type to the intermediary type. + The javain/csin typemap now supports the 'pre' and 'post' attributes to achieve this. + The javain typemap also supports an optional 'pgcppname' attribute for premature garbage + collection prevention parameter naming and the csin typemap supports an optional 'cshin' + attribute for the parameter type used in a constructor helper generated when the type is used + in a constructor. Details in the Java.html and CSharp.html documentation. + +04/16/2007: olly + Don't treat `restrict' as a reserved identifier in C++ mode + (bug#1685534). + +04/16/2007: olly + [PHP5] Fix how zend_throw_exception() is called (bug #1700785). + +04/10/2007: olly + Define SWIGTEMPLATEDISAMBIGUATOR to template for aCC (reported on + swig-user that this is needed). + +04/04/2007: olly + [PHP5] If ZTS is enabled, release <module>_globals_id in MSHUTDOWN + to avoid PHP interpreter crash on shutdown. This solution was + suggested here: http://bugs.php.net/bug.php?id=40985 + +04/03/2007: olly + [PHP4] Add missing ZTS annotations to generated C++ wrapper code + to fix compilation failures when using ZTS enabled SWIG (Linux + distributions tend to disable ZTS, but notably the Windows build + uses it by default). + +04/01/2007: efuzzyone + [CFFI] Patch #1684261: fixes handling of unsigned int literals, thanks Leigh Smith. + Also, improved documentation. + +03/30/2007: olly + Avoid generating '<:' token when using SwigValueWrapper<> on a type + which starts with '::' (patch #1690948). + +03/25/2007: wuzzeb (John Lenz) + [perl5] Add SWIG_fail to the SWIG_exception macro. Fixes a few problems reported + on the mailing list. + +03/23/2007: wsfulton + String copying patch from Josh Cherry reducing memory consumption by about 25%. + +03/21/2007: wsfulton + [Java] Apply patch #1631987 from Ulrik Peterson - bool INOUT typemaps + fail on big endian machines. + +03/16/2007: wsfulton + Fix seg fault given dodgy C++ code: namespace abc::def { } + +03/16/2007: wsfulton + [Java] Fixes so that ARRAYSOFCLASSES and ARRAYSOFENUMS in arrays_java.i can be applied + to pointer types. + +03/03/2007: olly + [PHP5] When we know the literal numeric value for a constant, use + that to initialise the const member in the PHP wrapper class. + +03/02/2007: olly + [PHP5] Fix PHP wrapper code generated for certain cases of + overloaded forms with default arguments. + +02/26/2007: efuzzyone + [CFFI] Patch #1656395: fixed hex and octal values bug, thanks to Arthur Smyles. + +02/22/2007: mgossage + [Lua] Fixed bug in typemaps which caused derived_byvalue and rname test cases to fail. + Updated derived_byvalue.i to explain how to find and fix the problem + +01/25/2007: wsfulton + Fix #1538522 and #1338527, forward templated class declarations without a + name for the templated class parameters, such as: + + template <typename, class> class X; + +01/23/2007: mgossage + [Lua] Patch #1640862: <malloc.h> replaced by <stdlib.h> + Patch #1598063 Typo in typemaps.i + +01/22/2007: mgossage + [Lua] Added a lua specific carrays.i which adds the operator[] support. + modified the main code to make it not emit all the class member functions & accessors + Note: C structs are created using new_XXX() while C++ classes use XXX() (should be standardised) + Updated test case: li_carrays + Updated the documentation. + +01/12/2007: wsfulton + [Php] Add support for newfree typemaps (sometimes used by %newobject) + +01/12/2007: beazley + New command line option -macroerrors. When supplied, this will force + the C scanner/parser to report proper location information for code contained + inside SWIG macros (defined with %define). By default, SWIG merely reports + errors on the line at which a macro is used. With this option, you + can expand the error back to its source---something which may simplify + debugging. + +01/12/2007: beazley + [Internals] Major overhaul of C/C++ scanning implementation. For quite + some time, SWIG contained two completely independent C/C++ tokenizers-- + the legacy scanner in CParse/cscanner.c and a general purpose scanner + in Swig/scanner.c. SWIG still has two scanning modules, but the C parser + scanner (CParse/cscanner.c) now relies upon the general purpose + scanner found in Swig/scanner.c. As a result, it is much smaller and + less complicated. This change also makes it possible to maintain all + of the low-level C tokenizing in one central location instead of two + places as before. + + ***POTENTIAL FLAKINESS*** + This change may cause problems with accurate line number reporting + as well as error reporting more generally. I have tried to resolve this + as much as possible, but there might be some corner cases. + +01/12/2007: mgossage + [Lua] Added typemap throws for std::string*, typemap for SWIGTYPE DYNAMIC, + changed the existing throws typemap to throw a string instead of making a copy of + the object (updating a few test cases to deal with the change). + fixed test case: dynamic_casts, exception_partial_info, li_std_string, size_t + +01/03/2007: beazley + [Internals]. Use of swigkeys.c/.h variables is revoked. Please use + simple strings for attribute names. + +12/30/2006: beazley + Internal API functions HashGetAttr() and HashCheckAttr() have been revoked. + Please use Getattr() to retrieve attributes. The function Checkattr() can + be used to check attributes. Note: These functions have been revoked + because they only added a marginal performance improvement at the expense + code clarity. + +12/26/2006: mgossage + [Lua] Added more STL (more exceptions, map, size_t), + fixed test case: conversion_ns_template. + +12/21/2006: mgossage + [Lua] Update to throw errors when setting immutables, + and allowing user addition of module variables. + +12/20/2006: wsfulton + Fix typedef'd variable wrappers that use %naturalvar, eg, std::string. + +12/14/2006: wsfulton + [C#] Add std::wstring and wchar_t typemaps + +12/14/2006: olly + [php] Fix bug #1613673 (bad PHP5 code generated for getters and + setters). + +12/02/2006: wsfulton, John Lenz, Dave Beazley + Move from cvs to Subversion for source control + +11/30/2006: beazley + Cleaned up swigwarnings.swg file not to use nested macro + definitions. + +11/12/2006: wsfulton + [Java, C#] Fix for %extend to work for static member variables. + Version 1.3.31 (November 20, 2006) ================================== |