Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | Removed compatibility option LUA_COMPAT_GCPARAMS | Roberto Ierusalimschy | 2023-12-22 | 2 | -16/+16 | |
| | | | | | | | | | | | | The meaning of different GC parameters changed, so there is point in supporting old values for them. The new code simply ignores the parameters when changing the GC mode, so the incompatibility is small. | |||||
* | | New option "setparms" for 'collectgarbage' | Roberto Ierusalimschy | 2023-12-22 | 2 | -6/+10 | |
| | | | | | | | | | | | | The generational mode also uses the parameters for the incremental mode in its major collections, so it should be easy to change those parameters without having to change the GC mode. | |||||
* | | Option 0 for step multiplier makes GC non-incremental | Roberto Ierusalimschy | 2023-12-20 | 1 | -2/+9 | |
| | | ||||||
* | | Removed parameter in 'collectgarbage("step")' | Roberto Ierusalimschy | 2023-12-01 | 1 | -41/+1 | |
| | | | | | | | | A call to 'collectgarbage("step")' always performs one GC basic step. | |||||
* | | Removed deprecated options in 'lua_gc' | Roberto Ierusalimschy | 2023-11-30 | 1 | -7/+2 | |
| | | | | | | | | Options 'setpause' and 'setstepmul' were deprecated in Lua 5.4. | |||||
* | | Auxiliary buffer uses external strings | Roberto Ierusalimschy | 2023-11-13 | 2 | -11/+2 | |
| | | | | | | | | | | The buffer system from the auxiliary library reuses its buffer as external memory when closing long strings. | |||||
* | | Fixed buffers save long strings as external. | Roberto Ierusalimschy | 2023-11-10 | 1 | -5/+9 | |
| | | ||||||
* | | External strings | Roberto Ierusalimschy | 2023-11-09 | 1 | -3/+23 | |
| | | | | | | | | Strings can use external buffers to store their contents. | |||||
* | | Merge branch 'master' into nextversion | Roberto Ierusalimschy | 2023-11-07 | 2 | -14/+3 | |
|\| | ||||||
| * | Bug: Recursion in 'getobjname' can stack overflow | Roberto Ierusalimschy | 2023-11-01 | 1 | -0/+3 | |
| | | | | | | | | | | | | 'getobjname' now broken in two, a basic version that handles locals, upvalues, and constants, and a full version, which uses the basic version to handle table accesses (globals and fields). | |||||
| * | Removed test for "corrupted binary dump" | Roberto Ierusalimschy | 2023-09-08 | 1 | -14/+0 | |
| | | | | | | | | | | Test is too non portable. (For instance, it does not work for different number types.) | |||||
* | | Added suport for Fixed Buffers | Roberto Ierusalimschy | 2023-09-05 | 1 | -5/+46 | |
| | | | | | | | | | | A fixed buffer keeps a binary chunk "forever", so that the program does not need to copy some of its parts when loading it. | |||||
* | | Merge branch 'master' into nextversion | Roberto Ierusalimschy | 2023-08-23 | 8 | -33/+54 | |
|\| | ||||||
| * | Bug: Wrong line number for function calls | Roberto Ierusalimschy | 2023-08-23 | 1 | -4/+4 | |
| | | ||||||
| * | More control over encoding of test files | Roberto Ierusalimschy | 2023-08-17 | 6 | -28/+49 | |
| | | | | | | | | | | The few UTF-8 test files are commented as such, and there is only one non UTF-8 test file (to test non UTF-8 sources). | |||||
| * | Details | Roberto Ierusalimschy | 2023-07-03 | 1 | -1/+1 | |
| | | ||||||
* | | Merge branch 'master' into nextversion | Roberto Ierusalimschy | 2023-06-22 | 4 | -21/+53 | |
|\| | ||||||
| * | Option '-l' discards version sufix from file name | Roberto Ierusalimschy | 2023-05-15 | 1 | -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 tests | Roberto Ierusalimschy | 2023-05-15 | 2 | -21/+24 | |
| | | ||||||
| * | Bug: Loading a corrupted binary file can segfault | Roberto Ierusalimschy | 2023-03-17 | 1 | -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. errors | Roberto Ierusalimschy | 2023-02-08 | 1 | -0/+8 | |
| | | | | | | | | | | It also causes 'L->top' to be wrong when the error happens, triggering an 'assert'. | |||||
* | | Merge branch 'master' into nextversion | Roberto Ierusalimschy | 2022-12-28 | 26 | -261/+335 | |
|\| | ||||||
| * | Avoid excessive name pollution in test files | Roberto Ierusalimschy | 2022-12-28 | 26 | -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 nextversion | Roberto Ierusalimschy | 2022-12-23 | 1 | -5/+5 | |
|\| | ||||||
| * | Detail in make file for testes/libs | Roberto Ierusalimschy | 2022-12-23 | 1 | -5/+5 | |
| | | | | | | | | Everything depends on the Lua version (as given by 'lua.h') | |||||
* | | Changes in opcodes for generic 'for' | Roberto Ierusalimschy | 2022-12-22 | 1 | -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 only | Roberto Ierusalimschy | 2022-12-21 | 3 | -16/+15 | |
| | | ||||||
* | | Towards Lua 5.5 | Roberto Ierusalimschy | 2022-12-20 | 3 | -5/+5 | |
| | | ||||||
* | | Dump doesn't need to reuse 'source' | Roberto Ierusalimschy | 2022-12-20 | 1 | -0/+25 | |
| | | | | | | | | All strings are being reused now, including 'source'. | |||||
* | | New function 'luaL_openselectedlibs' | Roberto Ierusalimschy | 2022-12-07 | 2 | -7/+9 | |
| | | | | | | | | Makes it easier to start Lua with only some standard libraries. | |||||
* | | Tables have a 'lastfree' information only when needed | Roberto Ierusalimschy | 2022-11-01 | 1 | -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.close | Roberto Ierusalimschy | 2022-10-25 | 1 | -0/+26 | |
| | ||||||
* | Portability issue in a test for 'string.format' | Roberto Ierusalimschy | 2022-10-19 | 1 | -2/+7 | |
| | ||||||
* | Negation in constant folding of '>>' may overflow | Roberto Ierusalimschy | 2022-09-23 | 1 | -0/+12 | |
| | ||||||
* | Small simplification in overflow check in 'getfield' | Roberto Ierusalimschy | 2022-09-23 | 1 | -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 bytes | Roberto Ierusalimschy | 2022-09-23 | 1 | -1/+11 | |
| | ||||||
* | New test for table rehash | Roberto Ierusalimschy | 2022-09-16 | 1 | -9/+29 | |
| | ||||||
* | Bug: 'break' may not properly close variable in a 'for' loop | Roberto Ierusalimschy | 2022-08-24 | 1 | -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 Ierusalimschy | 2022-08-23 | 1 | -5/+30 | |
| | ||||||
* | More checks and documentation for uses of EXTRA_STACK | Roberto Ierusalimschy | 2022-05-26 | 1 | -0/+10 | |
| | ||||||
* | Bug: 'lua_settop' may use an invalid pointer to stack | Roberto Ierusalimschy | 2022-05-25 | 1 | -0/+22 | |
| | ||||||
* | 'lua_checkstack' doesn't need to check stack overflow | Roberto Ierusalimschy | 2022-05-23 | 1 | -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 operations | Roberto Ierusalimschy | 2022-04-25 | 1 | -0/+25 | |
| | ||||||
* | Bug: Lua can generate wrong code when _ENV is <const> | Roberto Ierusalimschy | 2022-02-15 | 1 | -0/+10 | |
| | ||||||
* | Bug: finalizer calling exit can corrupt finalization order | Roberto Ierusalimschy | 2021-12-22 | 1 | -0/+28 | |
| | | | | | 'os.exit' can call lua_close again, separating new finalizers created after all previous finalizers were already separated. | |||||
* | Fix debug information about finalizers | Roberto Ierusalimschy | 2021-12-14 | 2 | -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 reentrant | Roberto Ierusalimschy | 2021-12-13 | 2 | -5/+6 | |
| | | | | As the GC is not reentrant, finalizers should not be able to invoke it. | |||||
* | Wrong assert in 'collectvalidlines' | Roberto Ierusalimschy | 2021-11-25 | 1 | -1/+1 | |
| | ||||||
* | Avoid OP_VARARGPREP for active lines | Roberto Ierusalimschy | 2021-11-10 | 1 | -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 reset | Roberto Ierusalimschy | 2021-11-08 | 1 | -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. |