Skip to content

Commit d706847

Browse files
committed
Merge remote-tracking branch 'upstream/master'
2 parents f4c12f0 + 2e98189 commit d706847

File tree

977 files changed

+13860
-34384
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

977 files changed

+13860
-34384
lines changed

.github/workflows/ci.yml

Lines changed: 457 additions & 0 deletions
Large diffs are not rendered by default.

.gitignore

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,8 @@ Examples/guile/*/my-guile
158158

159159
# Java
160160
Examples/test-suite/java/*/
161+
Examples/test-suite/java/expected.txt
162+
Examples/test-suite/java/got.txt
161163
Examples/java/*/*.java
162164
!Examples/java/*/runme.java
163165
Examples/java/doxygen/javadocs
@@ -190,11 +192,8 @@ Examples/perl5/*/*.pm
190192

191193
# PHP
192194
Examples/test-suite/php/php_*.h
193-
Examples/test-suite/php/*.php
194-
!Examples/test-suite/php/*runme.php
195-
!Examples/test-suite/php/skel.php
196195
Examples/php/*/php_*.h
197-
Examples/php/*/example.php
196+
Examples/php/pragmas/example.php
198197

199198
# Python
200199
# Based on https://github.com/github/gitignore/blob/master/Python.gitignore

.travis.yml

Lines changed: 0 additions & 59 deletions
This file was deleted.

ANNOUNCE

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
*** ANNOUNCE: SWIG 4.0.2 (8 Jun 2020) ***
1+
*** ANNOUNCE: SWIG 4.1.0 (in progress) ***
22

33
http://www.swig.org
44

5-
We're pleased to announce SWIG-4.0.2, the latest SWIG release.
5+
We're pleased to announce SWIG-4.1.0, the latest SWIG release.
66

77
What is SWIG?
88
=============
@@ -25,11 +25,11 @@ Availability
2525
============
2626
The release is available for download on Sourceforge at
2727

28-
http://prdownloads.sourceforge.net/swig/swig-4.0.2.tar.gz
28+
http://prdownloads.sourceforge.net/swig/swig-4.1.0.tar.gz
2929

3030
A Windows version is also available at
3131

32-
http://prdownloads.sourceforge.net/swig/swigwin-4.0.2.zip
32+
http://prdownloads.sourceforge.net/swig/swigwin-4.1.0.zip
3333

3434
Please report problems with this release to the swig-devel mailing list,
3535
details at http://www.swig.org/mail.html.

CCache/README.swig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ This directory contains a version of ccache. The initial version was based on cc
22
debian patches 01-02, 04-14, see the debian/patches subdirectory. The ccache-win32-2.4 modifications
33
to ccache-2.4 have also been merged in.
44

5-
Changes have been made to support cacheing the output from SWIG. The ability to cache c/c++ compiler
5+
Changes have been made to support caching the output from SWIG. The ability to cache c/c++ compiler
66
output has been retained.
77

88
Additional features added are the CCACHE_VERBOSE and CCACHE_SWIG environment variables, see docs.

CCache/configure.ac

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
dnl Process this file with autoconf to produce a configure script.
22

3-
AC_INIT([ccache-swig], [0.0]) # Get version from SWIG in ccache_swig_config.h.in
4-
AC_PREREQ(2.52)
3+
AC_INIT([ccache-swig],[0.0]) # Get version from SWIG in ccache_swig_config.h.in
4+
AC_PREREQ([2.60])
55
AC_CONFIG_SRCDIR([ccache.h])
66

77
AC_MSG_NOTICE([Configuring ccache])
88

9-
AC_CONFIG_HEADER(config.h)
9+
AC_CONFIG_HEADERS([config.h])
1010
AC_CONFIG_FILES([config_win32.h])
1111

1212
dnl Checks for programs.
@@ -41,7 +41,7 @@ else
4141
fi
4242

4343
AC_HEADER_DIRENT
44-
AC_HEADER_TIME
44+
4545
AC_HEADER_SYS_WAIT
4646

4747
AC_CHECK_HEADERS(ctype.h strings.h stdlib.h string.h pwd.h sys/time.h)
@@ -51,19 +51,16 @@ AC_CHECK_FUNCS(gethostname getpwuid)
5151
AC_CHECK_FUNCS(utimes)
5252

5353
AC_CACHE_CHECK([for compar_fn_t in stdlib.h],ccache_cv_COMPAR_FN_T, [
54-
AC_TRY_COMPILE(
55-
[#include <stdlib.h>],
56-
[
54+
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>]], [[
5755
void test_fn(void) { qsort(NULL, 0, 0, (__compar_fn_t)NULL); }
58-
],
59-
ccache_cv_COMPAR_FN_T=yes,ccache_cv_COMPAR_FN_T=no)])
56+
]])],[ccache_cv_COMPAR_FN_T=yes],[ccache_cv_COMPAR_FN_T=no])])
6057
if test x"$ccache_cv_COMPAR_FN_T" = x"yes"; then
6158
AC_DEFINE(HAVE_COMPAR_FN_T, 1, [ ])
6259
fi
6360

6461
dnl Note: This could be replaced by AC_FUNC_SNPRINTF() in the autoconf macro archive
6562
AC_CACHE_CHECK([for C99 vsnprintf],ccache_cv_HAVE_C99_VSNPRINTF,[
66-
AC_TRY_RUN([
63+
AC_RUN_IFELSE([AC_LANG_SOURCE([[
6764
#include <sys/types.h>
6865
#include <stdarg.h>
6966
void foo(const char *format, ...) {
@@ -81,8 +78,7 @@ void foo(const char *format, ...) {
8178
exit(0);
8279
}
8380
main() { foo("hello"); }
84-
],
85-
ccache_cv_HAVE_C99_VSNPRINTF=yes,ccache_cv_HAVE_C99_VSNPRINTF=no,ccache_cv_HAVE_C99_VSNPRINTF=cross)])
81+
]])],[ccache_cv_HAVE_C99_VSNPRINTF=yes],[ccache_cv_HAVE_C99_VSNPRINTF=no],[ccache_cv_HAVE_C99_VSNPRINTF=cross])])
8682
if test x"$ccache_cv_HAVE_C99_VSNPRINTF" = x"yes"; then
8783
AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [ ])
8884
fi

CCache/execute.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ int execute(char **argv,
137137
_dup2(fd, 2);
138138
_close(fd);
139139

140-
/* Spawn process (_exec* familly doesn't return) */
140+
/* Spawn process (_exec* family doesn't return) */
141141
status = _spawnv(_P_WAIT, argv[0], (const char **)argv);
142142

143143
/* Restore descriptors */

CCache/snprintf.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* for string length. This covers a nasty loophole.
1717
*
1818
* The other functions are there to prevent NULL pointers from
19-
* causing nast effects.
19+
* causing nasty effects.
2020
*
2121
* More Recently:
2222
* Brandon Long <[email protected]> 9/15/96 for mutt 0.43
@@ -30,7 +30,7 @@
3030
* probably requires libm on most operating systems. Don't yet
3131
* support the exponent (e,E) and sigfig (g,G). Also, fmtint()
3232
* was pretty badly broken, it just wasn't being exercised in ways
33-
* which showed it, so that's been fixed. Also, formated the code
33+
* which showed it, so that's been fixed. Also, formatted the code
3434
* to mutt conventions, and removed dead code left over from the
3535
* original. Also, there is now a builtin-test, just compile with:
3636
* gcc -DTEST_SNPRINTF -o snprintf snprintf.c -lm

CCache/web/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ <h2>Latest release</h2>
3434

3535
You can get this release from the <a href="http://ccache.samba.org/ftp/ccache/">download directory</a>
3636

37-
<p>NOTE! This release changes the hash input slighly, so you will
37+
<p>NOTE! This release changes the hash input slightly, so you will
3838
probably find that you will not get any hits against your existing
3939
cache when you upgrade.
4040

CHANGES

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,151 @@ See the RELEASENOTES file for a summary of changes in each release.
55
Issue # numbers mentioned below can be found on Github. For more details, add
66
the issue number to the end of the URL: https://github.com/swig/swig/issues/
77

8+
Version 4.0.2 (8 Jun 2020)
9+
==========================
10+
11+
2020-06-07 vigsterkr
12+
[Ruby] #1717 Nil fix mangling strings
13+
14+
2020-06-07 vadz
15+
#1748 Fix doxygen comments quoting issue
16+
17+
2020-06-07 munoah
18+
#1800 Escape spaces in file paths for dependencies (-M -MM etc)
19+
20+
2020-06-06 andreas-schwab
21+
[Ruby] #1801 Fix encoding on big endian systems when wrapping std::wstring.
22+
23+
2020-05-31 kwwette
24+
[Octave] #1789 error handling improvements and return error code on exit for SWIG wrapped modules.
25+
26+
2020-05-30 msteinbeck
27+
[D] #1593 Replace broken imports when using newer versions of D.
28+
29+
2020-05-29: ZackerySpytz
30+
[Python] #1716 Performance improvements converting strings when using Python >= 3.3.
31+
32+
2020-05-28: ZackerySpytz
33+
#1776 Quite dramatically decrease run times when generating very large interface files by changing
34+
some internal memory pool sizes.
35+
36+
2020-05-28: mcfarljm
37+
#1788 Fix handling of Doxygen \endlink command.
38+
39+
2020-05-24: vapier
40+
[Javascript] #1796 Fix pkg-config invocation in configure.
41+
42+
2020-04-30: kwwette
43+
[Octave] Fix exception raising for newer Octave versions
44+
Since (at least) Octave 5.1.0, the Octave error() function now raises a C++ exception,
45+
which if uncaught immediately exits a SWIG wrapper function, bypassing any cleanup code
46+
that may appear after a "fail:" label. This patch adds a "try { ... } catch(...) { }"
47+
block around the contents of SWIG wrapper functions to first execute the cleanup code
48+
before rethrowing any exception raised. It is backward compatible with earlier versions
49+
of Octave where error() does not raise an exception, which will still branch to the
50+
"fail:" block to execute cleanup code if an error is encountered.
51+
52+
Note that the new "try { ... } catch(...) { }" block will localise any local variables
53+
used in typemaps that were NOT declared through SWIG's %typemap(...) syntax, so it's
54+
possible this could break existing SWIG wrappers which were implicitly sharing local
55+
variables between typemaps. This can be fixed, however, by declaring local variables
56+
which need to be shared between typemaps through SWIG's %typemap(...) syntax.
57+
58+
2020-02-18: ryannevell
59+
[Lua] #1728 Add support for LUA lightuserdata to SWIG_Lua_ConvertPtr.
60+
61+
2020-02-18: dmach
62+
[Ruby] #1725 Fix gcc -Wcatch-value warnings.
63+
64+
2020-02-14: treitmayr
65+
#1724 Fix wrapping of abstract user-defined conversion operators.
66+
67+
2020-02-13: ddurham2
68+
[Python] #1512 Fix memleak when using STL containers of shared_ptr objects.
69+
70+
2020-02-06: wsfulton
71+
[Python] #1673 #1674 Fix setting 'this' when extending a proxy class with __slots__.
72+
73+
2020-01-31: vadz
74+
[Ruby] #1651 Add std::auto_ptr<> typemaps.
75+
76+
2020-01-31: ZackerySpytz
77+
[Python] #1700 More robust error checking for failures in calls to Python C API:
78+
PyBytes_AsStringAndSize() and PyString_AsStringAndSize().
79+
80+
2020-01-31: vadz
81+
[Python] #1710 Fix crash parsing empty docstrings.
82+
83+
2020-01-30: Alzathar
84+
[R] #910 #914 Fix R memory leak on exception.
85+
86+
2020-01-30: richardbeare
87+
[R] #1511 Fix bug wrapping functions. These were previously incorrectly wrapped as if
88+
they were variables. This happened when 'get' or 'set' was in the name of the function
89+
or method, but sometimes also in some other circumstances. If you were using R
90+
attribute syntax to access these methods, you'll need to switch to calling them as R
91+
methods.
92+
93+
*** POTENTIAL INCOMPATIBILITY ***
94+
95+
2020-01-24: etse-dignitas, wsfulton
96+
[C#, D, Java] #1533 Fix upcasting for shared_ptr's of templated types.
97+
98+
2020-01-16: mcfarljm
99+
#1643 #1654 When using -doxygen, fix segfault when nameless parameters or vararg parameters
100+
are used.
101+
102+
2020-01-16: mcfarljm
103+
#1632 #1659 Fix newline handling for doxygen "///" comments.
104+
105+
2020-01-14: mcfarljm
106+
#1647 #1656 Fix crash handling empty doxygen comments.
107+
108+
2020-01-14: mcfarljm
109+
#1608 Improve doxygen support.
110+
- Add support for \param[] commands such as: \param[in].
111+
- Optional arguments are marked as 'optional' in pydoc.
112+
- Improve support for \code commands so that other languages are supported as code blocks.
113+
Support added for java, c and py. For example Python: \code{.py} ... \endcode
114+
- Fix doxygen handling of \em and \p tags for Python.
115+
116+
2020-01-13: wsfulton
117+
[Python] #1595 Python -builtin constructors silently ignored keyword arguments.
118+
Instead of silenty ignoring them, now a "TypeError: f() takes no keyword arguments"
119+
exception is thrown if keyword arguments are used. Hence constructors and normal methods/
120+
functions behave in the same way. Note, -keyword should be used with -builtin to obtain
121+
keyword argument support.
122+
123+
2020-01-05: jschueller shadchin
124+
[Python] #1670 #1696 Add missing field initializers introduced in python 3.8:
125+
tp_vectorcall and tp_print.
126+
127+
2020-01-05: friedrichatgc
128+
[Octave] #1688 Change swig_this() to use size_t instead of long for compatibility
129+
with Windows 64 bit.
130+
131+
2020-01-05: treitmayr
132+
[Ruby] #1692 #1689 Add support for Ruby 2.7
133+
134+
2019-12-30: treitmayr
135+
[Ruby] #1653 #1668 Fix code generated when using -globalmodule option.
136+
137+
2019-12-29: ZackerySpytz
138+
[OCaml] #1686 Fix compilation errors with OCaml 4.09.0.
139+
140+
2019-12-10: wsfulton
141+
#1679 Fix parsing of C++11 identifiers with special meaning (final and override) when
142+
they are used as part of the scope name of an identifier, such as a namespace name.
143+
144+
2019-11-26: wsfulton
145+
[C#] #1628 'out' or 'ref' used in a cstype typemap was not always stripped out in parts
146+
of director code generation.
147+
148+
2019-11-01: wsfulton
149+
[Python] #1595 Fix bug in support for keyword arguments (kwargs feature or -keyword)
150+
when using -builtin. The fix is in the argument error checking when wrapping zero
151+
argument constructors only.
152+
8153
Version 4.0.1 (21 Aug 2019)
9154
===========================
10155

0 commit comments

Comments
 (0)