Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F153087819
D16665.id46720.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
48 KB
Referenced Files
None
Subscribers
None
D16665.id46720.diff
View Options
Index: head/contrib/lua/README
===================================================================
--- head/contrib/lua/README
+++ head/contrib/lua/README
@@ -1,5 +1,5 @@
-This is Lua 5.3.4, released on 12 Jan 2017.
+This is Lua 5.3.5, released on 26 Jun 2018.
For installation instructions, license details, and
further information about Lua, see doc/readme.html.
Index: head/contrib/lua/doc/contents.html
===================================================================
--- head/contrib/lua/doc/contents.html
+++ head/contrib/lua/doc/contents.html
@@ -32,7 +32,7 @@
<P>
<SMALL>
-Copyright © 2015–2017 Lua.org, PUC-Rio.
+Copyright © 2015–2018 Lua.org, PUC-Rio.
Freely available under the terms of the
<A HREF="http://www.lua.org/license.html">Lua license</A>.
</SMALL>
@@ -609,10 +609,10 @@
<P CLASS="footer">
Last update:
-Thu Dec 22 18:29:39 BRST 2016
+Mon Jun 18 22:56:06 -03 2018
</P>
<!--
-Last change: revised for Lua 5.3.4
+Last change: revised for Lua 5.3.5
-->
</BODY>
Index: head/contrib/lua/doc/lua.css
===================================================================
--- head/contrib/lua/doc/lua.css
+++ head/contrib/lua/doc/lua.css
@@ -10,7 +10,7 @@
line-height: 1.25 ;
margin: 16px auto ;
padding: 32px ;
- border: solid #a0a0a0 1px ;
+ border: solid #ccc 1px ;
border-radius: 20px ;
max-width: 70em ;
width: 90% ;
@@ -111,36 +111,29 @@
border-radius: 8px ;
}
-td.gutter {
- width: 4% ;
-}
-
-table.columns {
+table {
border: none ;
border-spacing: 0 ;
border-collapse: collapse ;
}
+td {
+ padding: 0 ;
+ margin: 0 ;
+}
+
+td.gutter {
+ width: 4% ;
+}
+
table.columns td {
vertical-align: top ;
- padding: 0 ;
padding-bottom: 1em ;
text-align: justify ;
line-height: 1.25 ;
}
-p.logos a:link:hover, p.logos a:visited:hover {
- background-color: inherit ;
-}
-
-table.book {
- border: none ;
- border-spacing: 0 ;
- border-collapse: collapse ;
-}
-
table.book td {
- padding: 0 ;
vertical-align: top ;
}
@@ -157,6 +150,10 @@
text-align: left ;
display: block ;
margin-top: 0.25em ;
+}
+
+p.logos a:link:hover, p.logos a:visited:hover {
+ background-color: inherit ;
}
img {
Index: head/contrib/lua/doc/manual.html
===================================================================
--- head/contrib/lua/doc/manual.html
+++ head/contrib/lua/doc/manual.html
@@ -19,7 +19,7 @@
<P>
<SMALL>
-Copyright © 2015–2017 Lua.org, PUC-Rio.
+Copyright © 2015–2018 Lua.org, PUC-Rio.
Freely available under the terms of the
<a href="http://www.lua.org/license.html">Lua license</a>.
</SMALL>
@@ -35,7 +35,7 @@
<!-- ====================================================================== -->
<p>
-<!-- $Id: manual.of,v 1.167 2017/01/09 15:18:11 roberto Exp $ -->
+<!-- $Id: manual.of,v 1.167.1.2 2018/06/26 15:49:07 roberto Exp $ -->
@@ -203,8 +203,8 @@
<p>
The type <em>table</em> implements associative arrays,
-that is, arrays that can be indexed not only with numbers,
-but with any Lua value except <b>nil</b> and NaN.
+that is, arrays that can have as indices not only numbers,
+but any Lua value except <b>nil</b> and NaN.
(<em>Not a Number</em> is a special value used to represent
undefined or unrepresentable numerical results, such as <code>0/0</code>.)
Tables can be <em>heterogeneous</em>;
@@ -400,6 +400,8 @@
the corresponding values are called <em>metamethods</em>.
In the previous example, the key is "<code>__add</code>"
and the metamethod is the function that performs the addition.
+Unless stated otherwise,
+metamethods should be function values.
<p>
@@ -597,7 +599,7 @@
</li>
<li><b><code>__index</code>: </b>
-The indexing access <code>table[key]</code>.
+The indexing access operation <code>table[key]</code>.
This event happens when <code>table</code> is not a table or
when <code>key</code> is not present in <code>table</code>.
The metamethod is looked up in <code>table</code>.
@@ -1276,13 +1278,8 @@
<pre>
var ::= prefixexp ‘<b>[</b>’ exp ‘<b>]</b>’
</pre><p>
-The meaning of accesses to table fields can be changed via metatables.
-An access to an indexed variable <code>t[i]</code> is equivalent to
-a call <code>gettable_event(t,i)</code>.
-(See <a href="#2.4">§2.4</a> for a complete description of the
-<code>gettable_event</code> function.
-This function is not defined or callable in Lua.
-We use it here only for explanatory purposes.)
+The meaning of accesses to table fields can be changed via metatables
+(see <a href="#2.4">§2.4</a>).
<p>
@@ -1477,25 +1474,20 @@
<p>
-The meaning of assignments to global variables
-and table fields can be changed via metatables.
-An assignment to an indexed variable <code>t[i] = val</code> is equivalent to
-<code>settable_event(t,i,val)</code>.
-(See <a href="#2.4">§2.4</a> for a complete description of the
-<code>settable_event</code> function.
-This function is not defined or callable in Lua.
-We use it here only for explanatory purposes.)
-
-
-<p>
An assignment to a global name <code>x = val</code>
is equivalent to the assignment
<code>_ENV.x = val</code> (see <a href="#2.2">§2.2</a>).
+<p>
+The meaning of assignments to table fields and
+global variables (which are actually table fields, too)
+can be changed via metatables (see <a href="#2.4">§2.4</a>).
+
+
<h3>3.3.4 – <a name="3.3.4">Control Structures</a></h3><p>
The control structures
<b>if</b>, <b>while</b>, and <b>repeat</b> have the usual meaning and
@@ -1831,17 +1823,17 @@
g(f(), x) -- f() is adjusted to 1 result
g(x, f()) -- g gets x plus all results from f()
a,b,c = f(), x -- f() is adjusted to 1 result (c gets nil)
- a,b = ... -- a gets the first vararg parameter, b gets
+ a,b = ... -- a gets the first vararg argument, b gets
-- the second (both a and b can get nil if there
- -- is no corresponding vararg parameter)
+ -- is no corresponding vararg argument)
a,b,c = x, f() -- f() is adjusted to 2 results
a,b,c = f() -- f() is adjusted to 3 results
return f() -- returns all results from f()
- return ... -- returns all received vararg parameters
+ return ... -- returns all received vararg arguments
return x,y,f() -- returns x, y, and all results from f()
{f()} -- creates a list with all results from f()
- {...} -- creates a list with all vararg parameters
+ {...} -- creates a list with all vararg arguments
{f(), nil} -- f() is adjusted to 1 result
</pre>
@@ -2039,9 +2031,12 @@
Every time you create a new object
(a table, userdata, or thread),
this new object is different from any previously existing object.
-Closures with the same reference are always equal.
+A closure is always equal to itself.
Closures with any detectable difference
(different behavior, different definition) are always different.
+Closures created at different times but with no detectable differences
+may be classified as equal or not
+(depending on internal caching details).
<p>
@@ -2303,7 +2298,7 @@
then this function is called
with the given arguments.
Otherwise, the prefixexp "call" metamethod is called,
-having as first parameter the value of prefixexp,
+having as first argument the value of prefixexp,
followed by the original call arguments
(see <a href="#2.4">§2.4</a>).
@@ -2881,7 +2876,7 @@
as it should be already protected.
However,
when C code operates on other Lua states
-(e.g., a Lua parameter to the function,
+(e.g., a Lua argument to the function,
a Lua state stored in the registry, or
the result of <a href="#lua_newthread"><code>lua_newthread</code></a>),
it should use them only in API calls that cannot raise errors.
@@ -3370,7 +3365,7 @@
Destroys all objects in the given Lua state
(calling the corresponding garbage-collection metamethods, if any)
and frees all dynamic memory used by this state.
-On several platforms, you may not need to call this function,
+In several platforms, you may not need to call this function,
because all resources are naturally released when the host program ends.
On the other hand, long-running programs that create multiple states,
such as daemons or web servers,
@@ -5584,7 +5579,7 @@
<p>
-To get information about a function you push it onto the stack
+To get information about a function, you push it onto the stack
and start the <code>what</code> string with the character '<code>></code>'.
(In that case,
<code>lua_getinfo</code> pops the function from the top of the stack.)
@@ -6462,7 +6457,7 @@
<p>
Pushes onto the stack the field <code>e</code> from the metatable
-of the object at index <code>obj</code> and returns the type of pushed value.
+of the object at index <code>obj</code> and returns the type of the pushed value.
If the object does not have a metatable,
or if the metatable does not have this field,
pushes nothing and returns <code>LUA_TNIL</code>.
@@ -6749,7 +6744,7 @@
the macro results in the default <code>dflt</code>.
Otherwise, it results in the result of calling <code>func</code>
with the state <code>L</code> and the argument index <code>arg</code> as
-parameters.
+arguments.
Note that it evaluates the expression <code>dflt</code> only if needed.
@@ -8680,7 +8675,7 @@
<p>
You can put a closing square bracket in a set
by positioning it as the first character in the set.
-You can put an hyphen in a set
+You can put a hyphen in a set
by positioning it as the first or the last character in the set.
(You can also use an escape for both cases.)
@@ -9082,8 +9077,8 @@
<p>
-Returns a new table with all parameters stored into keys 1, 2, etc.
-and with a field "<code>n</code>" with the total number of parameters.
+Returns a new table with all arguments stored into keys 1, 2, etc.
+and with a field "<code>n</code>" with the total number of arguments.
Note that the resulting table may not be a sequence.
@@ -9215,7 +9210,7 @@
<p>
Returns the arc tangent of <code>y/x</code> (in radians),
-but uses the signs of both parameters to find the
+but uses the signs of both arguments to find the
quadrant of the result.
(It also handles correctly the case of <code>x</code> being zero.)
@@ -9516,7 +9511,7 @@
(plus an error message as a second result and
a system-dependent error code as a third result)
and some value different from <b>nil</b> on success.
-On non-POSIX systems,
+In non-POSIX systems,
the computation of the error message and error code
in case of errors
may be not thread safe,
@@ -9553,7 +9548,7 @@
and sets its handle as the default input file.
When called with a file handle,
it simply sets this file handle as the default input file.
-When called without parameters,
+When called without arguments,
it returns the current default input file.
@@ -9580,7 +9575,7 @@
The call <code>io.lines()</code> (with no file name) is equivalent
to <code>io.input():lines("*l")</code>;
that is, it iterates over the lines of the default input file.
-In this case it does not close the file when the loop ends.
+In this case, the iterator does not close the file when the loop ends.
<p>
@@ -9963,7 +9958,7 @@
<p>
-On non-POSIX systems,
+In non-POSIX systems,
this function may be not thread safe
because of its reliance on C function <code>gmtime</code> and C function <code>localtime</code>.
@@ -10163,7 +10158,7 @@
<p>
-On POSIX systems,
+In POSIX systems,
this function also creates a file with that name,
to avoid security risks.
(Someone else might create the file with wrong permissions
@@ -10301,8 +10296,8 @@
following the order that they are declared in the code,
counting only the variables that are active
in the current scope of the function.
-Negative indices refer to vararg parameters;
--1 is the first vararg parameter.
+Negative indices refer to vararg arguments;
+-1 is the first vararg argument.
The function returns <b>nil</b> if there is no variable with the given index,
and raises an error when called with a level out of range.
(You can call <a href="#pdf-debug.getinfo"><code>debug.getinfo</code></a> to check whether the level is valid.)
@@ -10400,7 +10395,7 @@
<p>
-When the hook is called, its first parameter is a string
+When the hook is called, its first argument is a string
describing the event that has triggered its call:
<code>"call"</code> (or <code>"tail call"</code>),
<code>"return"</code>,
@@ -10551,7 +10546,8 @@
<ul>
<li><b><code>-e <em>stat</em></code>: </b> executes string <em>stat</em>;</li>
-<li><b><code>-l <em>mod</em></code>: </b> "requires" <em>mod</em>;</li>
+<li><b><code>-l <em>mod</em></code>: </b> "requires" <em>mod</em> and assigns the
+ result to global @<em>mod</em>;</li>
<li><b><code>-i</code>: </b> enters interactive mode after running <em>script</em>;</li>
<li><b><code>-v</code>: </b> prints version information;</li>
<li><b><code>-E</code>: </b> ignores environment variables;</li>
@@ -10629,7 +10625,7 @@
</pre><p>
will print "<code>-e</code>".
If there is a script,
-the script is called with parameters
+the script is called with arguments
<code>arg[1]</code>, ···, <code>arg[#arg]</code>.
(Like all chunks in Lua,
the script is compiled as a vararg function.)
@@ -10815,7 +10811,7 @@
<code>frexp</code>, and <code>ldexp</code>.
You can replace <code>math.pow(x,y)</code> with <code>x^y</code>;
you can replace <code>math.atan2</code> with <code>math.atan</code>,
-which now accepts one or two parameters;
+which now accepts one or two arguments;
you can replace <code>math.ldexp(x,exp)</code> with <code>x * 2.0^exp</code>.
For the other operations,
you can either use an external library or
@@ -10850,7 +10846,7 @@
<ul>
<li>
-Continuation functions now receive as parameters what they needed
+Continuation functions now receive as arguments what they needed
to get through <code>lua_getctx</code>,
so <code>lua_getctx</code> has been removed.
Adapt your code accordingly.
@@ -10973,12 +10969,13 @@
+
<P CLASS="footer">
Last update:
-Mon Jan 9 13:30:53 BRST 2017
+Tue Jun 26 13:16:37 -03 2018
</P>
<!--
-Last change: revised for Lua 5.3.4
+Last change: revised for Lua 5.3.5
-->
</body></html>
Index: head/contrib/lua/doc/readme.html
===================================================================
--- head/contrib/lua/doc/readme.html
+++ head/contrib/lua/doc/readme.html
@@ -107,7 +107,7 @@
<OL>
<LI>
Open a terminal window and move to
-the top-level directory, which is named <TT>lua-5.3.x</TT>.
+the top-level directory, which is named <TT>lua-5.3.5</TT>.
The <TT>Makefile</TT> there controls both the build process and the installation process.
<P>
<LI>
@@ -355,10 +355,10 @@
<P CLASS="footer">
Last update:
-Thu Dec 22 18:22:57 BRST 2016
+Mon Jun 18 22:57:33 -03 2018
</P>
<!--
-Last change: revised for Lua 5.3.4
+Last change: revised for Lua 5.3.5
-->
</BODY>
Index: head/contrib/lua/src/Makefile
===================================================================
--- head/contrib/lua/src/Makefile
+++ head/contrib/lua/src/Makefile
@@ -102,7 +102,7 @@
freebsd:
- $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -lreadline"
+ $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX -DLUA_USE_READLINE -I/usr/include/edit" SYSLIBS="-Wl,-E -ledit" CC="cc"
generic: $(ALL)
@@ -110,7 +110,7 @@
$(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline"
macosx:
- $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_MACOSX" SYSLIBS="-lreadline" CC=cc
+ $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_MACOSX" SYSLIBS="-lreadline"
mingw:
$(MAKE) "LUA_A=lua53.dll" "LUA_T=lua.exe" \
Index: head/contrib/lua/src/lapi.h
===================================================================
--- head/contrib/lua/src/lapi.h
+++ head/contrib/lua/src/lapi.h
@@ -1,5 +1,5 @@
/*
-** $Id: lapi.h,v 2.9 2015/03/06 19:49:50 roberto Exp $
+** $Id: lapi.h,v 2.9.1.1 2017/04/19 17:20:42 roberto Exp $
** Auxiliary functions from Lua API
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lapi.c
===================================================================
--- head/contrib/lua/src/lapi.c
+++ head/contrib/lua/src/lapi.c
@@ -1,5 +1,5 @@
/*
-** $Id: lapi.c,v 2.259 2016/02/29 14:27:14 roberto Exp $
+** $Id: lapi.c,v 2.259.1.2 2017/12/06 18:35:12 roberto Exp $
** Lua API
** See Copyright Notice in lua.h
*/
@@ -533,6 +533,7 @@
lua_lock(L);
if (n == 0) {
setfvalue(L->top, fn);
+ api_incr_top(L);
}
else {
CClosure *cl;
@@ -546,9 +547,9 @@
/* does not need barrier because closure is white */
}
setclCvalue(L, L->top, cl);
+ api_incr_top(L);
+ luaC_checkGC(L);
}
- api_incr_top(L);
- luaC_checkGC(L);
lua_unlock(L);
}
Index: head/contrib/lua/src/lauxlib.h
===================================================================
--- head/contrib/lua/src/lauxlib.h
+++ head/contrib/lua/src/lauxlib.h
@@ -1,5 +1,5 @@
/*
-** $Id: lauxlib.h,v 1.131 2016/12/06 14:54:31 roberto Exp $
+** $Id: lauxlib.h,v 1.131.1.1 2017/04/19 17:20:42 roberto Exp $
** Auxiliary functions for building Lua libraries
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lauxlib.c
===================================================================
--- head/contrib/lua/src/lauxlib.c
+++ head/contrib/lua/src/lauxlib.c
@@ -1,5 +1,5 @@
/*
-** $Id: lauxlib.c,v 1.289 2016/12/20 18:37:00 roberto Exp $
+** $Id: lauxlib.c,v 1.289.1.1 2017/04/19 17:20:42 roberto Exp $
** Auxiliary functions for building Lua libraries
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lbaselib.c
===================================================================
--- head/contrib/lua/src/lbaselib.c
+++ head/contrib/lua/src/lbaselib.c
@@ -1,5 +1,5 @@
/*
-** $Id: lbaselib.c,v 1.314 2016/09/05 19:06:34 roberto Exp $
+** $Id: lbaselib.c,v 1.314.1.1 2017/04/19 17:39:34 roberto Exp $
** Basic library
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lbitlib.c
===================================================================
--- head/contrib/lua/src/lbitlib.c
+++ head/contrib/lua/src/lbitlib.c
@@ -1,5 +1,5 @@
/*
-** $Id: lbitlib.c,v 1.30 2015/11/11 19:08:09 roberto Exp $
+** $Id: lbitlib.c,v 1.30.1.1 2017/04/19 17:20:42 roberto Exp $
** Standard library for bitwise operations
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lcode.h
===================================================================
--- head/contrib/lua/src/lcode.h
+++ head/contrib/lua/src/lcode.h
@@ -1,5 +1,5 @@
/*
-** $Id: lcode.h,v 1.64 2016/01/05 16:22:37 roberto Exp $
+** $Id: lcode.h,v 1.64.1.1 2017/04/19 17:20:42 roberto Exp $
** Code generator for Lua
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lcode.c
===================================================================
--- head/contrib/lua/src/lcode.c
+++ head/contrib/lua/src/lcode.c
@@ -1,5 +1,5 @@
/*
-** $Id: lcode.c,v 2.112 2016/12/22 13:08:50 roberto Exp $
+** $Id: lcode.c,v 2.112.1.1 2017/04/19 17:20:42 roberto Exp $
** Code generator for Lua
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lcorolib.c
===================================================================
--- head/contrib/lua/src/lcorolib.c
+++ head/contrib/lua/src/lcorolib.c
@@ -1,5 +1,5 @@
/*
-** $Id: lcorolib.c,v 1.10 2016/04/11 19:19:55 roberto Exp $
+** $Id: lcorolib.c,v 1.10.1.1 2017/04/19 17:20:42 roberto Exp $
** Coroutine Library
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lctype.h
===================================================================
--- head/contrib/lua/src/lctype.h
+++ head/contrib/lua/src/lctype.h
@@ -1,5 +1,5 @@
/*
-** $Id: lctype.h,v 1.12 2011/07/15 12:50:29 roberto Exp $
+** $Id: lctype.h,v 1.12.1.1 2013/04/12 18:48:47 roberto Exp $
** 'ctype' functions for Lua
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lctype.c
===================================================================
--- head/contrib/lua/src/lctype.c
+++ head/contrib/lua/src/lctype.c
@@ -1,5 +1,5 @@
/*
-** $Id: lctype.c,v 1.12 2014/11/02 19:19:04 roberto Exp $
+** $Id: lctype.c,v 1.12.1.1 2017/04/19 17:20:42 roberto Exp $
** 'ctype' functions for Lua
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/ldblib.c
===================================================================
--- head/contrib/lua/src/ldblib.c
+++ head/contrib/lua/src/ldblib.c
@@ -1,5 +1,5 @@
/*
-** $Id: ldblib.c,v 1.151 2015/11/23 11:29:43 roberto Exp $
+** $Id: ldblib.c,v 1.151.1.1 2017/04/19 17:20:42 roberto Exp $
** Interface from Lua to its debug API
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/ldebug.h
===================================================================
--- head/contrib/lua/src/ldebug.h
+++ head/contrib/lua/src/ldebug.h
@@ -1,5 +1,5 @@
/*
-** $Id: ldebug.h,v 2.14 2015/05/22 17:45:56 roberto Exp $
+** $Id: ldebug.h,v 2.14.1.1 2017/04/19 17:20:42 roberto Exp $
** Auxiliary functions from Debug Interface module
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/ldebug.c
===================================================================
--- head/contrib/lua/src/ldebug.c
+++ head/contrib/lua/src/ldebug.c
@@ -1,5 +1,5 @@
/*
-** $Id: ldebug.c,v 2.121 2016/10/19 12:32:10 roberto Exp $
+** $Id: ldebug.c,v 2.121.1.2 2017/07/10 17:21:50 roberto Exp $
** Debug Interface
** See Copyright Notice in lua.h
*/
@@ -653,6 +653,7 @@
CallInfo *ci = L->ci;
const char *msg;
va_list argp;
+ luaC_checkGC(L); /* error message uses memory */
va_start(argp, fmt);
msg = luaO_pushvfstring(L, fmt, argp); /* format message */
va_end(argp);
Index: head/contrib/lua/src/ldo.h
===================================================================
--- head/contrib/lua/src/ldo.h
+++ head/contrib/lua/src/ldo.h
@@ -1,5 +1,5 @@
/*
-** $Id: ldo.h,v 2.29 2015/12/21 13:02:14 roberto Exp $
+** $Id: ldo.h,v 2.29.1.1 2017/04/19 17:20:42 roberto Exp $
** Stack and Call structure of Lua
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/ldo.c
===================================================================
--- head/contrib/lua/src/ldo.c
+++ head/contrib/lua/src/ldo.c
@@ -1,5 +1,5 @@
/*
-** $Id: ldo.c,v 2.157 2016/12/13 15:52:21 roberto Exp $
+** $Id: ldo.c,v 2.157.1.1 2017/04/19 17:20:42 roberto Exp $
** Stack and Call structure of Lua
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/ldump.c
===================================================================
--- head/contrib/lua/src/ldump.c
+++ head/contrib/lua/src/ldump.c
@@ -1,5 +1,5 @@
/*
-** $Id: ldump.c,v 2.37 2015/10/08 15:53:49 roberto Exp $
+** $Id: ldump.c,v 2.37.1.1 2017/04/19 17:20:42 roberto Exp $
** save precompiled Lua chunks
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lfunc.h
===================================================================
--- head/contrib/lua/src/lfunc.h
+++ head/contrib/lua/src/lfunc.h
@@ -1,5 +1,5 @@
/*
-** $Id: lfunc.h,v 2.15 2015/01/13 15:49:11 roberto Exp $
+** $Id: lfunc.h,v 2.15.1.1 2017/04/19 17:39:34 roberto Exp $
** Auxiliary functions to manipulate prototypes and closures
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lfunc.c
===================================================================
--- head/contrib/lua/src/lfunc.c
+++ head/contrib/lua/src/lfunc.c
@@ -1,5 +1,5 @@
/*
-** $Id: lfunc.c,v 2.45 2014/11/02 19:19:04 roberto Exp $
+** $Id: lfunc.c,v 2.45.1.1 2017/04/19 17:39:34 roberto Exp $
** Auxiliary functions to manipulate prototypes and closures
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lgc.h
===================================================================
--- head/contrib/lua/src/lgc.h
+++ head/contrib/lua/src/lgc.h
@@ -1,5 +1,5 @@
/*
-** $Id: lgc.h,v 2.91 2015/12/21 13:02:14 roberto Exp $
+** $Id: lgc.h,v 2.91.1.1 2017/04/19 17:39:34 roberto Exp $
** Garbage Collector
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lgc.c
===================================================================
--- head/contrib/lua/src/lgc.c
+++ head/contrib/lua/src/lgc.c
@@ -1,5 +1,5 @@
/*
-** $Id: lgc.c,v 2.215 2016/12/22 13:08:50 roberto Exp $
+** $Id: lgc.c,v 2.215.1.2 2017/08/31 16:15:27 roberto Exp $
** Garbage Collector
** See Copyright Notice in lua.h
*/
@@ -643,8 +643,9 @@
for (n = gnode(h, 0); n < limit; n++) {
if (!ttisnil(gval(n)) && (iscleared(g, gkey(n)))) {
setnilvalue(gval(n)); /* remove value ... */
- removeentry(n); /* and remove entry from table */
}
+ if (ttisnil(gval(n))) /* is entry empty? */
+ removeentry(n); /* remove entry from table */
}
}
}
Index: head/contrib/lua/src/linit.c
===================================================================
--- head/contrib/lua/src/linit.c
+++ head/contrib/lua/src/linit.c
@@ -1,5 +1,5 @@
/*
-** $Id: linit.c,v 1.39 2016/12/04 20:17:24 roberto Exp $
+** $Id: linit.c,v 1.39.1.1 2017/04/19 17:20:42 roberto Exp $
** Initialization of libraries for lua.c and other clients
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/liolib.c
===================================================================
--- head/contrib/lua/src/liolib.c
+++ head/contrib/lua/src/liolib.c
@@ -1,5 +1,5 @@
/*
-** $Id: liolib.c,v 2.151 2016/12/20 18:37:00 roberto Exp $
+** $Id: liolib.c,v 2.151.1.1 2017/04/19 17:29:57 roberto Exp $
** Standard I/O (and system) library
** See Copyright Notice in lua.h
*/
@@ -206,11 +206,16 @@
}
+static int f_close (lua_State *L) {
+ tofile(L); /* make sure argument is an open stream */
+ return aux_close(L);
+}
+
+
static int io_close (lua_State *L) {
if (lua_isnone(L, 1)) /* no argument? */
lua_getfield(L, LUA_REGISTRYINDEX, IO_OUTPUT); /* use standard output */
- tofile(L); /* make sure argument is an open stream */
- return aux_close(L);
+ return f_close(L);
}
@@ -712,7 +717,7 @@
** methods for file handles
*/
static const luaL_Reg flib[] = {
- {"close", io_close},
+ {"close", f_close},
{"flush", f_flush},
{"lines", f_lines},
{"read", f_read},
Index: head/contrib/lua/src/llex.h
===================================================================
--- head/contrib/lua/src/llex.h
+++ head/contrib/lua/src/llex.h
@@ -1,5 +1,5 @@
/*
-** $Id: llex.h,v 1.79 2016/05/02 14:02:12 roberto Exp $
+** $Id: llex.h,v 1.79.1.1 2017/04/19 17:20:42 roberto Exp $
** Lexical Analyzer
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/llex.c
===================================================================
--- head/contrib/lua/src/llex.c
+++ head/contrib/lua/src/llex.c
@@ -1,5 +1,5 @@
/*
-** $Id: llex.c,v 2.96 2016/05/02 14:02:12 roberto Exp $
+** $Id: llex.c,v 2.96.1.1 2017/04/19 17:20:42 roberto Exp $
** Lexical Analyzer
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/llimits.h
===================================================================
--- head/contrib/lua/src/llimits.h
+++ head/contrib/lua/src/llimits.h
@@ -1,5 +1,5 @@
/*
-** $Id: llimits.h,v 1.141 2015/11/19 19:16:22 roberto Exp $
+** $Id: llimits.h,v 1.141.1.1 2017/04/19 17:20:42 roberto Exp $
** Limits, basic types, and some other 'installation-dependent' definitions
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lmathlib.c
===================================================================
--- head/contrib/lua/src/lmathlib.c
+++ head/contrib/lua/src/lmathlib.c
@@ -1,5 +1,5 @@
/*
-** $Id: lmathlib.c,v 1.119 2016/12/22 13:08:50 roberto Exp $
+** $Id: lmathlib.c,v 1.119.1.1 2017/04/19 17:20:42 roberto Exp $
** Standard mathematical library
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lmem.h
===================================================================
--- head/contrib/lua/src/lmem.h
+++ head/contrib/lua/src/lmem.h
@@ -1,5 +1,5 @@
/*
-** $Id: lmem.h,v 1.43 2014/12/19 17:26:14 roberto Exp $
+** $Id: lmem.h,v 1.43.1.1 2017/04/19 17:20:42 roberto Exp $
** Interface to Memory Manager
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lmem.c
===================================================================
--- head/contrib/lua/src/lmem.c
+++ head/contrib/lua/src/lmem.c
@@ -1,5 +1,5 @@
/*
-** $Id: lmem.c,v 1.91 2015/03/06 19:45:54 roberto Exp $
+** $Id: lmem.c,v 1.91.1.1 2017/04/19 17:20:42 roberto Exp $
** Interface to Memory Manager
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/loadlib.c
===================================================================
--- head/contrib/lua/src/loadlib.c
+++ head/contrib/lua/src/loadlib.c
@@ -1,5 +1,5 @@
/*
-** $Id: loadlib.c,v 1.130 2017/01/12 17:14:26 roberto Exp $
+** $Id: loadlib.c,v 1.130.1.1 2017/04/19 17:20:42 roberto Exp $
** Dynamic library loader for Lua
** See Copyright Notice in lua.h
**
Index: head/contrib/lua/src/lobject.h
===================================================================
--- head/contrib/lua/src/lobject.h
+++ head/contrib/lua/src/lobject.h
@@ -1,5 +1,5 @@
/*
-** $Id: lobject.h,v 2.117 2016/08/01 19:51:24 roberto Exp $
+** $Id: lobject.h,v 2.117.1.1 2017/04/19 17:39:34 roberto Exp $
** Type definitions for Lua objects
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lobject.c
===================================================================
--- head/contrib/lua/src/lobject.c
+++ head/contrib/lua/src/lobject.c
@@ -1,5 +1,5 @@
/*
-** $Id: lobject.c,v 2.113 2016/12/22 13:08:50 roberto Exp $
+** $Id: lobject.c,v 2.113.1.1 2017/04/19 17:29:57 roberto Exp $
** Some generic functions over Lua objects
** See Copyright Notice in lua.h
*/
@@ -435,7 +435,8 @@
}
case 'p': { /* a pointer */
char buff[4*sizeof(void *) + 8]; /* should be enough space for a '%p' */
- int l = l_sprintf(buff, sizeof(buff), "%p", va_arg(argp, void *));
+ void *p = va_arg(argp, void *);
+ int l = lua_pointer2str(buff, sizeof(buff), p);
pushstr(L, buff, l);
break;
}
Index: head/contrib/lua/src/lopcodes.h
===================================================================
--- head/contrib/lua/src/lopcodes.h
+++ head/contrib/lua/src/lopcodes.h
@@ -1,5 +1,5 @@
/*
-** $Id: lopcodes.h,v 1.149 2016/07/19 17:12:21 roberto Exp $
+** $Id: lopcodes.h,v 1.149.1.1 2017/04/19 17:20:42 roberto Exp $
** Opcodes for Lua virtual machine
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lopcodes.c
===================================================================
--- head/contrib/lua/src/lopcodes.c
+++ head/contrib/lua/src/lopcodes.c
@@ -1,5 +1,5 @@
/*
-** $Id: lopcodes.c,v 1.55 2015/01/05 13:48:33 roberto Exp $
+** $Id: lopcodes.c,v 1.55.1.1 2017/04/19 17:20:42 roberto Exp $
** Opcodes for Lua virtual machine
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/loslib.c
===================================================================
--- head/contrib/lua/src/loslib.c
+++ head/contrib/lua/src/loslib.c
@@ -1,5 +1,5 @@
/*
-** $Id: loslib.c,v 1.65 2016/07/18 17:58:58 roberto Exp $
+** $Id: loslib.c,v 1.65.1.1 2017/04/19 17:29:57 roberto Exp $
** Standard Operating System library
** See Copyright Notice in lua.h
*/
@@ -293,7 +293,8 @@
else
stm = l_localtime(&t, &tmr);
if (stm == NULL) /* invalid date? */
- luaL_error(L, "time result cannot be represented in this installation");
+ return luaL_error(L,
+ "time result cannot be represented in this installation");
if (strcmp(s, "*t") == 0) {
lua_createtable(L, 0, 9); /* 9 = number of fields */
setallfields(L, stm);
@@ -340,7 +341,8 @@
setallfields(L, &ts); /* update fields with normalized values */
}
if (t != (time_t)(l_timet)t || t == (time_t)(-1))
- luaL_error(L, "time result cannot be represented in this installation");
+ return luaL_error(L,
+ "time result cannot be represented in this installation");
l_pushtime(L, t);
return 1;
}
Index: head/contrib/lua/src/lparser.h
===================================================================
--- head/contrib/lua/src/lparser.h
+++ head/contrib/lua/src/lparser.h
@@ -1,5 +1,5 @@
/*
-** $Id: lparser.h,v 1.76 2015/12/30 18:16:13 roberto Exp $
+** $Id: lparser.h,v 1.76.1.1 2017/04/19 17:20:42 roberto Exp $
** Lua Parser
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lparser.c
===================================================================
--- head/contrib/lua/src/lparser.c
+++ head/contrib/lua/src/lparser.c
@@ -1,5 +1,5 @@
/*
-** $Id: lparser.c,v 2.155 2016/08/01 19:51:24 roberto Exp $
+** $Id: lparser.c,v 2.155.1.2 2017/04/29 18:11:40 roberto Exp $
** Lua Parser
** See Copyright Notice in lua.h
*/
@@ -1392,7 +1392,7 @@
luaK_goiffalse(ls->fs, &v); /* will jump to label if condition is true */
enterblock(fs, &bl, 0); /* must enter block before 'goto' */
gotostat(ls, v.t); /* handle goto/break */
- skipnoopstat(ls); /* skip other no-op statements */
+ while (testnext(ls, ';')) {} /* skip colons */
if (block_follow(ls, 0)) { /* 'goto' is the entire block? */
leaveblock(fs);
return; /* and that is it */
Index: head/contrib/lua/src/lprefix.h
===================================================================
--- head/contrib/lua/src/lprefix.h
+++ head/contrib/lua/src/lprefix.h
@@ -1,5 +1,5 @@
/*
-** $Id: lprefix.h,v 1.2 2014/12/29 16:54:13 roberto Exp $
+** $Id: lprefix.h,v 1.2.1.1 2017/04/19 17:20:42 roberto Exp $
** Definitions for Lua code that must come before any other header file
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lstate.h
===================================================================
--- head/contrib/lua/src/lstate.h
+++ head/contrib/lua/src/lstate.h
@@ -1,5 +1,5 @@
/*
-** $Id: lstate.h,v 2.133 2016/12/22 13:08:50 roberto Exp $
+** $Id: lstate.h,v 2.133.1.1 2017/04/19 17:39:34 roberto Exp $
** Global State
** See Copyright Notice in lua.h
*/
@@ -26,6 +26,24 @@
** 'tobefnz': all objects ready to be finalized;
** 'fixedgc': all objects that are not to be collected (currently
** only small strings, such as reserved words).
+**
+** Moreover, there is another set of lists that control gray objects.
+** These lists are linked by fields 'gclist'. (All objects that
+** can become gray have such a field. The field is not the same
+** in all objects, but it always has this name.) Any gray object
+** must belong to one of these lists, and all objects in these lists
+** must be gray:
+**
+** 'gray': regular gray objects, still waiting to be visited.
+** 'grayagain': objects that must be revisited at the atomic phase.
+** That includes
+** - black objects got in a write barrier;
+** - all kinds of weak tables during propagation phase;
+** - all threads.
+** 'weak': tables with weak values to be cleared;
+** 'ephemeron': ephemeron tables with white->white entries;
+** 'allweak': tables with weak keys and/or weak values to be cleared.
+** The last three lists are used only during the atomic phase.
*/
Index: head/contrib/lua/src/lstate.c
===================================================================
--- head/contrib/lua/src/lstate.c
+++ head/contrib/lua/src/lstate.c
@@ -1,5 +1,5 @@
/*
-** $Id: lstate.c,v 2.133 2015/11/13 12:16:51 roberto Exp $
+** $Id: lstate.c,v 2.133.1.1 2017/04/19 17:39:34 roberto Exp $
** Global State
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lstring.h
===================================================================
--- head/contrib/lua/src/lstring.h
+++ head/contrib/lua/src/lstring.h
@@ -1,5 +1,5 @@
/*
-** $Id: lstring.h,v 1.61 2015/11/03 15:36:01 roberto Exp $
+** $Id: lstring.h,v 1.61.1.1 2017/04/19 17:20:42 roberto Exp $
** String table (keep all strings handled by Lua)
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lstring.c
===================================================================
--- head/contrib/lua/src/lstring.c
+++ head/contrib/lua/src/lstring.c
@@ -1,5 +1,5 @@
/*
-** $Id: lstring.c,v 2.56 2015/11/23 11:32:51 roberto Exp $
+** $Id: lstring.c,v 2.56.1.1 2017/04/19 17:20:42 roberto Exp $
** String table (keeps all strings handled by Lua)
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lstrlib.c
===================================================================
--- head/contrib/lua/src/lstrlib.c
+++ head/contrib/lua/src/lstrlib.c
@@ -1,5 +1,5 @@
/*
-** $Id: lstrlib.c,v 1.254 2016/12/22 13:08:50 roberto Exp $
+** $Id: lstrlib.c,v 1.254.1.1 2017/04/19 17:29:57 roberto Exp $
** Standard library for string operations and pattern-matching
** See Copyright Notice in lua.h
*/
@@ -879,7 +879,7 @@
buff[i] = toupper(uchar(buff[i]));
}
else if (fmt[SIZELENMOD] != 'a')
- luaL_error(L, "modifiers for format '%%a'/'%%A' not implemented");
+ return luaL_error(L, "modifiers for format '%%a'/'%%A' not implemented");
return n;
}
@@ -1210,8 +1210,8 @@
static int getnumlimit (Header *h, const char **fmt, int df) {
int sz = getnum(fmt, df);
if (sz > MAXINTSIZE || sz <= 0)
- luaL_error(h->L, "integral size (%d) out of limits [1,%d]",
- sz, MAXINTSIZE);
+ return luaL_error(h->L, "integral size (%d) out of limits [1,%d]",
+ sz, MAXINTSIZE);
return sz;
}
Index: head/contrib/lua/src/ltable.h
===================================================================
--- head/contrib/lua/src/ltable.h
+++ head/contrib/lua/src/ltable.h
@@ -1,5 +1,5 @@
/*
-** $Id: ltable.h,v 2.23 2016/12/22 13:08:50 roberto Exp $
+** $Id: ltable.h,v 2.23.1.2 2018/05/24 19:39:05 roberto Exp $
** Lua tables (hash)
** See Copyright Notice in lua.h
*/
@@ -54,7 +54,7 @@
LUAI_FUNC void luaH_resizearray (lua_State *L, Table *t, unsigned int nasize);
LUAI_FUNC void luaH_free (lua_State *L, Table *t);
LUAI_FUNC int luaH_next (lua_State *L, Table *t, StkId key);
-LUAI_FUNC int luaH_getn (Table *t);
+LUAI_FUNC lua_Unsigned luaH_getn (Table *t);
#if defined(LUA_DEBUG)
Index: head/contrib/lua/src/ltable.c
===================================================================
--- head/contrib/lua/src/ltable.c
+++ head/contrib/lua/src/ltable.c
@@ -1,5 +1,5 @@
/*
-** $Id: ltable.c,v 2.118 2016/11/07 12:38:35 roberto Exp $
+** $Id: ltable.c,v 2.118.1.4 2018/06/08 16:22:51 roberto Exp $
** Lua tables (hash)
** See Copyright Notice in lua.h
*/
@@ -223,7 +223,9 @@
unsigned int na = 0; /* number of elements to go to array part */
unsigned int optimal = 0; /* optimal size for array part */
/* loop while keys can fill more than half of total size */
- for (i = 0, twotoi = 1; *pna > twotoi / 2; i++, twotoi *= 2) {
+ for (i = 0, twotoi = 1;
+ twotoi > 0 && *pna > twotoi / 2;
+ i++, twotoi *= 2) {
if (nums[i] > 0) {
a += nums[i];
if (a > twotoi/2) { /* more than half elements present? */
@@ -330,17 +332,34 @@
}
+typedef struct {
+ Table *t;
+ unsigned int nhsize;
+} AuxsetnodeT;
+
+
+static void auxsetnode (lua_State *L, void *ud) {
+ AuxsetnodeT *asn = cast(AuxsetnodeT *, ud);
+ setnodevector(L, asn->t, asn->nhsize);
+}
+
+
void luaH_resize (lua_State *L, Table *t, unsigned int nasize,
unsigned int nhsize) {
unsigned int i;
int j;
+ AuxsetnodeT asn;
unsigned int oldasize = t->sizearray;
int oldhsize = allocsizenode(t);
Node *nold = t->node; /* save old hash ... */
if (nasize > oldasize) /* array part must grow? */
setarrayvector(L, t, nasize);
/* create new hash part with appropriate size */
- setnodevector(L, t, nhsize);
+ asn.t = t; asn.nhsize = nhsize;
+ if (luaD_rawrunprotected(L, auxsetnode, &asn) != LUA_OK) { /* mem. error? */
+ setarrayvector(L, t, oldasize); /* array back to its original size */
+ luaD_throw(L, LUA_ERRMEM); /* rethrow memory error */
+ }
if (nasize < oldasize) { /* array part must shrink? */
t->sizearray = nasize;
/* re-insert elements from vanishing slice */
@@ -610,13 +629,13 @@
}
-static int unbound_search (Table *t, unsigned int j) {
- unsigned int i = j; /* i is zero or a present index */
+static lua_Unsigned unbound_search (Table *t, lua_Unsigned j) {
+ lua_Unsigned i = j; /* i is zero or a present index */
j++;
/* find 'i' and 'j' such that i is present and j is not */
while (!ttisnil(luaH_getint(t, j))) {
i = j;
- if (j > cast(unsigned int, MAX_INT)/2) { /* overflow? */
+ if (j > l_castS2U(LUA_MAXINTEGER) / 2) { /* overflow? */
/* table was built with bad purposes: resort to linear search */
i = 1;
while (!ttisnil(luaH_getint(t, i))) i++;
@@ -626,7 +645,7 @@
}
/* now do a binary search between them */
while (j - i > 1) {
- unsigned int m = (i+j)/2;
+ lua_Unsigned m = (i+j)/2;
if (ttisnil(luaH_getint(t, m))) j = m;
else i = m;
}
@@ -638,7 +657,7 @@
** Try to find a boundary in table 't'. A 'boundary' is an integer index
** such that t[i] is non-nil and t[i+1] is nil (and 0 if t[1] is nil).
*/
-int luaH_getn (Table *t) {
+lua_Unsigned luaH_getn (Table *t) {
unsigned int j = t->sizearray;
if (j > 0 && ttisnil(&t->array[j - 1])) {
/* there is a boundary in the array part: (binary) search for it */
Index: head/contrib/lua/src/ltablib.c
===================================================================
--- head/contrib/lua/src/ltablib.c
+++ head/contrib/lua/src/ltablib.c
@@ -1,5 +1,5 @@
/*
-** $Id: ltablib.c,v 1.93 2016/02/25 19:41:54 roberto Exp $
+** $Id: ltablib.c,v 1.93.1.1 2017/04/19 17:20:42 roberto Exp $
** Library for Table Manipulation
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/ltm.h
===================================================================
--- head/contrib/lua/src/ltm.h
+++ head/contrib/lua/src/ltm.h
@@ -1,5 +1,5 @@
/*
-** $Id: ltm.h,v 2.22 2016/02/26 19:20:15 roberto Exp $
+** $Id: ltm.h,v 2.22.1.1 2017/04/19 17:20:42 roberto Exp $
** Tag methods
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/ltm.c
===================================================================
--- head/contrib/lua/src/ltm.c
+++ head/contrib/lua/src/ltm.c
@@ -1,5 +1,5 @@
/*
-** $Id: ltm.c,v 2.38 2016/12/22 13:08:50 roberto Exp $
+** $Id: ltm.c,v 2.38.1.1 2017/04/19 17:39:34 roberto Exp $
** Tag methods
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lua.h
===================================================================
--- head/contrib/lua/src/lua.h
+++ head/contrib/lua/src/lua.h
@@ -1,5 +1,5 @@
/*
-** $Id: lua.h,v 1.332 2016/12/22 15:51:20 roberto Exp $
+** $Id: lua.h,v 1.332.1.2 2018/06/13 16:58:17 roberto Exp $
** Lua - A Scripting Language
** Lua.org, PUC-Rio, Brazil (http://www.lua.org)
** See Copyright Notice at the end of this file
@@ -19,11 +19,11 @@
#define LUA_VERSION_MAJOR "5"
#define LUA_VERSION_MINOR "3"
#define LUA_VERSION_NUM 503
-#define LUA_VERSION_RELEASE "4"
+#define LUA_VERSION_RELEASE "5"
#define LUA_VERSION "Lua " LUA_VERSION_MAJOR "." LUA_VERSION_MINOR
#define LUA_RELEASE LUA_VERSION "." LUA_VERSION_RELEASE
-#define LUA_COPYRIGHT LUA_RELEASE " Copyright (C) 1994-2017 Lua.org, PUC-Rio"
+#define LUA_COPYRIGHT LUA_RELEASE " Copyright (C) 1994-2018 Lua.org, PUC-Rio"
#define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo, W. Celes"
@@ -460,7 +460,7 @@
/******************************************************************************
-* Copyright (C) 1994-2017 Lua.org, PUC-Rio.
+* Copyright (C) 1994-2018 Lua.org, PUC-Rio.
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
Index: head/contrib/lua/src/lua.c
===================================================================
--- head/contrib/lua/src/lua.c
+++ head/contrib/lua/src/lua.c
@@ -1,5 +1,5 @@
/*
-** $Id: lua.c,v 1.230 2017/01/12 17:14:26 roberto Exp $
+** $Id: lua.c,v 1.230.1.1 2017/04/19 17:29:57 roberto Exp $
** Lua stand-alone interpreter
** See Copyright Notice in lua.h
*/
@@ -138,7 +138,7 @@
"Available options are:\n"
" -e stat execute string 'stat'\n"
" -i enter interactive mode after executing 'script'\n"
- " -l name require library 'name'\n"
+ " -l name require library 'name' into global 'name'\n"
" -v show version information\n"
" -E ignore environment variables\n"
" -- stop handling options\n"
Index: head/contrib/lua/src/luac.c
===================================================================
--- head/contrib/lua/src/luac.c
+++ head/contrib/lua/src/luac.c
@@ -1,5 +1,5 @@
/*
-** $Id: luac.c,v 1.75 2015/03/12 01:58:27 lhf Exp $
+** $Id: luac.c,v 1.76 2018/06/19 01:32:02 lhf Exp $
** Lua compiler (saves bytecodes to files; also lists bytecodes)
** See Copyright Notice in lua.h
*/
@@ -206,7 +206,7 @@
}
/*
-** $Id: luac.c,v 1.75 2015/03/12 01:58:27 lhf Exp $
+** $Id: luac.c,v 1.76 2018/06/19 01:32:02 lhf Exp $
** print bytecodes
** See Copyright Notice in lua.h
*/
@@ -348,6 +348,7 @@
case OP_ADD:
case OP_SUB:
case OP_MUL:
+ case OP_MOD:
case OP_POW:
case OP_DIV:
case OP_IDIV:
Index: head/contrib/lua/src/lualib.h
===================================================================
--- head/contrib/lua/src/lualib.h
+++ head/contrib/lua/src/lualib.h
@@ -1,5 +1,5 @@
/*
-** $Id: lualib.h,v 1.45 2017/01/12 17:14:26 roberto Exp $
+** $Id: lualib.h,v 1.45.1.1 2017/04/19 17:20:42 roberto Exp $
** Lua standard libraries
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lundump.h
===================================================================
--- head/contrib/lua/src/lundump.h
+++ head/contrib/lua/src/lundump.h
@@ -1,5 +1,5 @@
/*
-** $Id: lundump.h,v 1.45 2015/09/08 15:41:05 roberto Exp $
+** $Id: lundump.h,v 1.45.1.1 2017/04/19 17:20:42 roberto Exp $
** load precompiled Lua chunks
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lundump.c
===================================================================
--- head/contrib/lua/src/lundump.c
+++ head/contrib/lua/src/lundump.c
@@ -1,5 +1,5 @@
/*
-** $Id: lundump.c,v 2.44 2015/11/02 16:09:30 roberto Exp $
+** $Id: lundump.c,v 2.44.1.1 2017/04/19 17:20:42 roberto Exp $
** load precompiled Lua chunks
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lutf8lib.c
===================================================================
--- head/contrib/lua/src/lutf8lib.c
+++ head/contrib/lua/src/lutf8lib.c
@@ -1,5 +1,5 @@
/*
-** $Id: lutf8lib.c,v 1.16 2016/12/22 13:08:50 roberto Exp $
+** $Id: lutf8lib.c,v 1.16.1.1 2017/04/19 17:29:57 roberto Exp $
** Standard library for UTF-8 manipulation
** See Copyright Notice in lua.h
*/
@@ -171,7 +171,7 @@
}
else {
if (iscont(s + posi))
- luaL_error(L, "initial position is a continuation byte");
+ return luaL_error(L, "initial position is a continuation byte");
if (n < 0) {
while (n < 0 && posi > 0) { /* move back */
do { /* find beginning of previous character */
Index: head/contrib/lua/src/lvm.h
===================================================================
--- head/contrib/lua/src/lvm.h
+++ head/contrib/lua/src/lvm.h
@@ -1,5 +1,5 @@
/*
-** $Id: lvm.h,v 2.41 2016/12/22 13:08:50 roberto Exp $
+** $Id: lvm.h,v 2.41.1.1 2017/04/19 17:20:42 roberto Exp $
** Lua virtual machine
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lvm.c
===================================================================
--- head/contrib/lua/src/lvm.c
+++ head/contrib/lua/src/lvm.c
@@ -1,5 +1,5 @@
/*
-** $Id: lvm.c,v 2.268 2016/02/05 19:59:14 roberto Exp $
+** $Id: lvm.c,v 2.268.1.1 2017/04/19 17:39:34 roberto Exp $
** Lua virtual machine
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lzio.h
===================================================================
--- head/contrib/lua/src/lzio.h
+++ head/contrib/lua/src/lzio.h
@@ -1,5 +1,5 @@
/*
-** $Id: lzio.h,v 1.31 2015/09/08 15:41:05 roberto Exp $
+** $Id: lzio.h,v 1.31.1.1 2017/04/19 17:20:42 roberto Exp $
** Buffered streams
** See Copyright Notice in lua.h
*/
Index: head/contrib/lua/src/lzio.c
===================================================================
--- head/contrib/lua/src/lzio.c
+++ head/contrib/lua/src/lzio.c
@@ -1,5 +1,5 @@
/*
-** $Id: lzio.c,v 1.37 2015/09/08 15:41:05 roberto Exp $
+** $Id: lzio.c,v 1.37.1.1 2017/04/19 17:20:42 roberto Exp $
** Buffered streams
** See Copyright Notice in lua.h
*/
Index: head/stand/liblua/luaconf.h
===================================================================
--- head/stand/liblua/luaconf.h
+++ head/stand/liblua/luaconf.h
@@ -649,6 +649,13 @@
/*
+@@ lua_pointer2str converts a pointer to a readable string in a
+** non-specified way.
+*/
+#define lua_pointer2str(buff,sz,p) l_sprintf(buff,sz,"%p",p)
+
+
+/*
@@ lua_number2strx converts a float to an hexadecimal numeric string.
** In C99, 'sprintf' (with format specifiers '%a'/'%A') does that.
** Otherwise, you can leave 'lua_number2strx' undefined and Lua will
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Mon, Apr 20, 1:36 AM (6 h, 23 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31814386
Default Alt Text
D16665.id46720.diff (48 KB)
Attached To
Mode
D16665: contribu/lua: Update to 5.3.5
Attached
Detach File
Event Timeline
Log In to Comment