*** empty log message ***

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5976 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2004-06-03 22:57:54 +00:00
commit 567355372f
2 changed files with 143 additions and 66 deletions

View file

@ -1,8 +1,70 @@
Version 1.3.22 (in progress) Version 1.3.22 (in progress)
================================== ==================================
06/03/2004: wsfulton
Patch to fix wrapping of templated methods. ISO compliant compilers, like
Comeau and GCC-3.4.0, don't like the template specifier that SWIG was generating
when calling the method. This fix may break some non standard compliant compilers,
for example, Sun workshop compilers prior to version 6.2.p2. Patch submitted
by Bill Clarke.
06/03/2004: wsfulton
[Java, C#] Undocumented special variable $imclassname removed.
New special variable $module is replaced by the module name, as specified
by %module or -module commandline option. $imclassname can be created from $module.
06/03/2004: wsfulton
[C#] Same as for Java below. The new typemaps are named differently, namely,
csbody and csbody_derived. The deprecated typemaps are csgetcptr and
csptrconstructormodifiers.
*** POTENTIAL INCOMPATIBILITY FOR C# MODULE ***
06/03/2004: wsfulton
[Java] Typemap changes for the Java proxy / typewrapper and enum classes. A new
typemap called javabody contains the essential support code for generation into the body
of these classes. There is also a new javabody_derived typemap which is used instead for
wrapped classes that have a wrapped base class. The code is basically, the getCPtr()
method and swigCPtr and swigCMemOwn member variables. These used to be hard coded
with no way to modify the code. The introduction of this typemap makes it possible for
the user to tailor nearly every aspect of the code generation.
The exception now is the code for director classes.
The javagetcptr and javaptrconstructormodifiers typemaps are deprecated and are
no longer used as the code that these generated can be put in the more flexible
javabody and javabody_derived typemaps.
*** POTENTIAL INCOMPATIBILITY FOR JAVA MODULE ***
06/03/2004: wsfulton
[Java, C#] The contents of the class modifier typemaps and pragmas have changed.
They must now include the class type. Previously 'class' was hard coded.
This change enables flexibility into what type of class is generated,
for example the proxy class could be an interface instead of a class.
For Java this affects the javaclassmodifiers typemap and the jniclassclassmodifiers
and moduleclassmodifiers pragmas.
For C# this affects the csclassmodifiers typemap and the imclassclassmodifiers
and moduleclassmodifiers pragmas.
Unless you have overridden the default versions of these typemaps or pragmas, you
shouldn't be affected. However, if you have, upgrading is easy, for example
class Foo {};
%typemap(javaclassmodifiers) Foo "public final"
must now be:
class Foo {};
%typemap(javaclassmodifiers) Foo "public final class"
*** POTENTIAL INCOMPATIBILITY FOR C# MODULE ***
*** POTENTIAL INCOMPATIBILITY FOR JAVA MODULE ***
05/31/2004: wsfulton 05/31/2004: wsfulton
Fix for exception specifications that are references. Problem reported by Fix for C++ exception specifications that are references. Problem reported by
Oren Miller. Also improves the generated exception declarations in the Oren Miller. Also improves the generated exception declarations in the
catch handler for pointers - a pointer is used instead of a reference to catch handler for pointers - a pointer is used instead of a reference to
a pointer. Added default throws typemaps for SWIGTYPE &, SWIGTYPE * and a pointer. Added default throws typemaps for SWIGTYPE &, SWIGTYPE * and

View file

@ -521,87 +521,101 @@
<li><a href="Java.html#n17">Global variables</a> <li><a href="Java.html#n17">Global variables</a>
<li><a href="Java.html#n18">Constants</a> <li><a href="Java.html#n18">Constants</a>
<li><a href="Java.html#n19">Enumerations</a> <li><a href="Java.html#n19">Enumerations</a>
<li><a href="Java.html#n20">Pointers</a>
<li><a href="Java.html#n21">Structures</a>
<li><a href="Java.html#n22">C++ classes</a>
<li><a href="Java.html#n23">C++ inheritance</a>
<li><a href="Java.html#n24">Pointers, references, arrays and pass by value</a>
<ul> <ul>
<li><a href="Java.html#n25">Null pointers</a> <li><a href="Java.html#n20">Anonymous enums</a>
<li><a href="Java.html#n21">Typesafe enums</a>
<li><a href="Java.html#n22">Proper Java enums</a>
<li><a href="Java.html#n23">Type unsafe enums</a>
<li><a href="Java.html#n24">Simple enums</a>
</ul> </ul>
<li><a href="Java.html#n26">C++ overloaded functions</a> <li><a href="Java.html#n25">Pointers</a>
<li><a href="Java.html#n27">C++ namespaces</a> <li><a href="Java.html#n26">Structures</a>
<li><a href="Java.html#n28">C++ templates</a> <li><a href="Java.html#n27">C++ classes</a>
<li><a href="Java.html#n29">C++ Smart Pointers</a> <li><a href="Java.html#n28">C++ inheritance</a>
</ul> <li><a href="Java.html#n29">Pointers, references, arrays and pass by value</a>
<li><a href="Java.html#n30">Further details on the generated Java classes</a>
<ul> <ul>
<li><a href="Java.html#n31">The intermediary JNI class</a> <li><a href="Java.html#n30">Null pointers</a>
</ul>
<li><a href="Java.html#n31">C++ overloaded functions</a>
<li><a href="Java.html#n32">C++ namespaces</a>
<li><a href="Java.html#n33">C++ templates</a>
<li><a href="Java.html#n34">C++ Smart Pointers</a>
</ul>
<li><a href="Java.html#n35">Further details on the generated Java classes</a>
<ul> <ul>
<li><a href="Java.html#n32">The intermediary JNI class pragmas</a> <li><a href="Java.html#n36">The intermediary JNI class</a>
</ul>
<li><a href="Java.html#n33">The Java module class</a>
<ul> <ul>
<li><a href="Java.html#n34">The Java module class pragmas</a> <li><a href="Java.html#n37">The intermediary JNI class pragmas</a>
</ul> </ul>
<li><a href="Java.html#n35">Java proxy classes</a> <li><a href="Java.html#n38">The Java module class</a>
<ul> <ul>
<li><a href="Java.html#n36">Memory management</a> <li><a href="Java.html#n39">The Java module class pragmas</a>
<li><a href="Java.html#n37">Inheritance</a>
<li><a href="Java.html#n38">Proxy classes and garbage collection</a>
</ul> </ul>
<li><a href="Java.html#n39">Type wrapper classes</a> <li><a href="Java.html#n40">Java proxy classes</a>
</ul>
<li><a href="Java.html#n40">Cross language polymorphism using directors (experimental)</a>
<ul> <ul>
<li><a href="Java.html#n41">Enabling directors</a> <li><a href="Java.html#n41">Memory management</a>
<li><a href="Java.html#n42">Director classes</a> <li><a href="Java.html#n42">Inheritance</a>
<li><a href="Java.html#n43">Overhead and code bloat</a> <li><a href="Java.html#n43">Proxy classes and garbage collection</a>
<li><a href="Java.html#n44">Simple directors example</a>
</ul> </ul>
<li><a href="Java.html#n45">Common customization features</a> <li><a href="Java.html#n44">Type wrapper classes</a>
<li><a href="Java.html#n45">Enum classes</a>
<ul> <ul>
<li><a href="Java.html#n46">C/C++ helper functions</a> <li><a href="Java.html#n46">Typesafe enum classes</a>
<li><a href="Java.html#n47">Class extension with %extend</a> <li><a href="Java.html#n47">Proper Java enum classes</a>
<li><a href="Java.html#n48">Exception handling with %exception</a> <li><a href="Java.html#n48">Type unsafe enum classes</a>
<li><a href="Java.html#n49">Method access with %javamethodmodifiers</a>
</ul> </ul>
<li><a href="Java.html#n50">Tips and techniques</a> </ul>
<li><a href="Java.html#n49">Cross language polymorphism using directors (experimental)</a>
<ul> <ul>
<li><a href="Java.html#n51">Input and output parameters using primitive pointers and references</a> <li><a href="Java.html#n50">Enabling directors</a>
<li><a href="Java.html#n52">Simple pointers</a> <li><a href="Java.html#n51">Director classes</a>
<li><a href="Java.html#n53">Wrapping C arrays with Java arrays</a> <li><a href="Java.html#n52">Overhead and code bloat</a>
<li><a href="Java.html#n54">Unbounded C Arrays</a> <li><a href="Java.html#n53">Simple directors example</a>
</ul> </ul>
<li><a href="Java.html#n55">Java typemaps</a> <li><a href="Java.html#n54">Common customization features</a>
<ul> <ul>
<li><a href="Java.html#n56">Default primitive type mappings</a> <li><a href="Java.html#n55">C/C++ helper functions</a>
<li><a href="Java.html#n57">Sixty four bit JVMs</a> <li><a href="Java.html#n56">Class extension with %extend</a>
<li><a href="Java.html#n58">What is a typemap?</a> <li><a href="Java.html#n57">Exception handling with %exception</a>
<li><a href="Java.html#n59">Typemaps for mapping C/C++ types to Java types</a> <li><a href="Java.html#n58">Method access with %javamethodmodifiers</a>
<li><a href="Java.html#n60">Java special variables</a>
<li><a href="Java.html#n61">Typemaps for both C and C++ compilation</a>
<li><a href="Java.html#n62">Java code typemaps</a>
<li><a href="Java.html#n63">Director specific typemaps</a>
</ul> </ul>
<li><a href="Java.html#n64">Typemap Examples</a> <li><a href="Java.html#n59">Tips and techniques</a>
<ul> <ul>
<li><a href="Java.html#n65">Converting Java String arrays to char ** </a> <li><a href="Java.html#n60">Input and output parameters using primitive pointers and references</a>
<li><a href="Java.html#n66">Expanding a Java object to multiple arguments</a> <li><a href="Java.html#n61">Simple pointers</a>
<li><a href="Java.html#n67">Using typemaps to return arguments</a> <li><a href="Java.html#n62">Wrapping C arrays with Java arrays</a>
<li><a href="Java.html#n68">Adding Java downcasts to polymorphic return types</a> <li><a href="Java.html#n63">Unbounded C Arrays</a>
<li><a href="Java.html#n69">Adding an equals method to the Java classes</a>
<li><a href="Java.html#n70">Void pointers and a common Java base class</a>
</ul> </ul>
<li><a href="Java.html#n71">Living with Java Directors</a> <li><a href="Java.html#n64">Java typemaps</a>
<li><a href="Java.html#n72">Odds and ends</a>
<ul> <ul>
<li><a href="Java.html#n73">JavaDoc comments</a> <li><a href="Java.html#n65">Default primitive type mappings</a>
<li><a href="Java.html#n74">Functional interface without proxy classes</a> <li><a href="Java.html#n66">Sixty four bit JVMs</a>
<li><a href="Java.html#n75">Using your own JNI functions</a> <li><a href="Java.html#n67">What is a typemap?</a>
<li><a href="Java.html#n76">Performance concerns and hints</a> <li><a href="Java.html#n68">Typemaps for mapping C/C++ types to Java types</a>
<li><a href="Java.html#n69">Java special variables</a>
<li><a href="Java.html#n70">Typemaps for both C and C++ compilation</a>
<li><a href="Java.html#n71">Java code typemaps</a>
<li><a href="Java.html#n72">Director specific typemaps</a>
</ul> </ul>
<li><a href="Java.html#n77">Examples</a> <li><a href="Java.html#n73">Typemap Examples</a>
<ul>
<li><a href="Java.html#n74">Simpler Java enums for enums without initializers</a>
<li><a href="Java.html#n75">Converting Java String arrays to char ** </a>
<li><a href="Java.html#n76">Expanding a Java object to multiple arguments</a>
<li><a href="Java.html#n77">Using typemaps to return arguments</a>
<li><a href="Java.html#n78">Adding Java downcasts to polymorphic return types</a>
<li><a href="Java.html#n79">Adding an equals method to the Java classes</a>
<li><a href="Java.html#n80">Void pointers and a common Java base class</a>
</ul>
<li><a href="Java.html#n81">Living with Java Directors</a>
<li><a href="Java.html#n82">Odds and ends</a>
<ul>
<li><a href="Java.html#n83">JavaDoc comments</a>
<li><a href="Java.html#n84">Functional interface without proxy classes</a>
<li><a href="Java.html#n85">Using your own JNI functions</a>
<li><a href="Java.html#n86">Performance concerns and hints</a>
</ul>
<li><a href="Java.html#n87">Examples</a>
</ul> </ul>
<!-- INDEX --> <!-- INDEX -->
@ -1011,11 +1025,12 @@
<li><a href="Chicken.html#n11">Compilation</a> <li><a href="Chicken.html#n11">Compilation</a>
<li><a href="Chicken.html#n12">Linkage</a> <li><a href="Chicken.html#n12">Linkage</a>
<ul> <ul>
<li><a href="Chicken.html#n13">Customized Interpreter</a> <li><a href="Chicken.html#n13">Shared library</a>
<li><a href="Chicken.html#n14">Static binary</a>
</ul> </ul>
<li><a href="Chicken.html#n14">Typemaps</a> <li><a href="Chicken.html#n15">Typemaps</a>
<li><a href="Chicken.html#n15">Pointers</a> <li><a href="Chicken.html#n16">Pointers</a>
<li><a href="Chicken.html#n16">Unsupported features</a> <li><a href="Chicken.html#n17">Unsupported features</a>
</ul> </ul>
<!-- INDEX --> <!-- INDEX -->