Commit graph

16,218 commits

Author SHA1 Message Date
William S Fulton
e475ce1d6b Fix race condition 'time of check time of use' - TOCTOU - when creating subdirectories.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13891 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-16 19:32:40 +00:00
William S Fulton
51a1aa5b1a Add coverity target to build coverity analysis and upload to coverity server for online analysis
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13890 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-14 22:51:39 +00:00
William S Fulton
684bd8e472 Minor warning fixes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13889 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-14 22:48:09 +00:00
William S Fulton
bee563e788 ccache-swig: apply patch #3586392 from Frederik Deweerdt to fix some error cases - incorrectly using memory after it has been deleted
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13888 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-14 22:17:52 +00:00
William S Fulton
fd24b188e2 Fix Coverity 'Uninitialized pointer fields' - member variables are now initialized
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13887 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-14 22:17:28 +00:00
William S Fulton
46d2486115 Resource leak fixes (or hiding them from Coverity static analysis tool by using String instead of char *)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13886 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-14 22:16:54 +00:00
William S Fulton
5a1e82a2f4 Remove DohClose (Close) and replace with calls to DohDelete (Delete) to fix some minor memory leaks in most uses of NewFile.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13885 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-14 22:16:07 +00:00
William S Fulton
61b4c1cbcd Fix 'name' attribute for explicitly defined constructors and destructors if the associated class was in a namespace, eg a correct fully qualified name might be Space::Klass::~Klass, but it was Space::~Klass, now it is simply ~Klass (names are now consistent with implicitly added constructors/destructors).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13884 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-13 22:21:51 +00:00
William S Fulton
4e8d81750d Add test added a short while back
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13883 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-13 22:20:47 +00:00
William S Fulton
aeebd394f3 Fix incorrect implicit constructor and destructor names in the symbol tables. Fix some feature matching issues for implicit destructors and implicit constructors and impliciti copy constructors added with %copyctor. Also improves consistency in named typemap lookup rules.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13882 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-13 22:19:47 +00:00
William S Fulton
d4b7275f51 Fix Swig_scopename_last. It was truncating the first two letters of a symbol if the symbol did not contain any qualifiers. Does not seem to change much currently except some generated error messages in overloaded templated methods in classes. However the fix is needed for some commits shortly forthcoming.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13881 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-13 22:18:52 +00:00
William S Fulton
b40f678115 Tweak test so it works if test-suite is run using -copyctor
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13880 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-13 22:17:55 +00:00
William S Fulton
7aa339cb3f Swig_symbol_string_qualify for destructors - bug exposed after last commit when fully qualifying destructor names during typemap searches
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13879 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-13 22:17:10 +00:00
William S Fulton
421139a5fe Fix some subtle named output typemap lookup misses, the fully qualified name was not always being in all cases such as member variables
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13878 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-13 22:16:28 +00:00
Vadim Zeitlin
0ca11c8b6f Fix overflow with parameters > LONG_MAX with Python 3.
The typemap incorrectly called PyInt_AsLong() if PyInt_Check() passed, but
this check is the same as PyLong_Check() for Python 3 and so the correct
PyLong_AsUnsignedLong() function was never called. As a consequence, passing
any value greater than LONG_MAX (e.g. 0x87654321 on 32 bit architectures) to a
function taking unsigned int, unsigned long or size_t parameter failed with an
overflow error being generated.

Fix this by simply disabling the part of the code dealing with PyInts for
Python 3 as there is no distinction between PyInt and PyLong there any more.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13877 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-09 17:57:42 +00:00
Ian Lance Taylor
ab7da898ef Define uintgo for the benefit of Go .swig files.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13876 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-31 03:41:10 +00:00
Ian Lance Taylor
786d883d45 Fix Go support for enums to work correctly when Go int type is 64 bits.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13875 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-30 23:38:57 +00:00
William S Fulton
b1ee062d2a Cosmetic variable renaming for consistency across language modules
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13874 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-27 17:38:05 +00:00
William S Fulton
f6229d4b73 Fix director typemap searching so that a typemap specified with a name will be correctly matched. Previously the name was ignored during the typemap search. Implemented by ensuring the 'type' attribute in the Node is set up correctly and using the usual Swig_typemap_lookup on the Node.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13873 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-27 17:37:34 +00:00
William S Fulton
c4e4b4b610 New director test highlighting a proble in Go
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13872 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-26 19:32:19 +00:00
William S Fulton
b17a77c6ea Support special variable expansion in %extend.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13871 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-11 19:28:02 +00:00
William S Fulton
2598a1daf2 Two additional special variable are expanded in %exception - $parentname
and $parentsymname

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13870 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-11 19:24:24 +00:00
William S Fulton
77d9ad5354 Fix multiply defined symbol in target language scope
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13869 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-11 19:22:13 +00:00
Ian Lance Taylor
6f0d565241 Add note about requiring -intgosize option for Go.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13868 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-08 18:20:08 +00:00
William S Fulton
c94418b603 Improve detection of C++11 compiler and set appropriate flags to use C++11/C++0x features
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13867 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-07 18:56:48 +00:00
William S Fulton
77ccb6f21c Modify autoconf macro to be more flexible about how it is used - sets CXX11FLAGS, HAVE_CXX11_COMPILER and option to not error out
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13866 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-07 18:50:41 +00:00
William S Fulton
81d0168e51 Autoconf archive macro to detect c++11 - as downloaded from archive
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13865 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-05 19:19:56 +00:00
Ian Lance Taylor
a42882dcee Adjust for change in the size of the Go type int. Until some time in
the future, require a -intgosize option when invoking SWIG.  Otherwise
there is no reliable way for us to know the size of int, and we need
to know.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13864 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-05 04:58:00 +00:00
William S Fulton
6a43934ece Update variadic templates
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13863 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-04 20:52:51 +00:00
William S Fulton
b9fd49858d result_of not working
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13862 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-04 20:31:40 +00:00
William S Fulton
e81b6eccdb Add lambda tests to test-suite - gcc-4.7 supports these
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13861 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-04 06:12:44 +00:00
William S Fulton
5ada4e35d1 One more lambda test using constexpr
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13860 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-04 06:05:28 +00:00
William S Fulton
35458b4a5d More lambda support - for optional lambda declarators
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13859 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-04 06:01:38 +00:00
William S Fulton
7ca8f025ad Add in support for initialising auto variables from lambda expressions
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13858 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-02 21:12:36 +00:00
Ian Lance Taylor
fad2bd5e1e Ignore templatized methods in base classes.
From Nigel Choi.
Fixes issue 3573098.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13857 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-02 14:54:28 +00:00
Ian Lance Taylor
5e30ec58e8 Adjust typemaps.i for change in handling of reference to slice.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13856 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-02 14:53:13 +00:00
William S Fulton
e68d8024f5 Lambda expressions: parse exception specification in lambda functions. Fix lambda testcase for gcc-4.7.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13854 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-01 18:53:12 +00:00
Ian Lance Taylor
8af91dcc75 If the user explicitly directs that the Go type be a slice, don't use
a pointer to a slice even if the actual type is reference.  from John
Admanski.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13853 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-01 17:18:27 +00:00
William S Fulton
4db087d81f Delegating constructors and inheriting constructors clarification and split of tests
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13852 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-25 20:22:15 +00:00
William S Fulton
070bf3cc9e gcc-4.7 now supports alias templates
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13851 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-25 19:29:13 +00:00
William S Fulton
dd18423e76 Update on C++11 user-defined literal status
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13850 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-25 19:25:14 +00:00
William S Fulton
e25da884cb Fix unrestricted unions testcase and add runtime example
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13849 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-21 19:15:44 +00:00
William S Fulton
4c2a1abd6b Minor doc tweaks for unrestricted unions
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13848 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-21 18:21:15 +00:00
William S Fulton
dbdbdd94aa Some updates to c++11 warning messages and update docs on alias templates
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13847 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-21 18:04:15 +00:00
William S Fulton
171435f989 Provide unique c++11 warnings which were previously hijacking another warning
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13846 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-21 06:37:30 +00:00
William S Fulton
e8deb880c2 Tidy up test and docs on template double brackets
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13845 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-21 05:53:44 +00:00
William S Fulton
3578be5753 Better clarify C++11 smart pointer support
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13844 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-20 19:28:20 +00:00
William S Fulton
744659345e Update c++0x tests run by default for g++-4.6
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13843 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-20 19:14:27 +00:00
William S Fulton
ecac2d2a68 Improve nullptr constant wrapping
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13842 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-20 19:09:38 +00:00
William S Fulton
6d655a7f41 Add scoped enums into correct correct scope in type system. Note that cpp0x_strongly_typed_enumerations.i still shows further language symbol table problems which need fixing.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13841 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-20 18:17:52 +00:00