From owner-svn-src-head@freebsd.org Tue Aug 14 18:58:14 2018 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1C3AE1081A09; Tue, 14 Aug 2018 18:58:14 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C0CAB82373; Tue, 14 Aug 2018 18:58:13 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9CB7F1F894; Tue, 14 Aug 2018 18:58:13 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w7EIwDFr064331; Tue, 14 Aug 2018 18:58:13 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w7EIw2ha064272; Tue, 14 Aug 2018 18:58:02 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201808141858.w7EIw2ha064272@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Tue, 14 Aug 2018 18:58:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r337810 - in head: contrib/lua contrib/lua/doc contrib/lua/src stand/liblua X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in head: contrib/lua contrib/lua/doc contrib/lua/src stand/liblua X-SVN-Commit-Revision: 337810 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Aug 2018 18:58:14 -0000 Author: kevans Date: Tue Aug 14 18:58:01 2018 New Revision: 337810 URL: https://svnweb.freebsd.org/changeset/base/337810 Log: MFV r337586: lua: Update to 5.3.5 Bugfix release, nothing too major. Tested with: lualoader via userboot, lualoader live Differential Revision: https://reviews.freebsd.org/D16665 Modified: head/contrib/lua/README head/contrib/lua/doc/contents.html head/contrib/lua/doc/lua.css head/contrib/lua/doc/manual.html head/contrib/lua/doc/readme.html head/contrib/lua/src/Makefile head/contrib/lua/src/lapi.c head/contrib/lua/src/lapi.h head/contrib/lua/src/lauxlib.c head/contrib/lua/src/lauxlib.h head/contrib/lua/src/lbaselib.c head/contrib/lua/src/lbitlib.c head/contrib/lua/src/lcode.c head/contrib/lua/src/lcode.h head/contrib/lua/src/lcorolib.c head/contrib/lua/src/lctype.c head/contrib/lua/src/lctype.h head/contrib/lua/src/ldblib.c head/contrib/lua/src/ldebug.c head/contrib/lua/src/ldebug.h head/contrib/lua/src/ldo.c head/contrib/lua/src/ldo.h head/contrib/lua/src/ldump.c head/contrib/lua/src/lfunc.c head/contrib/lua/src/lfunc.h head/contrib/lua/src/lgc.c head/contrib/lua/src/lgc.h head/contrib/lua/src/linit.c head/contrib/lua/src/liolib.c head/contrib/lua/src/llex.c head/contrib/lua/src/llex.h head/contrib/lua/src/llimits.h head/contrib/lua/src/lmathlib.c head/contrib/lua/src/lmem.c head/contrib/lua/src/lmem.h head/contrib/lua/src/loadlib.c head/contrib/lua/src/lobject.c head/contrib/lua/src/lobject.h head/contrib/lua/src/lopcodes.c head/contrib/lua/src/lopcodes.h head/contrib/lua/src/loslib.c head/contrib/lua/src/lparser.c head/contrib/lua/src/lparser.h head/contrib/lua/src/lprefix.h head/contrib/lua/src/lstate.c head/contrib/lua/src/lstate.h head/contrib/lua/src/lstring.c head/contrib/lua/src/lstring.h head/contrib/lua/src/lstrlib.c head/contrib/lua/src/ltable.c head/contrib/lua/src/ltable.h head/contrib/lua/src/ltablib.c head/contrib/lua/src/ltm.c head/contrib/lua/src/ltm.h head/contrib/lua/src/lua.c head/contrib/lua/src/lua.h head/contrib/lua/src/luac.c head/contrib/lua/src/lualib.h head/contrib/lua/src/lundump.c head/contrib/lua/src/lundump.h head/contrib/lua/src/lutf8lib.c head/contrib/lua/src/lvm.c head/contrib/lua/src/lvm.h head/contrib/lua/src/lzio.c head/contrib/lua/src/lzio.h head/stand/liblua/luaconf.h Directory Properties: head/contrib/lua/ (props changed) Modified: head/contrib/lua/README ============================================================================== --- head/contrib/lua/README Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/README Tue Aug 14 18:58:01 2018 (r337810) @@ -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. Modified: head/contrib/lua/doc/contents.html ============================================================================== --- head/contrib/lua/doc/contents.html Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/doc/contents.html Tue Aug 14 18:58:01 2018 (r337810) @@ -32,7 +32,7 @@ For a complete introduction to Lua programming, see th

-Copyright © 2015–2017 Lua.org, PUC-Rio. +Copyright © 2015–2018 Lua.org, PUC-Rio. Freely available under the terms of the Lua license. @@ -609,10 +609,10 @@ Freely available under the terms of the

Modified: head/contrib/lua/doc/lua.css ============================================================================== --- head/contrib/lua/doc/lua.css Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/doc/lua.css Tue Aug 14 18:58:01 2018 (r337810) @@ -10,7 +10,7 @@ body { 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 @@ pre.session { 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 @@ table.book span { text-align: left ; display: block ; margin-top: 0.25em ; +} + +p.logos a:link:hover, p.logos a:visited:hover { + background-color: inherit ; } img { Modified: head/contrib/lua/doc/manual.html ============================================================================== --- head/contrib/lua/doc/manual.html Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/doc/manual.html Tue Aug 14 18:58:01 2018 (r337810) @@ -19,7 +19,7 @@ by Roberto Ierusalimschy, Luiz Henrique de Figueiredo,

-Copyright © 2015–2017 Lua.org, PUC-Rio. +Copyright © 2015–2018 Lua.org, PUC-Rio. Freely available under the terms of the Lua license. @@ -35,7 +35,7 @@ Freely available under the terms of the

- + @@ -203,8 +203,8 @@ even those that do not support threads natively.

The type table implements associative arrays, -that is, arrays that can be indexed not only with numbers, -but with any Lua value except nil and NaN. +that is, arrays that can have as indices not only numbers, +but any Lua value except nil and NaN. (Not a Number is a special value used to represent undefined or unrepresentable numerical results, such as 0/0.) Tables can be heterogeneous; @@ -400,6 +400,8 @@ with the event name prefixed by two underscores; the corresponding values are called metamethods. In the previous example, the key is "__add" and the metamethod is the function that performs the addition. +Unless stated otherwise, +metamethods should be function values.

@@ -597,7 +599,7 @@ it is also slower than a real __le metame

  • __index: -The indexing access table[key]. +The indexing access operation table[key]. This event happens when table is not a table or when key is not present in table. The metamethod is looked up in table. @@ -1276,13 +1278,8 @@ Square brackets are used to index a table:
     	var ::= prefixexp ‘[’ exp ‘]

    -The meaning of accesses to table fields can be changed via metatables. -An access to an indexed variable t[i] is equivalent to -a call gettable_event(t,i). -(See §2.4 for a complete description of the -gettable_event 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 §2.4).

    @@ -1477,25 +1474,20 @@ cyclically permutes the values of x, -The meaning of assignments to global variables -and table fields can be changed via metatables. -An assignment to an indexed variable t[i] = val is equivalent to -settable_event(t,i,val). -(See §2.4 for a complete description of the -settable_event function. -This function is not defined or callable in Lua. -We use it here only for explanatory purposes.) - - -

    An assignment to a global name x = val is equivalent to the assignment _ENV.x = val (see §2.2). +

    +The meaning of assignments to table fields and +global variables (which are actually table fields, too) +can be changed via metatables (see §2.4). + +

    3.3.4 – Control Structures

    The control structures if, while, and repeat have the usual meaning and @@ -1831,17 +1823,17 @@ Here are some examples: 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 @@ -2039,9 +2031,12 @@ two objects are considered equal only if they are the 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).

    @@ -2303,7 +2298,7 @@ If the value of prefixexp has type function, 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 §2.4). @@ -2881,7 +2876,7 @@ it can do whatever it wants on that Lua state, 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 lua_newthread), it should use them only in API calls that cannot raise errors. @@ -3370,7 +3365,7 @@ it is left unchanged. 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 @@ given as argument to a hook (see <

    -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 what string with the character '>'. (In that case, lua_getinfo pops the function from the top of the stack.) @@ -6462,7 +6457,7 @@ file-related functions in the standard library

    Pushes onto the stack the field e from the metatable -of the object at index obj and returns the type of pushed value. +of the object at index obj 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 LUA_TNIL. @@ -6749,7 +6744,7 @@ In words, if the argument arg is nil or a the macro results in the default dflt. Otherwise, it results in the result of calling func with the state L and the argument index arg as -parameters. +arguments. Note that it evaluates the expression dflt only if needed. @@ -8680,7 +8675,7 @@ the lowercase letters plus the '-' charac

    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 @@ Returns the destination table a2.

    -Returns a new table with all parameters stored into keys 1, 2, etc. -and with a field "n" with the total number of parameters. +Returns a new table with all arguments stored into keys 1, 2, etc. +and with a field "n" with the total number of arguments. Note that the resulting table may not be a sequence. @@ -9215,7 +9210,7 @@ Returns the arc sine of x (in radians).

    Returns the arc tangent of y/x (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 x being zero.) @@ -9516,7 +9511,7 @@ all I/O functions return nil on failure (plus an error message as a second result and a system-dependent error code as a third result) and some value different from nil 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 @@ When called with a file name, it opens the named file 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 @@ it returns no values (to finish the loop) and automati The call io.lines() (with no file name) is equivalent to io.input():lines("*l"); 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.

    @@ -9963,7 +9958,7 @@ the host system and on the current locale.

    -On non-POSIX systems, +In non-POSIX systems, this function may be not thread safe because of its reliance on C function gmtime and C function localtime. @@ -10163,7 +10158,7 @@ and explicitly removed when no longer needed.

    -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 @@ The first parameter or local variable has index 1 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 nil if there is no variable with the given index, and raises an error when called with a level out of range. (You can call debug.getinfo to check whether the level is valid.) @@ -10400,7 +10395,7 @@ When called without arguments,

    -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: "call" (or "tail call"), "return", @@ -10551,7 +10546,8 @@ The options are:

    • -e stat: executes string stat;
    • -
    • -l mod: "requires" mod;
    • +
    • -l mod: "requires" mod and assigns the + result to global @mod;
    • -i: enters interactive mode after running script;
    • -v: prints version information;
    • -E: ignores environment variables;
    • @@ -10629,7 +10625,7 @@ For instance, the call

      will print "-e". If there is a script, -the script is called with parameters +the script is called with arguments arg[1], ···, arg[#arg]. (Like all chunks in Lua, the script is compiled as a vararg function.) @@ -10815,7 +10811,7 @@ The following functions were deprecated in the mathema frexp, and ldexp. You can replace math.pow(x,y) with x^y; you can replace math.atan2 with math.atan, -which now accepts one or two parameters; +which now accepts one or two arguments; you can replace math.ldexp(x,exp) with x * 2.0^exp. For the other operations, you can either use an external library or @@ -10850,7 +10846,7 @@ of the first result.)

      • -Continuation functions now receive as parameters what they needed +Continuation functions now receive as arguments what they needed to get through lua_getctx, so lua_getctx has been removed. Adapt your code accordingly. @@ -10973,12 +10969,13 @@ and LiteralString, see §3.1.) + Modified: head/contrib/lua/doc/readme.html ============================================================================== --- head/contrib/lua/doc/readme.html Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/doc/readme.html Tue Aug 14 18:58:01 2018 (r337810) @@ -107,7 +107,7 @@ Here are the details.
        1. Open a terminal window and move to -the top-level directory, which is named lua-5.3.x. +the top-level directory, which is named lua-5.3.5. The Makefile there controls both the build process and the installation process.

        2. @@ -355,10 +355,10 @@ THE SOFTWARE. Modified: head/contrib/lua/src/Makefile ============================================================================== --- head/contrib/lua/src/Makefile Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/Makefile Tue Aug 14 18:58:01 2018 (r337810) @@ -102,7 +102,7 @@ c89: 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 @@ linux: $(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" \ Modified: head/contrib/lua/src/lapi.c ============================================================================== --- head/contrib/lua/src/lapi.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lapi.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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_API void lua_pushcclosure (lua_State *L, lua_CFunc lua_lock(L); if (n == 0) { setfvalue(L->top, fn); + api_incr_top(L); } else { CClosure *cl; @@ -546,9 +547,9 @@ LUA_API void lua_pushcclosure (lua_State *L, lua_CFunc /* 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); } Modified: head/contrib/lua/src/lapi.h ============================================================================== --- head/contrib/lua/src/lapi.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lapi.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lauxlib.c ============================================================================== --- head/contrib/lua/src/lauxlib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lauxlib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lauxlib.h ============================================================================== --- head/contrib/lua/src/lauxlib.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lauxlib.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lbaselib.c ============================================================================== --- head/contrib/lua/src/lbaselib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lbaselib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lbitlib.c ============================================================================== --- head/contrib/lua/src/lbitlib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lbitlib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lcode.c ============================================================================== --- head/contrib/lua/src/lcode.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lcode.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lcode.h ============================================================================== --- head/contrib/lua/src/lcode.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lcode.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lcorolib.c ============================================================================== --- head/contrib/lua/src/lcorolib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lcorolib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lctype.c ============================================================================== --- head/contrib/lua/src/lctype.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lctype.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lctype.h ============================================================================== --- head/contrib/lua/src/lctype.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lctype.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/ldblib.c ============================================================================== --- head/contrib/lua/src/ldblib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/ldblib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/ldebug.c ============================================================================== --- head/contrib/lua/src/ldebug.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/ldebug.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 @@ l_noret luaG_runerror (lua_State *L, const char *fmt, 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); Modified: head/contrib/lua/src/ldebug.h ============================================================================== --- head/contrib/lua/src/ldebug.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/ldebug.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/ldo.c ============================================================================== --- head/contrib/lua/src/ldo.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/ldo.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/ldo.h ============================================================================== --- head/contrib/lua/src/ldo.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/ldo.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/ldump.c ============================================================================== --- head/contrib/lua/src/ldump.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/ldump.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lfunc.c ============================================================================== --- head/contrib/lua/src/lfunc.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lfunc.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lfunc.h ============================================================================== --- head/contrib/lua/src/lfunc.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lfunc.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lgc.c ============================================================================== --- head/contrib/lua/src/lgc.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lgc.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 @@ static void clearkeys (global_State *g, GCObject *l, G 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 */ } } } Modified: head/contrib/lua/src/lgc.h ============================================================================== --- head/contrib/lua/src/lgc.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lgc.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/linit.c ============================================================================== --- head/contrib/lua/src/linit.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/linit.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/liolib.c ============================================================================== --- head/contrib/lua/src/liolib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/liolib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 aux_close (lua_State *L) { } +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 @@ static const luaL_Reg iolib[] = { ** methods for file handles */ static const luaL_Reg flib[] = { - {"close", io_close}, + {"close", f_close}, {"flush", f_flush}, {"lines", f_lines}, {"read", f_read}, Modified: head/contrib/lua/src/llex.c ============================================================================== --- head/contrib/lua/src/llex.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/llex.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/llex.h ============================================================================== --- head/contrib/lua/src/llex.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/llex.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/llimits.h ============================================================================== --- head/contrib/lua/src/llimits.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/llimits.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lmathlib.c ============================================================================== --- head/contrib/lua/src/lmathlib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lmathlib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lmem.c ============================================================================== --- head/contrib/lua/src/lmem.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lmem.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lmem.h ============================================================================== --- head/contrib/lua/src/lmem.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lmem.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/loadlib.c ============================================================================== --- head/contrib/lua/src/loadlib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/loadlib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 ** Modified: head/contrib/lua/src/lobject.c ============================================================================== --- head/contrib/lua/src/lobject.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lobject.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 @@ const char *luaO_pushvfstring (lua_State *L, const cha } 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; } Modified: head/contrib/lua/src/lobject.h ============================================================================== --- head/contrib/lua/src/lobject.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lobject.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lopcodes.c ============================================================================== --- head/contrib/lua/src/lopcodes.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lopcodes.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lopcodes.h ============================================================================== --- head/contrib/lua/src/lopcodes.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lopcodes.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/loslib.c ============================================================================== --- head/contrib/lua/src/loslib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/loslib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 @@ static int os_date (lua_State *L) { 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 @@ static int os_time (lua_State *L) { 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; } Modified: head/contrib/lua/src/lparser.c ============================================================================== --- head/contrib/lua/src/lparser.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lparser.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 @@ static void test_then_block (LexState *ls, int *escape 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 */ Modified: head/contrib/lua/src/lparser.h ============================================================================== --- head/contrib/lua/src/lparser.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lparser.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lprefix.h ============================================================================== --- head/contrib/lua/src/lprefix.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lprefix.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lstate.c ============================================================================== --- head/contrib/lua/src/lstate.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lstate.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lstate.h ============================================================================== --- head/contrib/lua/src/lstate.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lstate.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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. */ Modified: head/contrib/lua/src/lstring.c ============================================================================== --- head/contrib/lua/src/lstring.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lstring.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lstring.h ============================================================================== --- head/contrib/lua/src/lstring.h Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lstring.h Tue Aug 14 18:58:01 2018 (r337810) @@ -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 */ Modified: head/contrib/lua/src/lstrlib.c ============================================================================== --- head/contrib/lua/src/lstrlib.c Tue Aug 14 18:45:25 2018 (r337809) +++ head/contrib/lua/src/lstrlib.c Tue Aug 14 18:58:01 2018 (r337810) @@ -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 @@ static int lua_number2strx (lua_State *L, char *buff, buff[i] = toupper(uchar(buff[i])); *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***