Commit Graph

24 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
Andy Polyakov 1eebc2335a Lib/java/arrays_java.i: use actual C/C++ type in JAVA_ARRAYS_TYPEMAPS.
long long[] map was using JNI type as C/C++ type. General spirit of
JAVA_ARRAYS_TYPEMAPS is to cast individual array elements, not to
rely on potentially incompatible pointer casts.
2021-03-19 16:29:48 +01:00
William S Fulton 449aa08124 %extend changes and remove default use of javatype, dtype, cstype %typemaps
1) The %extend directive can now optionally support one of the 'class', 'struct' or 'union'.
2) The SWIG library no longer uses the javatype, dtype or cstype typemaps, thereby
   completely freeing them up for users to use without having to replicate the library
   code that they previously added

Tested by changes to test: java_lib_arrays
2017-01-15 16:50:24 +00:00
William S Fulton cd04b372a4 Consistent memory intiailization between C and C++ in typemaps
Remove unnecessary initialization via calloc calls and replace with
malloc.
2015-07-30 20:20:38 +01:00
William S Fulton 15c4a30d9f Make generated support functions in arrays_java.i static for multiple module linking
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12906 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-02-16 07:14:18 +00:00
William S Fulton 8a6e006a7b Marshalling char[] and char[ANY] to Java byte[] is now a bit easier
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12742 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-06-17 06:41:53 +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 87394a2daf Fix ARRAYSOFCLASSES bug reported by Kevin Mills where the changes made to an array element in the C layer are not reflected back into Java
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10219 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-01-25 22:01:55 +00:00
Olly Betts db1161de35 Fix typo.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9843 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-31 10:32:01 +00:00
William S Fulton 36759b3303 ARRAYSOFCLASSES and ARRAYSOFENUMS fix so that they can be applied to pointers
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9652 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-03-16 23:37:15 +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 25aff229ab Remove void * cast which was suppressing gcc's strict aliasing warning display. Note g++ 4.0 still does not display the warning even though with -O2 the resulting code fails due to aliasing optimisations.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8948 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-03 22:44:34 +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 71646dcd81 more fixes for gcc -fstrict-aliasing -Wall
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7193 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-05-13 23:51:16 +00:00
William S Fulton 94e6c86d06 Fixes to remove "dereferencing type-punned pointer will break strict-aliasing rules" warnings in C wrappers when compiling C code with 'gcc -Wall -fstrict-aliasing'. Patch from Michael Cahill.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7192 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-05-13 23:14:35 +00:00
William S Fulton 61c6a09ff2 half working director typemaps removed
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7108 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-03-29 20:51:28 +00:00
William S Fulton 9230fe525a mods so that a %apply will work on pointers, eg %apply int[] {int*}
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6847 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-12-08 22:49:00 +00:00
Marcelo Matus d84772ce6f fix #if __cplusplus problem
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6347 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-06 16:51:22 +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 c5e9953972 Throw exception if Java array passed in is not the same size as the C array.
Was using C free when array created with C++ new.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4672 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-04-10 17:32:45 +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