aboutsummaryrefslogtreecommitdiff
path: root/testes (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' into nextversionRoberto Ierusalimschy2023-06-224-21/+53
|\
| * Option '-l' discards version sufix from file nameRoberto Ierusalimschy2023-05-151-0/+7
| | | | | | | | | | | | Like 'require', the command-line option '-l' discards an optional version suffix (everything after an hyphen) from a file name when creating the module name.
| * Small improvements in testsRoberto Ierusalimschy2023-05-152-21/+24
| |
| * Bug: Loading a corrupted binary file can segfaultRoberto Ierusalimschy2023-03-171-0/+14
| | | | | | | | | | The size of the list of upvalue names are stored separated from the size of the list of upvalues, but they share the same array.
| * Bug: Wrong line in error message for arith. errorsRoberto Ierusalimschy2023-02-081-0/+8
| | | | | | | | | | It also causes 'L->top' to be wrong when the error happens, triggering an 'assert'.
* | Merge branch 'master' into nextversionRoberto Ierusalimschy2022-12-2826-261/+335
|\|
| * Avoid excessive name pollution in test filesRoberto Ierusalimschy2022-12-2826-261/+335
| | | | | | | | | | Test files are more polite regarding the use of globals when locals would do, and when globals are necessary deleting them after use.
* | Merge branch 'master' into nextversionRoberto Ierusalimschy2022-12-231-5/+5
|\|
| * Detail in make file for testes/libsRoberto Ierusalimschy2022-12-231-5/+5
| | | | | | | | Everything depends on the Lua version (as given by 'lua.h')
* | Changes in opcodes for generic 'for'Roberto Ierusalimschy2022-12-221-2/+2
| | | | | | | | | | Again, as the control variable is read only, the code doesn't need to keep an internal copy of it.
* | Control variables in for loops are read onlyRoberto Ierusalimschy2022-12-213-16/+15
| |
* | Towards Lua 5.5Roberto Ierusalimschy2022-12-203-5/+5
| |
* | Dump doesn't need to reuse 'source'Roberto Ierusalimschy2022-12-201-0/+25
| | | | | | | | All strings are being reused now, including 'source'.
* | New function 'luaL_openselectedlibs'Roberto Ierusalimschy2022-12-072-7/+9
| | | | | | | | Makes it easier to start Lua with only some standard libraries.
* | Tables have a 'lastfree' information only when neededRoberto Ierusalimschy2022-11-011-2/+2
|/ | | | | Only tables with some minimum number of entries in their hash part have a 'lastfree' field, kept in a header before the node vector.
* Bug: stack overflow with nesting of coroutine.closeRoberto Ierusalimschy2022-10-251-0/+26
|
* Portability issue in a test for 'string.format'Roberto Ierusalimschy2022-10-191-2/+7
|
* Negation in constant folding of '>>' may overflowRoberto Ierusalimschy2022-09-231-0/+12
|
* Small simplification in overflow check in 'getfield'Roberto Ierusalimschy2022-09-231-0/+9
| | | | | Subtracting a small non-negative int from a non-negative int cannot overflow, and adding a non-negative int to INT_MIN cannot overflow.
* Bug: 'utf8.codes' accepts spurious continuation bytesRoberto Ierusalimschy2022-09-231-1/+11
|
* New test for table rehashRoberto Ierusalimschy2022-09-161-9/+29
|
* Bug: 'break' may not properly close variable in a 'for' loopRoberto Ierusalimschy2022-08-241-0/+20
| | | | | | | Function 'leaveblock' was generating "break" label before removing variables from the closing block. If 'createlabel' created a 'close' instruction (which it did when matching a goto/break that exited the scope of an upvalue), that instruction would use the wrong level.
* Simpler handling of Byte Order Mark (BOM)Roberto Ierusalimschy2022-08-231-5/+30
|
* More checks and documentation for uses of EXTRA_STACKRoberto Ierusalimschy2022-05-261-0/+10
|
* Bug: 'lua_settop' may use an invalid pointer to stackRoberto Ierusalimschy2022-05-251-0/+22
|
* 'lua_checkstack' doesn't need to check stack overflowRoberto Ierusalimschy2022-05-231-9/+6
| | | | | | 'luaD_growstack' already checks that. This commit also fixes an internal bug in 'luaD_growstack': a large 'n' could cause an arithmetic overflow when computing 'needed'.
* Bug: Wrong code generation in bitwise operationsRoberto Ierusalimschy2022-04-251-0/+25
|
* Bug: Lua can generate wrong code when _ENV is <const>Roberto Ierusalimschy2022-02-151-0/+10
|
* Bug: finalizer calling exit can corrupt finalization orderRoberto Ierusalimschy2021-12-221-0/+28
| | | | | 'os.exit' can call lua_close again, separating new finalizers created after all previous finalizers were already separated.
* Fix debug information about finalizersRoberto Ierusalimschy2021-12-142-2/+2
| | | | | | The flag CIST_FIN does not mark a finalizer, but the function that was running when the finalizer was called. (So, the function did not call the finalizer, but it looks that way in the stack.)
* Bug: GC is not reentrantRoberto Ierusalimschy2021-12-132-5/+6
| | | | As the GC is not reentrant, finalizers should not be able to invoke it.
* Wrong assert in 'collectvalidlines'Roberto Ierusalimschy2021-11-251-1/+1
|
* Avoid OP_VARARGPREP for active linesRoberto Ierusalimschy2021-11-101-0/+43
| | | | | when building the table 'activelines' for a vararg function, this first instruction does not make the first line active.
* Bug: Wrong status in coroutine during resetRoberto Ierusalimschy2021-11-081-1/+43
| | | | | | | | | When closing variables during 'coroutine.close' or 'lua_resetthread', the status of a coroutine must be set to LUA_OK; a coroutine should not run with any other status. (See assertion in 'lua_callk'.) After the reset, the status should be kept as normal, as any error was already reported.
* Bug: C stack overflow with coroutinesRoberto Ierusalimschy2021-11-031-0/+14
| | | | | | 'coroutine.resume' did not increment counter of C calls when continuing execution after a protected error (that is, while running 'precover').
* Avoid overflows when incrementing parameters in CRoberto Ierusalimschy2021-09-222-0/+23
| | | | | | Any C function can receive maxinteger as an integer argument, and therefore cannot increment it without some care (e.g., doing unsigned arithmetic as the core does).
* Revamp of format validation in 'string.format'Roberto Ierusalimschy2021-09-031-8/+28
| | | | | When calling 'sprintf', not all conversion specifiers accept all flags; some combinations are undefined behavior.
* Detail in 'testes/math.lua'Roberto Ierusalimschy2021-08-181-0/+1
| | | | Added a print with the random seeds used in the tests of 'random'.
* Option '-l' can give a name for the global variable.Roberto Ierusalimschy2021-08-161-0/+5
| | | | Sintax for this option now is '-l [globname=]modname'.
* Added tests for string reuse by the scannerRoberto Ierusalimschy2021-08-112-1/+25
|
* Bug: luaL_tolstring may get confused with negative indexRoberto Ierusalimschy2021-07-221-0/+16
| | | | | When object has a '__name' metafield, 'luaL_tolstring' used the received index after pushing a string on the stack.
* Bug: Negation in 'luaV_shiftr' may overflowRoberto Ierusalimschy2021-07-221-0/+5
| | | | Negation of an unchecked lua_Integer overflows with mininteger.
* Bug: 'local function' can assign to '<const>' variablesRoberto Ierusalimschy2021-06-201-0/+2
|
* C functions can be tail called, tooRoberto Ierusalimschy2021-06-142-3/+3
| | | | | A tail call to a C function can have the behavior of a "real" tail call, reusing the stack frame of the caller.
* Bug: yielding in '__close' mess up number of returnsRoberto Ierusalimschy2021-04-161-0/+59
| | | | | Yielding in a __close metamethod called when returning vararg results changes the top and so messes up the number of returned values.
* Bug: tbc variables in "for" loops don't avoid tail callsRoberto Ierusalimschy2021-04-071-0/+23
|
* Changes in cache for function constantsRoberto Ierusalimschy2021-03-301-0/+14
| | | | | | | | In 'lcode.c', when adding constants to the list of constants of a function, integers represent themselves in the cache and floats with integral values get a small delta to avoid collision with integers. (This change avoids creating artificial addresses; the old implementation converted integers to pointers to index the cache.)
* Allow yields inside '__pairs'Roberto Ierusalimschy2021-03-291-0/+21
|
* File 'tracegc.lua' added to 'packtests'Roberto Ierusalimschy2021-03-101-0/+1
|
* lua_settop/lua_pop closes to-be-closed variablesRoberto Ierusalimschy2021-03-091-1/+25
| | | | | | The existence of 'lua_closeslot' is no reason for lua_pop not to close to-be-closed variables too. It is too error-prone for lua_pop not to close tbc variables being popped from the stack.