Feature #1821 ยป 0039-lua-5.5-Update-to-lua-5.5.0-rc4.patch
| dependencies/lua-5.5/Makefile.am | ||
|---|---|---|
|
freeciv_lua.patch \
|
||
|
doc/readme.html \
|
||
|
doc/logo.png \
|
||
|
doc/OSIApproved_100X125.png
|
||
|
doc/OSIApproved.png
|
||
| dependencies/lua-5.5/README | ||
|---|---|---|
|
This is Lua 5.5.0, released on 08 Dec 2025.
|
||
|
This is Lua 5.5.0, released on 15 Dec 2025.
|
||
|
For installation instructions, license details, and
|
||
|
further information about Lua, see doc/readme.html.
|
||
| dependencies/lua-5.5/Version.txt | ||
|---|---|---|
|
Sources here are from lua-5.5.0-rc3
|
||
|
(http://www.lua.org/ftp/lua-5.5.0-rc3.tar.gz)
|
||
|
Sources here are from lua-5.5.0-rc4
|
||
|
(http://www.lua.org/ftp/lua-5.5.0-rc4.tar.gz)
|
||
|
Upstream bug fixes from https://www.lua.org/bugs.html applied:
|
||
| dependencies/lua-5.5/doc/readme.html | ||
|---|---|---|
|
<H2><A NAME="license">License</A></H2>
|
||
|
<P>
|
||
|
<A HREF="https://opensource.org/osd">
|
||
|
<IMG SRC="OSIApproved_100X125.png" ALIGN="right" ALT="[Open Source Initiative Approved License]" STYLE="padding-left: 1em" WIDTH=50>
|
||
|
<IMG SRC="OSIApproved.png" ALIGN="right" ALT="[Open Source Initiative Approved License]" STYLE="padding-left: 1em" WIDTH=50>
|
||
|
</A>
|
||
|
Lua is free software distributed under the terms of the
|
||
|
<A HREF="https://opensource.org/license/mit">MIT license</A>
|
||
| ... | ... | |
|
<P CLASS="footer">
|
||
|
Last update:
|
||
|
Mon Dec 8 14:14:37 UTC 2025
|
||
|
Wed Dec 10 11:37:23 UTC 2025
|
||
|
</P>
|
||
|
<!--
|
||
|
Last change: revised for Lua 5.5.0
|
||
| dependencies/lua-5.5/src/lauxlib.c | ||
|---|---|---|
|
lua_State *L = lua_newstate(luaL_alloc, NULL, luaL_makeseed(NULL));
|
||
|
if (l_likely(L)) {
|
||
|
lua_atpanic(L, &panic);
|
||
|
lua_setwarnf(L, warnfoff, L); /* default is warnings off */
|
||
|
lua_setwarnf(L, warnfon, L);
|
||
|
}
|
||
|
return L;
|
||
|
}
|
||
| dependencies/lua-5.5/src/ldo.c | ||
|---|---|---|
|
}
|
||
|
/*
|
||
|
** Check whether stack has enough space to run a simple function (such
|
||
|
** as a finalizer): At least BASIC_STACK_SIZE in the Lua stack and
|
||
|
** 2 slots in the C stack.
|
||
|
*/
|
||
|
int luaD_checkminstack (lua_State *L) {
|
||
|
return ((stacksize(L) < MAXSTACK - BASIC_STACK_SIZE) &&
|
||
|
(getCcalls(L) < LUAI_MAXCCALLS - 2));
|
||
|
}
|
||
|
/*
|
||
|
** In ISO C, any pointer use after the pointer has been deallocated is
|
||
|
** undefined behavior. So, before a stack reallocation, all pointers
|
||
| dependencies/lua-5.5/src/ldo.h | ||
|---|---|---|
|
LUAI_FUNC int luaD_growstack (lua_State *L, int n, int raiseerror);
|
||
|
LUAI_FUNC void luaD_shrinkstack (lua_State *L);
|
||
|
LUAI_FUNC void luaD_inctop (lua_State *L);
|
||
|
LUAI_FUNC int luaD_checkminstack (lua_State *L);
|
||
|
LUAI_FUNC l_noret luaD_throw (lua_State *L, TStatus errcode);
|
||
|
LUAI_FUNC l_noret luaD_throwbaselevel (lua_State *L, TStatus errcode);
|
||
| dependencies/lua-5.5/src/lgc.c | ||
|---|---|---|
|
correctgraylists(g);
|
||
|
checkSizes(L, g);
|
||
|
g->gcstate = GCSpropagate; /* skip restart */
|
||
|
if (!g->gcemergency)
|
||
|
if (!g->gcemergency && luaD_checkminstack(L))
|
||
|
callallpendingfinalizers(L);
|
||
|
}
|
||
| ... | ... | |
|
break;
|
||
|
}
|
||
|
case GCScallfin: { /* call finalizers */
|
||
|
if (g->tobefnz && !g->gcemergency) {
|
||
|
if (g->tobefnz && !g->gcemergency && luaD_checkminstack(L)) {
|
||
|
g->gcstopem = 0; /* ok collections during finalizers */
|
||
|
GCTM(L); /* call one finalizer */
|
||
|
stepresult = CWUFIN;
|
||
|
}
|
||
|
else { /* emergency mode or no more finalizers */
|
||
|
else { /* no more finalizers or emergency mode or no enough stack
|
||
|
to run finalizers */
|
||
|
g->gcstate = GCSpause; /* finish collection */
|
||
|
stepresult = step2pause;
|
||
|
}
|
||