diff options
author | William S Fulton <wsf@fultondesigns.co.uk> | 2013-09-15 10:43:49 +0100 |
---|---|---|
committer | William S Fulton <wsf@fultondesigns.co.uk> | 2013-09-15 10:43:49 +0100 |
commit | 0431664b18f17774344c79962518acfa4c738746 (patch) | |
tree | 265057588bde9700ae93444e656b0338f325a091 | |
parent | f01b52c44cbab9205a4fd4c2bcac5ba2d12ef460 (diff) | |
download | swig-0431664b18f17774344c79962518acfa4c738746.tar.gz |
Guile OUTPUT typemap fix
Fixes 'attempt to free a non-heap object' in some OUTPUT typemaps.
-rw-r--r-- | CHANGES.current | 9 | ||||
-rw-r--r-- | Examples/test-suite/typemap_qualifier_strip.i | 4 | ||||
-rw-r--r-- | Lib/r/r.swg | 9 |
3 files changed, 21 insertions, 1 deletions
diff --git a/CHANGES.current b/CHANGES.current index b2f007a92..7e756e912 100644 --- a/CHANGES.current +++ b/CHANGES.current @@ -5,6 +5,15 @@ See the RELEASENOTES file for a summary of changes in each release. Version 2.0.11 (in progress) ============================ +2013-09-15: wsfulton + [R] Fix attempt to free a non-heap object in OUTPUT typemaps for: + unsigned short *OUTPUT + unsigned long *OUTPUT + signed long long *OUTPUT + char *OUTPUT + signed char*OUTPUT + unsigned char*OUTPUT + 2013-09-12: wsfulton [Lua] Pull Git patch #62. 1) Static members and static functions inside class can be accessed as diff --git a/Examples/test-suite/typemap_qualifier_strip.i b/Examples/test-suite/typemap_qualifier_strip.i index d91a7b109..9b9f24cd8 100644 --- a/Examples/test-suite/typemap_qualifier_strip.i +++ b/Examples/test-suite/typemap_qualifier_strip.i @@ -1,5 +1,9 @@ %module typemap_qualifier_strip +%typemap(freearg) int *ptr "" +%typemap(freearg) int *const ptrConst "" +%typemap(freearg) int const* constPtr "" + %typemap(in) int *ptr { int temp = 1234; $1 = &temp; diff --git a/Lib/r/r.swg b/Lib/r/r.swg index be42ff3a1..126611d61 100644 --- a/Lib/r/r.swg +++ b/Lib/r/r.swg @@ -114,12 +114,19 @@ signed int *OUTPUT, unsigned int *OUTPUT, short *OUTPUT, signed short *OUTPUT, +unsigned short *OUTPUT, long *OUTPUT, signed long *OUTPUT, +unsigned long *OUTPUT, long long *OUTPUT, +signed long long *OUTPUT, unsigned long long *OUTPUT, float *OUTPUT, -double *OUTPUT {} +double *OUTPUT, +char *OUTPUT, +signed char *OUTPUT, +unsigned char *OUTPUT +{} |