Commit graph

80 commits

Author SHA1 Message Date
Nils Gladitz
ca208cfe35 lua: push characters as unformatted 1-character strings
Since Lua 5.3 the "%c" format character in lua_pushfstring will produce
the string "<\XXX>" (XXX being a decimal code sequence) when
given unprintable characters.

Use lua_pushlstring instead to reproduce the old behavior.
2015-07-01 12:24:12 +02:00
Alexander Warg
ece1009c5d lua: push integer constants as integer
This allows better compatibility with Lua 5.3. Otherwise function
overloading assuming integer parameters might not work.
2015-04-28 17:09:57 +02:00
Thomas Trocha
4e7af7db80 [lua/luarun] change return type from int to void on functions not returning anything
Using emscripten compiler to crosscompile to javascript lead to "traps" on this functions which results in a crash
2015-01-11 15:34:07 +01:00
Artem Serebriyskiy
4457d96e54 Moving variable declaration to the beginning of the block 2014-05-28 22:02:47 +04:00
Artem Serebriyskiy
2b4c49d017 Add default __eq implementation
* Renamed SWIG_Lua_equal to SWIG_Lua_class_equal
* If class has no __eq implemented, then default __eq is provided.
  Default __eq compares actual pointers stored inside Lua userdata
2014-05-28 22:01:23 +04:00
Olly Betts
703862dc3a Fix unused variable warning in Lua bindings 2014-05-28 23:04:06 +12:00
William S Fulton
10cbd2781f Refactor Lua class base search to make ISO c/c++ compliant 2014-05-24 14:13:24 +01:00
William S Fulton
3191473523 Fix compiler warnings in generated code when using -std=c++98 -std=gnu89 -pedantic -Wreturn-type 2014-05-24 14:13:19 +01:00
Olly Betts
1a0b8abec7 Fix comment typo 2014-05-24 11:11:51 +12:00
Olly Betts
8d3902a666 Work towards C90 compatibility for Lua 2014-05-24 11:10:57 +12:00
Olly Betts
95f09b49d2 Don't use // comments in C code. 2014-05-18 20:38:43 +12:00
William S Fulton
80953ccfc9 Fix some typos 2014-05-01 18:49:42 +01:00
Olly Betts
4c86f17bcb Merge pull request #159 from v-for-vandal/issue_154
Fixing issue 154
2014-04-29 11:19:58 +12:00
Artem Serebriyskiy
c1ca144ed2 Fixed errors from previous commit.
Also in previous commit also fixed warning with unsigned vs signed
comparison
2014-04-23 01:48:10 +04:00
Artem Serebriyskiy
5506c7f624 Removed all unnecessary asserts 2014-04-23 01:37:14 +04:00
Artem Serebriyskiy
d120c05fcc Optimize metamethods inheritance resolving
* a table of metamethods that should be inherited is now stored in
  SWIG registry table. It optimizes memory usage.
2014-04-22 14:31:41 +04:00
Artem Serebriyskiy
8512bad8c2 Fixing unused variable warnings
* Fixing unused variable warning. Generated code should compile
  with -Wall -Werror flags

* Fixing forgotten __Module -> SwigModule renaming
2014-04-16 03:37:27 +04:00
Artem Serebriyskiy
7c8405368e Finish implementation with proxy functions 2014-04-15 03:38:45 +04:00
Olly Betts
90e6d6c012 Fix comment typo 2014-04-02 23:45:58 +13:00
Olly Betts
72305ceec8 Fix compiler warnings in generated Lua code 2014-04-02 23:44:35 +13:00
Artem Serebriyskiy
f2c410a8c0 Fixing issue 152 2014-03-23 14:05:05 +04:00
William S Fulton
9c1bd797b9 Fix missing return statements in Lua code 2014-03-14 23:58:15 +00:00
Artem Serebriyskiy
1da65de2b7 Removing all TODO:REMOVE 2014-03-03 11:29:04 +04:00
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
Artem Serebriyskiy
be6723df1e Return MIN_OPT_LEVEL for elua 2014-02-23 16:30:23 +04: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
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
Atri
1a7f731d60 Lua: Fix void return for non-void functions
Commit #c3f3880d caused the functions
SWIGINTERN int SWIG_Lua_add_namespace_details(lua_State* L,
swig_lua_namespace* ns)
and
SWIGINTERN int SWIG_Lua_namespace_register(lua_State* L,
swig_lua_namespace* ns)
to return void when int returns were expected resulting in the build
failures for plplot's lua bindings for example. This commit fixes the
issue.

Closes #92
2013-10-12 17:51:49 +01:00
Artem Serebriyskiy
c3f3880d0c Lua static member access improvements.
1) Static members and static functions inside class can be accessed as ModuleName.ClassName.FunctionName (MemberName respectively). Old way aka ModuleName.ClassName_FunctionName still works.
2) Same goes for enums inside classes: ModuleName.ClassName.EnumValue1 etc.
3) More 'runme' tests for lua + modifications to existing tests to test new changes.

Code is loosely based upon python implemenation of the same thing.

Patch #62.
2013-09-12 21:32:26 +01:00
Miles Bader
c746ae7a0f Include Lua error locus in SWIG error messages
This is standard information in Lua error messages, and makes it much
easier to find bugs.
2013-08-30 06:56:33 +01:00
Miles Bader
663c41e248 Add Lua runtime helper functions for error-handling
Add two helper functions to the Lua runtime, "SWIG_Lua_pusherrstring"
and "SWIG_Lua_pushferrstring".

These are like the standard Lua functions lua_pushstring and
lua_pushfstring respectively, except that the strings are prefixed
with the location of the innermost Lua call-point (as generated by
luaL_where).
2013-08-30 06:56:33 +01:00
Olly Betts
5b2f38101f Fix comment typos in Lua typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13132 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-05-28 18:32:24 +00:00
William S Fulton
49b6c39d98 Lua fix for -external-runtime
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13119 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-05-24 23:05:07 +00:00
William S Fulton
ac688f9ccb Apply patch #3517435 from Miles Bader - prefer to use Lua_pushglobaltable
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12985 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-04-14 20:37:39 +00:00