Commit Graph

4672 Commits

Author SHA1 Message Date
Roberto Ierusalimschy 94c1b3a8ee Handling of LUA_PATH/LUA_CPATH moved back to 'package' library
to avoid incompatibilites with previous releases
2017-01-12 15:14:26 -02:00
Roberto Ierusalimschy 08199ade4a release 5.3.4 (year 2017) 2016-12-22 13:51:20 -02:00
Roberto Ierusalimschy 2a235312f0 detail (removing spaces at end of lines) 2016-12-22 11:08:50 -02:00
Roberto Ierusalimschy 9903dd52a3 Using LUAI_UAC* types more consistently on vararg calls 2016-12-20 16:37:00 -02:00
Roberto Ierusalimschy 24f6e236a3 'moveresults' and 'luaD_poscall' moved up in the file 2016-12-13 13:52:21 -02:00
Roberto Ierusalimschy 9f594ca6f5 LUA_PATHSUFFIX -> LUA_VERSUFFIX + LUA_VERSUFFIX used in the
definition of LUA_INITVARVERSION, too.
2016-12-13 13:50:58 -02:00
Roberto Ierusalimschy 4df4560bf5 detail (wrong comment) 2016-12-06 12:54:31 -02:00
Roberto Ierusalimschy b2aa2ba046 using constants for "_LOADED" and "PRELOAD" 2016-12-04 18:17:24 -02:00
Roberto Ierusalimschy beec5af201 'luaL_tolstring' uses metatable's "__name" when available 2016-12-04 18:09:45 -02:00
Roberto Ierusalimschy 7b1fba69b7 using 'lastfree == NULL' to signal that table is using the dummy
node for its hash part + new macro 'allocsizenode'
2016-11-07 10:38:35 -02:00
Roberto Ierusalimschy 697593d8d5 bug: When a coroutine tries to resume a non-suspended coroutine,
it can do some mess (and break C assertions) before detecting the error.
2016-10-19 10:34:27 -02:00
Roberto Ierusalimschy e2dc807c6e check whether function is finalizer when finding a name for it +
comments + some instructions can call functions in unespected ways
(e.g., finalizers)
2016-10-19 10:32:10 -02:00
Roberto Ierusalimschy 138d00176c new flag in 'CallInfo.callstatus' to tell whether function is running
as a finalizer
2016-10-19 10:31:42 -02:00
Roberto Ierusalimschy 8edbf57fb8 detail (ANSI C does not accept empty arguments to macros) 2016-09-20 13:37:45 -03:00
Roberto Ierusalimschy 7fe1a4cff3 cleaner and more correct code for 'luaD_shrinkstack' (the old
test "inuse <= LUAI_MAXSTACK" for stack overflow is not correct,
as the real maximum usable size is "LUAI_MAXSTACK - EXTRA_STACK")
2016-09-08 13:36:26 -03:00
Roberto Ierusalimschy dbb6f11e8e bug (with compat on): 'ipairs' can work with any type that provides
an __index; so, 'pairsmeta' should not check for tables. ('pairs'
already checks for tables through 'next'.)
2016-09-05 16:06:34 -03:00
Roberto Ierusalimschy aeb4c6fff1 comments + removed unused variable 2016-09-05 15:53:02 -03:00
Roberto Ierusalimschy 3b91b07fd9 detail (macro 'l_checkmode' reimplemented as function) 2016-09-01 13:14:56 -03:00
Roberto Ierusalimschy 349badabc1 wrong test in '#if' for floating-point type 2016-08-22 14:21:12 -03:00
Roberto Ierusalimschy e4a9e6fcca do not eliminate varargs from functions that do not use varargs
(confuses the debug lib and gains very little in performance)
2016-08-01 16:51:24 -03:00
Roberto Ierusalimschy 9de2bb0d62 bug: When a coroutine tries to resume a non-suspended coroutine,
it coud do some mess (and break C assertions) before detecting the error.
Now it tests for those errors before anything else.
2016-07-29 14:12:44 -03:00
Roberto Ierusalimschy d55fd3455b redefine MAXINDEXRK (for debugging, to force most values to
go through registers)
2016-07-19 14:13:00 -03:00
Roberto Ierusalimschy 0d1c6f4188 MAXINDEXRK can be redefined (for debugging, to force most values to
go through registers)
2016-07-19 14:12:21 -03:00
Roberto Ierusalimschy fc6b32bcaa bug: Lua can generate wrong code in functions with too many constants 2016-07-19 14:12:07 -03:00
Roberto Ierusalimschy de96e26afc bug: 'checkoption' could read past end of string + 'os.date' can
handle embedded zeros
2016-07-18 14:58:58 -03:00
Roberto Ierusalimschy de3fd8ab83 Handling of LUA_PATH/LUA_CPATH moved from package library to stand
alone interpreter (so that 'lua.c' concentrates all handling of
environment variables)
2016-07-18 14:55:59 -03:00
Roberto Ierusalimschy 788109a3de new bug: Checking a format for 'os.date' may read pass the format string 2016-07-15 14:24:09 -03:00
Roberto Ierusalimschy 09c9fa36ea small corrections for C++ compliance 2016-06-27 10:15:08 -03:00
Roberto Ierusalimschy dcb2998aa6 bug: expression list with four or more expressions in
a 'for' loop can crash the interpreter. ('adjust_assign' must
remove extra expresssions from its registers.)
2016-06-22 12:48:25 -03:00
Roberto Ierusalimschy fac00ca023 bug: expression list with four or more expressions in
a 'for' loop can crash the interpreter.
2016-06-21 14:22:34 -03:00
Roberto Ierusalimschy 6487fb11fc all 'static' variables should be 'const' 2016-06-20 16:12:46 -03:00
Roberto Ierusalimschy 644799537f allow more bits in 'callstatus' (use no extra space due to alignments) 2016-06-16 10:36:09 -03:00
Roberto Ierusalimschy aa66ca76ce 'lua_pushglobaltable' returns 'void' 2016-05-30 12:53:28 -03:00
Roberto Ierusalimschy 707b0ba6e2 'string.format("%q")' writes 'math.mininteger' in hexa, to ensure
it is read back as an integer
2016-05-20 11:13:21 -03:00
Roberto Ierusalimschy 10b0b09555 do not convert decimal constants with overflow to integers.
(Therefore, they will be converted as floats)
2016-05-20 11:07:48 -03:00
Roberto Ierusalimschy 4d5ab9baa6 'string.pack("cn")' does not accept strings longer than 'n' 2016-05-18 15:19:51 -03:00
Roberto Ierusalimschy b65252b39b 'singlevaraux' returns result only in 'var->k' 2016-05-13 16:10:16 -03:00
Roberto Ierusalimschy fbd8614bdb comment (FALLTHROUGH) 2016-05-13 16:09:46 -03:00
Roberto Ierusalimschy f3b52a6061 'io.read("n")' accepts both a dot and the locale point as its
radix character + 'MAXRN' -> 'L_MAXLENNUM' + small detail in
'test2'
2016-05-02 11:03:19 -03:00
Roberto Ierusalimschy 0232fbffbe now that 'luaO_str2num' always accepts a dot as a radix character,
the lexer does not need to bother with this issue.
2016-05-02 11:02:12 -03:00
Roberto Ierusalimschy ed110f66c5 'luaO_str2num' (and, therefore, 'lua_stringtonumber', 'number',
and coercions) accepts both the locale point and a dot as its
radix character
2016-05-02 11:00:32 -03:00
Roberto Ierusalimschy 22093f9c6e 'string.format("%q", number)' ensures a dot as decimal point 2016-05-02 10:58:01 -03:00
Roberto Ierusalimschy 792ffaccf2 detail (macro should "use" all its arguments) 2016-05-01 17:06:09 -03:00
Roberto Ierusalimschy 57cdb60429 no more time limits to pattern matching (at least for now) 2016-04-22 13:36:30 -03:00
Roberto Ierusalimschy 89c09c8e40 match time limit defined by variable 'string.pattlimit' 2016-04-19 09:34:08 -03:00
Roberto Ierusalimschy 48baa5e89c 'os.time(t)' normalizes 't' fields 2016-04-18 10:06:55 -03:00
Roberto Ierusalimschy fdd7209688 error handling in 'wrap' does not coerce numbers into string messages 2016-04-11 16:19:55 -03:00
Roberto Ierusalimschy 82a8e06524 details ('error' does not coerce numbers to strings + comments) 2016-04-11 16:18:40 -03:00
Roberto Ierusalimschy c258870c59 diff for last bug was against wrong version 2016-04-11 12:34:21 -03:00
Roberto Ierusalimschy e8e39a277f 'string.format"%q"' now works for all basic types (nil, boolean,
numbers, and strings)
2016-04-08 18:15:02 -03:00