- Main chnages in the new version:
- declarations for global variables
- for-loop variables are read only
- floats are printed in decimal with enough digits to be read
back correctly.
- more levels for constructors
- table.create
- utf8.offset returns also final position of character
- external strings (that use memory not managed by Lua)
- new functions luaL_openselectedlibs and luaL_makeseed
- major collections done incrementally
- more compact arrays (large arrays use about 60% less memory)
- lua.c loads 'readline' dynamically
- static (fixed) binaries (when loading a binary chunk in
memory, Lua can reuse its original memory in some of the
internal structures)
- dump and undump reuse all strings
- auxiliary buffer reuses buffer when it creates final string
- See the list of incompatibilities with previous versions on
https://www.lua.org/work/doc/manual.html#8
20 lines
662 B
Diff
20 lines
662 B
Diff
Inspect errno only after failure
|
|
|
|
---
|
|
src/lauxlib.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
Index: lua-5.5.0-beta/src/lauxlib.c
|
|
===================================================================
|
|
--- lua-5.5.0-beta.orig/src/lauxlib.c 2025-06-28 12:06:31.000000000 +0200
|
|
+++ lua-5.5.0-beta/src/lauxlib.c 2025-07-11 11:30:17.986882893 +0200
|
|
@@ -289,7 +289,7 @@
|
|
|
|
|
|
LUALIB_API int luaL_execresult (lua_State *L, int stat) {
|
|
- if (stat != 0 && errno != 0) /* error with an 'errno'? */
|
|
+ if (stat == -1) /* error with an 'errno'? */
|
|
return luaL_fileresult(L, 0, NULL);
|
|
else {
|
|
const char *what = "exit"; /* type of termination */
|