Commit Graph

38 Commits

Author SHA1 Message Date
William S Fulton 7bba06b03e Java - SWIGWORDSIZE64 for long type
Defining SWIGWORDSIZE64 now applies the (unsigned) long long
typemaps to (unsigned) long for a better match on systems
where long is 64-bits.

Although size_t typemaps are now applied from the int typemaps instead
of the long typemaps, identical code is generated and the mapping is
still to the Java signed long type.

Closes #646
Closes #649

Running the test-suite as follows on a 64-bit long system:

  env SWIG_FEATURES=-DSWIGWORDSIZE64 make check-java-test-suite

passes, except for a few tests which fail where they expect the
default Java type to be int or long instead of long or BigInteger
respectively.

Also arrays_java.i results in:
  invalid conversion from ‘long int*’ to ‘long long int*’ [-fpermissive]
  invalid conversion from ‘long int**’ to ‘long long int**’ [-fpermissive]
2023-10-05 21:30:30 +01:00
William S Fulton 61d9dd40a0 Fix crash Java directors
Further crash fixes when using OUTPUT and INOUT typemaps in typemaps.i and
passing NULL pointers in C++ to director method overloaded and implemented
in Java.

Don't create the one element array in these directorin typemaps if the
input is a NULL pointer, that is, translate a NULL C++ pointer into a
null Java object.

Also add some missing JNI error checks in these typemaps.
2018-08-12 13:45:43 +01:00
Bryan Atwood 7eeffe698c Fix Java directorargout typemap crash when argument pointer is null 2018-08-10 17:12:34 -07:00
William S Fulton a271043555 Fix warnings in Java OUTPUT and INOUT typemaps 2017-05-14 00:39:08 +01:00
William S Fulton 8a4ab380a1 Java director typemaps and test tweak
- Fix java_director_typemaps test name clash ensuring parallel tests work
- Replace assert with code that is guaranteed to run
- Nicer generated code from directorargout typemap
2017-01-24 23:47:30 +00:00
Andrey Starodubtsev 7cb2663132 WIP: #704 (java directorargout + java/typemaps.i fixes)
- avoid JCALL calls in generated code
- avoid redundant blocks in generated code
2017-01-22 13:41:53 +03:00
Andrey Starodubtsev 3ad041eede a lot of memory leak (local refs) fixed 2016-06-16 19:02:53 +03:00
Andrey Starodubtsev b2bcf040c0 java directorargout + java/typemaps.i fixes
- directorargout didn't work - it used string "jresult" instead of
  argument name
- java/typemaps.i didn't work with directors
- test for using java/typemaps.i in directors added
2016-06-08 15:04:47 +03:00
William S Fulton a15bbbaee5 Java - unsigned long long marshalling improvements for negative numbers
Affects marshalling of negative numbers from Java to C only.
A cast to signed long long in the C layer will now result in the expected value.

Closes #623.
2016-03-31 18:56:32 +01:00
Marvin Greenberg d0202cbdac Fix typecheck OUTPUT typemaps for Java 2013-04-10 18:37:26 +01:00
William S Fulton 4dfe131207 Fix unintended uninitialised memory access in OUTPUT typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13074 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-05-11 23:55:54 +00:00
William S Fulton 8ee0593036 Remove incomplete directorin typemaps as users incorrectly assumed they were implemented and working
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12653 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-05-03 05:46:00 +00:00
William S Fulton 837835280d Remove directorout INPUT/INOUT/OUTPUT typemaps - they will never be used as they used for the return type, not parameters. Fix java directorin typemap.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12651 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-05-03 05:32:13 +00:00
William S Fulton 4308dd03cf SWIG license change - The Examples and Lib move to a very permissive license in the LICENSE file, removing the BSD license restrictions as agreed by committers since it was inadvertently introduced. Remove some examples where the impact of the license change is not clear.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11874 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-02-27 23:26:02 +00:00
William S Fulton 74aa9cef17 Apply patch 1631987 - Java typemap for bool INOUT fails on big-endian machines
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9656 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-03-21 21:00:21 +00:00
William S Fulton 24af2d1b11 consistent directout typemaps for all languages - $result used instead of $1 in C# and Java now
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9467 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-10-20 22:54:14 +00:00
William S Fulton 0d30f52e97 Fix long long typemaps so that they can be applied to __int64 and other equivalents
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9223 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-07-24 20:37:10 +00:00
William S Fulton 800605149b cosmetic mods
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9098 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-05-13 23:17:45 +00:00
William S Fulton 49be05f4fd Common template for head of each file detailing licence, distribution and authors information
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8973 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-07 00:14:10 +00:00
William S Fulton 9883f6215a BigInteger fixes - Bug 1398394
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8334 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-09 23:10:27 +00:00
William S Fulton cfdad24993 Use the system angle brackets for %include
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7871 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-11-26 09:28:20 +00:00
William S Fulton dbc07b0656 Workaround for #error in typemaps erroring out when swig is running rather than when the compiler executes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7665 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-10-15 22:23:25 +00:00
William S Fulton a79b16c34f Fix last fix!
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7124 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-03-30 22:26:31 +00:00
William S Fulton 3563de51ee director typemaps added
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7109 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-03-29 20:51:58 +00:00
William S Fulton e41405de6b minor corrections
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6534 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-27 20:54:35 +00:00
William S Fulton b0f52ade93 Added and empty freearg typemap so that the signed char* typemaps can be aplied to char*.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6260 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-09-22 20:30:06 +00:00
William S Fulton 0f9eff6b62 example correction
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5662 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-21 21:24:46 +00:00
William S Fulton a9396525e8 Fix for INOUT and OUTPUT typemaps for when the JNI type is bigger than the c type.
For example unsigned long (32bits) is mapped to jlong (64bits)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5466 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-02 22:29:54 +00:00
William S Fulton 227a79d890 JNI descriptor attribute in directorin typemap called descriptor instead of parse now
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5277 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-08 11:20:07 +00:00
William S Fulton 7ee01311b2 typemap name changes:
inv => directorin
outv => directorout
argoutv => directorargout


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5137 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-20 23:52:28 +00:00
William S Fulton eeca9ccf6a directorin typemap renamed javadirectorin
directorout typemap renamed javadirectorout


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5135 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-20 16:13:19 +00:00
William S Fulton c8d535b30b Directors implementation contributed by Scott Michel.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5074 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-04 23:12:20 +00:00
William S Fulton af3ec605e9 long long typemap mods for use with %apply
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4443 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-06 23:28:01 +00:00
Dave Beazley 12a43edc2d The great merge
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2002-11-30 22:01:28 +00:00
Harco de Hilster d84664faa8 added wstring typemap. contributed by:
Wenyue Yu <wenyue@stud.ntnu.no>
         tal@slt.atr.co.jp


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@683 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-08-21 11:06:27 +00:00
Harco de Hilster 2aa97936ea changed c++ string argout typemap to freearg
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@647 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-08-14 07:20:24 +00:00
Harco de Hilster c86069d4f6 added string typemaps send by Tal Shalif <tal@slt.atr.co.jp>
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@613 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-08-04 08:20:18 +00:00
Harco de Hilster 9cb07a2409 Somehow the java dir was gone from the repository. Adding it again.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@280 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-28 10:59:23 +00:00