Version 1.3.40 (in progress)
============================

2009-06-16: wsfulton
	    [Java,C#] Fix enum marshalling when %ignore is used on one of the enum items.
            Incorrect enum values were being passed to the C++ layer or compilation errors resulted.

2009-06-02: talby
	    [Perl] Resolved reference.i overload support problem
	    identfied by John Potowsky.

2009-05-26: wsfulton
	    [C#] Improved std::map wrappers based on patch from Yuval Baror. The C# proxy
            now implements System.Collections.Generic.IDictionary<>.

	    These std:map wrappers have a non-backwards compatible overhaul to make them
            like a .NET IDictionary. Some method names have changed as following:
              set -> setitem (use this[] property now)
              get -> getitem (use this[] property now)
              has_key -> ContainsKey
              del -> Remove
              clear -> Clear

            The following macros used for std::map wrappers are deprecated and will no longer work:
              specialize_std_map_on_key
              specialize_std_map_on_value
              specialize_std_map_on_both

            *** POTENTIAL INCOMPATIBILITY ***

2009-05-14: bhy
            [Python] Fix the wrong pointer value returned by SwigPyObject_repr().

2009-05-13: mutandiz (Mikel Bancroft)
	    [allegrocl] Minor tweak when wrapping in -nocwrap mode.

2009-05-11: wsfulton
	    [C#] Improved std::vector wrappers on the C# proxy side from Yuval Baror. These
	    implement IList<> instead of IEnumerable<> where possible.

2009-04-29: wsfulton
	    [Java, C#] Add the 'notderived' attribute to the javabase and csbase typemaps.
	    When this attribute is set, the typemap will not apply to classes that are derived
	    from a C++ base class, eg 
	      %typemap(csbase, notderived="1") SWIGTYPE "CommonBase"

2009-04-29: olly
	    [Python] Don't attempt to acquire the GIL in situations where we
	    know that it will already be locked.  This avoids some dead-locks
	    with mod_python (due to mod_python bugs which are apparently
	    unlikely to ever be fixed), and results in smaller wrappers which
	    run a little faster (in tests with Xapian on x86-64 Ubuntu 9.04,
	    the stripped wrapper library was 11% smaller and ran 2.7% faster).

2009-04-21: wsfulton
	    [C#] Fix #2753469 - bool &OUTPUT and bool *OUTPUT typemaps initialisation.

2009-04-09: wsfulton
	    Fix #2746858 - C macro expression using floating point numbers

2009-03-30: olly
	    [PHP] The default out typemap for char[ANY] now returns the string up to a
	    zero byte, or the end of the array if there is no zero byte.  This
	    is the same as Python does, and seems more generally useful than
	    the previous behaviour of returning the whole contents of the array
	    including any zero bytes.  If you want the old behaviour, you can provide
	    your own typemap to do this:

	    %typemap(out) char [ANY]
	    %{
		RETVAL_STRINGL($1, $1_dim0, 1);
	    %}
