Commit graph

2,536 commits

Author SHA1 Message Date
William S Fulton
0da97a9d3e Fix illegal C++ symbols 2014-02-28 19:19:44 +00:00
William S Fulton
f011481f2b Cosmetic tweaks to lua runtime 2014-02-28 19:15:51 +00:00
William S Fulton
58caa38616 Restore Lua C++11 rvalue reference 2014-02-28 19:15:51 +00:00
William S Fulton
1be97ed26c Merge Lua changes - branch 'class_p1' of github.com:v-for-vandal/swig into v-for-vandal-class_p1
* 'class_p1' of github.com:v-for-vandal/swig:
  Fixing registerClass. No more wrap: unnecessary attributes
  Fixed registerMethod to work like registerVariable
  Switched to Swig_name_* functions
  Return MIN_OPT_LEVEL for elua
  add nspace_extend test case
  updated documentation following comd options renaming
  Options in alphabetical order
  Members renaming
  target_name -> lua_name
  Fixing cmd options, again
  Fixing segfault
  Removed class_parent_nspace
  Fixes to module options
  Rename methods to make it clear what 'symbols table' they operate on.
  Small documenation fixes
  Updating Lua documentation
  Eliminating namespaces_hash and using symbols table instead
  Attempt to catch unreproducable bug from Travis CI build
  Small bugfixes
  Bugfixes for eLua. eLua emulation mode
  Add compatibility option for old-style inheritance
  Add support for C-style enums in C mode. And tests.
  Style fixes. Comments fixes. Fixing cmd options. etc
  Some fixes for elua
  Attempt to fix unreproducable bug (from Travis CI build)
  Fixes for examples. Wrapped keywords into guardian in keyword_rename test
  Remove some typos
  Remove some obsolete code
  Manually beautifying luarun.swg
  Code beautifier
  Valuewrapper test
  Removing obsolete debug code
  Bugfixes
  A few bugfixes
  Some class bases iteration improvements
  Fixes for elua
  Bugfixes
  Bugfixes. CMD args handling. Code cleanup
  Bugfixes
  Preparations before pull request - part 1
  More changes. Mostly to the would-be class library
  Fixing issuse with v2-compatible static function names
  Add pointer guard
  Add runtime test
  Bugfixes
  nspace.i example is working
  Initial implementation - everything compiles but might not work
2014-02-27 20:04:08 +00:00
Artem Serebriyskiy
be6723df1e Return MIN_OPT_LEVEL for elua 2014-02-23 16:30:23 +04:00
Olly Betts
2f3bf144c6 Fix assorted comment and documentation typos 2014-02-23 17:15:22 +13:00
William S Fulton
be49f5caee Another revert fragment <stdexcept> for non-UTL languages 2014-02-22 20:53:26 +00:00
William S Fulton
2feb2e6fc6 Revert fragment <stdexcept> for non-UTL languages 2014-02-22 01:11:40 +00:00
William S Fulton
ae7b34ce03 Remove duplicate header includes in director.swg 2014-02-21 19:07:35 +00:00
William S Fulton
0d9a8721f4 Move some header file includes into fragments for UTL languages 2014-02-21 19:02:14 +00:00
Curtis Dunham
fe91d6449f Remove register storage class declarations
They're unnecessary, anacronistic, deprecated in modern
standards, generally ignored, useless, and (most importantly)
clang complains about them.
2014-02-19 11:58:27 -06:00
Olly Betts
1097fc99ff [Lua] Add keyword warnings for Lua keywords and Basic Functions. 2014-02-19 23:04:40 +13:00
Olly Betts
dcf121f534 Make Lib/ocaml/swigp4.ml a non-generated file.
We used to have configure substitute values into it, but that's not been
the case for just over 3 years, since patch #3151788 was applied.
2014-02-19 22:35:45 +13:00
Artem Serebriyskiy
14452cad03 Attempt to catch unreproducable bug from Travis CI build 2014-02-19 13:34:49 +04:00
Artem Serebriyskiy
0c6263a0c2 Small bugfixes 2014-02-19 13:34:49 +04:00
Artem Serebriyskiy
705beb6753 Bugfixes for eLua. eLua emulation mode 2014-02-19 13:34:49 +04:00
Artem Serebriyskiy
0ee724ca80 Add compatibility option for old-style inheritance 2014-02-19 13:34:49 +04:00
Artem Serebriyskiy
4b0ed73317 Style fixes. Comments fixes. Fixing cmd options. etc 2014-02-19 13:34:49 +04:00
Artem Serebriyskiy
ce2760f77e Fixes for examples. Wrapped keywords into guardian in keyword_rename test 2014-02-19 13:34:49 +04:00
Artem Serebriyskiy
02c4a8e39c Remove some obsolete code 2014-02-19 13:34:49 +04:00
Artem Serebriyskiy
eb7c0f011b Manually beautifying luarun.swg 2014-02-19 13:34:49 +04:00
Artem Serebriyskiy
f1fb2cc295 Bugfixes 2014-02-19 13:34:48 +04:00
Artem Serebriyskiy
dcbcac42b7 A few bugfixes 2014-02-19 13:34:48 +04:00
Artem Serebriyskiy
afd269f9b6 Some class bases iteration improvements 2014-02-19 13:34:48 +04:00
Artem Serebriyskiy
c775e66048 Fixes for elua 2014-02-19 13:34:48 +04:00
Artem Serebriyskiy
9d6cd75c73 Bugfixes 2014-02-19 13:34:48 +04:00
Artem Serebriyskiy
da0510376c Bugfixes. CMD args handling. Code cleanup 2014-02-19 13:34:48 +04:00
Artem Serebriyskiy
aa1b8298ca Preparations before pull request - part 1 2014-02-19 13:34:48 +04:00
Artem Serebriyskiy
63a26c6dbe More changes. Mostly to the would-be class library 2014-02-19 13:34:48 +04:00
Artem Serebriyskiy
295788c8a0 nspace.i example is working 2014-02-19 13:34:47 +04:00
Artem Serebriyskiy
1c5a0f8b9c Initial implementation - everything compiles but might not work 2014-02-19 13:34:47 +04:00
Olly Betts
5b957278a8 -Wallkw now includes keywords for all languages with keyword
warnings (previously Go and R were missing).
2014-02-19 22:07:26 +13:00
Olly Betts
06e5a5fb0d [PHP] Update the lists of PHP keywords with new ones from PHP 5.4
and newer (and some missing ones from 5.3).  Reserved PHP constants
names are now checked against enum values and constants, instead
of against function and method names.  Built-in PHP function names
no longer match methods added by %extend.  Functions and methods
named '__sleep', '__wakeup', 'not', 'parent', or 'virtual' are no
longer needlessly renamed.
2014-02-19 17:21:34 +13:00
Olly Betts
36c22b70bd Make PHP %keywordwarn message wording consistent with other languages 2014-02-19 16:51:31 +13:00
Olly Betts
f8a028517d Fix comment typos 2014-02-19 16:41:34 +13:00
William S Fulton
c5911cc08d Add %$isextendmember for %rename of members added via %extend 2014-02-18 23:21:46 +00:00
Olly Betts
fcf8180751 Whitespace tweaks 2014-02-17 16:27:39 +13:00
Olly Betts
b761131fec "if (strlen(msg))" -> "if (msg[0])" 2014-02-17 16:26:48 +13:00
Olly Betts
7af8b13ef7 Just call strcmp() rather than strlen() twice plus zend_binary_strcmp() 2014-02-17 16:25:29 +13:00
Olly Betts
052d0057c2 Only call strlen(lc_fname) if we are going to use the result 2014-02-17 16:24:04 +13:00
William S Fulton
fb7eb2bedf Merge branch 'master' of github.com:hfalcic/swig into hfalcic-python3-seg-fault
* 'master' of github.com:hfalcic/swig:
  Fix shadow instance creation failure in Python 3
2014-02-16 17:54:28 +00:00
William S Fulton
bd5c340062 Add <string> fragment
Removes <string> include specifically for clang
Cuts down on duplicate #include <string> in general
2014-02-15 23:30:14 +00:00
William S Fulton
078dbf8d22 Merge branch 'clang_fixes' of github.com:marvingreenberg/swig into marvingreenberg-clang_fixes 2014-02-15 22:37:40 +00:00
William S Fulton
90a9d750c9 Add support for cdata library for Java 2014-02-15 22:13:50 +00:00
William S Fulton
4ba4a02e93 Fix unused method warning in Octave 2014-02-15 18:36:01 +00:00
Harvey Falcic
c063bb8384 Fix shadow instance creation failure in Python 3
I managed to trace a very nasty Python interpreter segfault to an
allocation failure here. Adding this after the tp_new call:
if (PyErr_Occurred()) {
    PyErr_Print();
}

results in output of 'TypeError: object() takes no parameters', followed
by a segfault that takes down the Python interpeter.

The 'object' constructor doesn't seem to be suitable for instantiating
SWIG shadow instances in this way, so simply use the constructor
function in the PyTypeObject 'tp_new' slot of data->newargs.

The 'if (inst)' check after this doesn't hurt in as much as it prevented
a segfault immediately after this failed allocation, but it doesn't help
much since the null pointer dereference will probably happen sooner or
later anyway.
2014-02-14 19:19:09 -05:00
William S Fulton
09bdc5f353 Merge branch 'master' of https://github.com/gjanssens/swig into gjanssens-master
* 'master' of https://github.com/gjanssens/swig:
  Guile: make scm to string conversion work with non-ascii strings
  Guile: illustrate bug in non-ascii string handling
2014-02-06 19:58:09 +00:00
Geert Janssens
c6d03a6a9f Guile: make scm to string conversion work with non-ascii strings 2014-02-05 12:17:16 +01:00
Marvin Greenberg
843aa7cd65 Work around differences in clang libc++ std::vector<bool>::const_reference
clang++ using -stdlib=libc++ defines const_reference as a class,
to map boolean vectors onto a bit set.  Because swig does
not "see" the type as "const &" it generates incorrect code for this case,
generating a declaration like:

  const_reference result;

When const_reference is a typedef to 'bool' as is the case with stdlibc++
this works.  When this is actually a constant reference, this is clearly
invalid since it is not initialized.  For libc++, this is a class
which cannot be default constructed, resulting in an error.  The fix
is to explicitly define the various accessor extensions as having a
bool return type for this specialization.
2014-02-04 16:00:12 -05:00
Marvin Greenberg
213774e0b6 Fix issue on clang about implicit instantiation of undefined template
Generated code does not include <string>, which is referenced in templates.
Clang may be incorrectly or aggresively instantiating some template.

E.g.,
import_stl_b_wrap.cxx:3199:51: error: implicit instantiation of undefined template 'std::__1::basic_string<char, std::__1::char_traits<char>
2014-02-04 11:55:36 -05:00