Lua diffu-lua-5.5.0-rc2-rc3


README

@@ -1,5 +1,5 @@
 
-This is Lua 5.5.0, released on 01 Dec 2025.
+This is Lua 5.5.0, released on 08 Dec 2025.
 
 For installation instructions, license details, and
 further information about Lua, see doc/readme.html.

doc/contents.html

@@ -10,7 +10,7 @@
 <BODY>
 
 <H1>
-<A HREF="https://www.lua.org/"><IMG SRC="logo.gif" ALT="Lua"></A>
+<A HREF="https://www.lua.org/"><IMG SRC="logo.png" ALT="Lua"></A>
 Lua 5.5 Reference Manual
 </H1>
 

@@ -597,18 +597,8 @@
 <A HREF="manual.html#luaL_unref">luaL_unref</A><BR>
 <A HREF="manual.html#luaL_where">luaL_where</A><BR>
 
-<H3><A NAME="library">standard library</A></H3>
 <P>
-<A HREF="manual.html#pdf-luaopen_base">luaopen_base</A><BR>
-<A HREF="manual.html#pdf-luaopen_coroutine">luaopen_coroutine</A><BR>
-<A HREF="manual.html#pdf-luaopen_debug">luaopen_debug</A><BR>
-<A HREF="manual.html#pdf-luaopen_io">luaopen_io</A><BR>
-<A HREF="manual.html#pdf-luaopen_math">luaopen_math</A><BR>
-<A HREF="manual.html#pdf-luaopen_os">luaopen_os</A><BR>
-<A HREF="manual.html#pdf-luaopen_package">luaopen_package</A><BR>
-<A HREF="manual.html#pdf-luaopen_string">luaopen_string</A><BR>
-<A HREF="manual.html#pdf-luaopen_table">luaopen_table</A><BR>
-<A HREF="manual.html#pdf-luaopen_utf8">luaopen_utf8</A><BR>
+<A HREF="manual.html#pdf-LUAL_BUFFERSIZE">LUAL_BUFFERSIZE</A><BR>
 
 <H3><A NAME="constants">constants</A></H3>
 <P>

@@ -617,6 +607,22 @@
 <A HREF="manual.html#pdf-LUA_ERRMEM">LUA_ERRMEM</A><BR>
 <A HREF="manual.html#pdf-LUA_ERRRUN">LUA_ERRRUN</A><BR>
 <A HREF="manual.html#pdf-LUA_ERRSYNTAX">LUA_ERRSYNTAX</A><BR>
+<A HREF="manual.html#pdf-LUA_GCCOLLECT">LUA_GCCOLLECT</A><BR>
+<A HREF="manual.html#pdf-LUA_GCCOUNT">LUA_GCCOUNT</A><BR>
+<A HREF="manual.html#pdf-LUA_GCCOUNTB">LUA_GCCOUNTB</A><BR>
+<A HREF="manual.html#pdf-LUA_GCGEN">LUA_GCGEN</A><BR>
+<A HREF="manual.html#pdf-LUA_GCINC">LUA_GCINC</A><BR>
+<A HREF="manual.html#pdf-LUA_GCISRUNNING">LUA_GCISRUNNING</A><BR>
+<A HREF="manual.html#pdf-LUA_GCPARAM">LUA_GCPARAM</A><BR>
+<A HREF="manual.html#pdf-LUA_GCPMAJORMINOR">LUA_GCPMAJORMINOR</A><BR>
+<A HREF="manual.html#pdf-LUA_GCPMINORMAJOR">LUA_GCPMINORMAJOR</A><BR>
+<A HREF="manual.html#pdf-LUA_GCPMINORMUL">LUA_GCPMINORMUL</A><BR>
+<A HREF="manual.html#pdf-LUA_GCPPAUSE">LUA_GCPPAUSE</A><BR>
+<A HREF="manual.html#pdf-LUA_GCPSTEPMUL">LUA_GCPSTEPMUL</A><BR>
+<A HREF="manual.html#pdf-LUA_GCPSTEPSIZE">LUA_GCPSTEPSIZE</A><BR>
+<A HREF="manual.html#pdf-LUA_GCRESTART">LUA_GCRESTART</A><BR>
+<A HREF="manual.html#pdf-LUA_GCSTEP">LUA_GCSTEP</A><BR>
+<A HREF="manual.html#pdf-LUA_GCSTOP">LUA_GCSTOP</A><BR>
 <A HREF="manual.html#pdf-LUA_HOOKCALL">LUA_HOOKCALL</A><BR>
 <A HREF="manual.html#pdf-LUA_HOOKCOUNT">LUA_HOOKCOUNT</A><BR>
 <A HREF="manual.html#pdf-LUA_HOOKLINE">LUA_HOOKLINE</A><BR>

@@ -631,6 +637,7 @@
 <A HREF="manual.html#pdf-LUA_MININTEGER">LUA_MININTEGER</A><BR>
 <A HREF="manual.html#pdf-LUA_MINSTACK">LUA_MINSTACK</A><BR>
 <A HREF="manual.html#pdf-LUA_MULTRET">LUA_MULTRET</A><BR>
+<A HREF="manual.html#pdf-LUA_N2SBUFFSZ">LUA_N2SBUFFSZ</A><BR>
 <A HREF="manual.html#pdf-LUA_NOREF">LUA_NOREF</A><BR>
 <A HREF="manual.html#pdf-LUA_OK">LUA_OK</A><BR>
 <A HREF="manual.html#pdf-LUA_OPADD">LUA_OPADD</A><BR>

@@ -667,7 +674,30 @@
 <A HREF="manual.html#pdf-LUA_TUSERDATA">LUA_TUSERDATA</A><BR>
 <A HREF="manual.html#pdf-LUA_USE_APICHECK">LUA_USE_APICHECK</A><BR>
 <A HREF="manual.html#pdf-LUA_YIELD">LUA_YIELD</A><BR>
-<A HREF="manual.html#pdf-LUAL_BUFFERSIZE">LUAL_BUFFERSIZE</A><BR>
+
+<H3><A NAME="library">standard library</A></H3>
+<P>
+<A HREF="manual.html#pdf-LUA_COLIBK">LUA_COLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_DBLIBK">LUA_DBLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_GLIBK">LUA_GLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_IOLIBK">LUA_IOLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_LOADLIBK">LUA_LOADLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_MATHLIBK">LUA_MATHLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_OSLIBK">LUA_OSLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_STRLIBK">LUA_STRLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_TABLIBK">LUA_TABLIBK</A><BR>
+<A HREF="manual.html#pdf-LUA_UTF8LIBK">LUA_UTF8LIBK</A><BR>
+
+<P>
+<A HREF="manual.html#pdf-LUA_COLIBNAME">LUA_COLIBNAME</A><BR>
+<A HREF="manual.html#pdf-LUA_DBLIBNAME">LUA_DBLIBNAME</A><BR>
+<A HREF="manual.html#pdf-LUA_IOLIBNAME">LUA_IOLIBNAME</A><BR>
+<A HREF="manual.html#pdf-LUA_LOADLIBNAME">LUA_LOADLIBNAME</A><BR>
+<A HREF="manual.html#pdf-LUA_MATHLIBNAME">LUA_MATHLIBNAME</A><BR>
+<A HREF="manual.html#pdf-LUA_OSLIBNAME">LUA_OSLIBNAME</A><BR>
+<A HREF="manual.html#pdf-LUA_STRLIBNAME">LUA_STRLIBNAME</A><BR>
+<A HREF="manual.html#pdf-LUA_TABLIBNAME">LUA_TABLIBNAME</A><BR>
+<A HREF="manual.html#pdf-LUA_UTF8LIBNAME">LUA_UTF8LIBNAME</A><BR>
 
 </TD>
 </TR>

@@ -675,7 +705,7 @@
 
 <P CLASS="footer">
 Last update:
-Mon Dec  1 13:57:23 UTC 2025
+Thu Dec  4 17:32:26 UTC 2025
 </P>
 <!--
 Last change: revised for Lua 5.5.0
Binary files lua-5.5.0-rc2/doc/logo.gif and lua-5.5.0-rc3/doc/logo.gif differ
Binary files lua-5.5.0-rc2/doc/logo.png and lua-5.5.0-rc3/doc/logo.png differ

doc/manual.html

@@ -10,7 +10,7 @@
 <BODY>
 
 <H1>
-<A HREF="https://www.lua.org/"><IMG SRC="logo.gif" ALT="Lua"></A>
+<A HREF="https://www.lua.org/"><IMG SRC="logo.png" ALT="Lua"></A>
 Lua 5.5 Reference Manual
 </H1>
 

@@ -12499,7 +12499,7 @@
 
 <P CLASS="footer">
 Last update:
-Mon Dec  1 13:38:36 UTC 2025
+Mon Dec  8 17:34:06 UTC 2025
 </P>
 <!--
 Last change: revised for Lua 5.5.0

doc/readme.html

@@ -29,7 +29,7 @@
 <BODY>
 
 <H1>
-<A HREF="https://www.lua.org/"><IMG SRC="logo.gif" ALT="Lua"></A>
+<A HREF="https://www.lua.org/"><IMG SRC="logo.png" ALT="Lua"></A>
 Welcome to Lua 5.5
 </H1>
 

@@ -270,7 +270,7 @@
 <LI> utf8.offset returns also final position of character
 <LI> external strings (that use memory not managed by Lua)
 <LI> new functions luaL_openselectedlibs and luaL_makeseed
-<LI> major collections done incrementally
+<LI> major garbage collections done incrementally
 <LI> more compact arrays (large arrays use about 60% less memory)
 <LI> lua.c loads 'readline' dynamically
 <LI> static (fixed) binaries (when loading a binary chunk in memory, Lua can reuse its original memory in some of the internal structures)

@@ -323,7 +323,7 @@
 
 <P CLASS="footer">
 Last update:
-Tue Sep  2 21:25:09 UTC 2025
+Mon Dec  8 14:14:37 UTC 2025
 </P>
 <!--
 Last change: revised for Lua 5.5.0

src/lcode.c

@@ -1370,9 +1370,11 @@
     fillidxk(t, k->u.info, VINDEXUP);  /* literal short string */
   }
   else if (t->k == VVARGVAR) {  /* indexing the vararg parameter? */
-    lua_assert(t->u.ind.t == fs->f->numparams);
-    t->u.ind.t = cast_byte(t->u.var.ridx);
-    fillidxk(t, luaK_exp2anyreg(fs, k), VVARGIND);  /* register */
+    int kreg = luaK_exp2anyreg(fs, k);  /* put key in some register */
+    lu_byte vreg = cast_byte(t->u.var.ridx);  /* register with vararg param. */
+    lua_assert(vreg == fs->f->numparams);
+    t->u.ind.t = vreg;  /* (avoid a direct assignment; values may overlap) */
+    fillidxk(t, kreg, VVARGIND);  /* 't' represents 'vararg[k]' */
   }
   else {
     /* register index of the table */

src/lparser.c

@@ -505,8 +505,8 @@
   init_exp(var, VGLOBAL, -1);  /* global by default */
   singlevaraux(fs, ls->envn, var, 1);  /* get environment variable */
   if (var->k == VGLOBAL)
-    luaK_semerror(ls, "_ENV is global when accessing variable '%s'",
-                      getstr(varname));
+    luaK_semerror(ls, "%s is global when accessing variable '%s'",
+                      LUA_ENV, getstr(varname));
   luaK_exp2anyregup(fs, var);  /* _ENV could be a constant */
   codestring(&key, varname);  /* key is variable name */
   luaK_indexed(fs, var, &key);  /* 'var' represents _ENV[varname] */