diff options
author | Peter Drahoš <drahosp@gmail.com> | 2012-03-09 15:29:03 +0100 |
---|---|---|
committer | Peter Drahoš <drahosp@gmail.com> | 2012-03-09 15:29:03 +0100 |
commit | 1285f9a97c14116891c922b047594eb2175e5b1b (patch) | |
tree | 7282c20d4b36862a13a2f4fee812062331346058 | |
parent | 068edf316ea60ba0d32c4e50af3b9e1711876aa2 (diff) | |
download | lua-1285f9a97c14116891c922b047594eb2175e5b1b.tar.gz |
Lua 5.1.5 update using official release package.
-rw-r--r-- | COPYRIGHT | 2 | ||||
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | README | 15 | ||||
-rw-r--r-- | dist.info | 2 | ||||
-rw-r--r-- | doc/amazon.gif | bin | 797 -> 0 bytes | |||
-rw-r--r-- | doc/contents.html | 160 | ||||
-rw-r--r-- | doc/lua.css | 48 | ||||
-rw-r--r-- | doc/manual.css | 15 | ||||
-rw-r--r-- | doc/manual.html | 31 | ||||
-rw-r--r-- | doc/readme.html | 4 | ||||
-rw-r--r-- | etc/lua.pc | 2 | ||||
-rw-r--r-- | src/Makefile | 2 | ||||
-rw-r--r-- | src/lbaselib.c | 2 | ||||
-rw-r--r-- | src/ldo.c | 3 | ||||
-rw-r--r-- | src/lgc.c | 3 | ||||
-rw-r--r-- | src/lparser.c | 4 | ||||
-rw-r--r-- | src/lua.h | 8 | ||||
-rw-r--r-- | src/lvm.c | 3 |
18 files changed, 176 insertions, 130 deletions
@@ -9,7 +9,7 @@ For details and rationale, see http://www.lua.org/license.html . =============================================================================== -Copyright (C) 1994-2008 Lua.org, PUC-Rio. +Copyright (C) 1994-2012 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 "Software"), to deal @@ -48,7 +48,7 @@ TO_MAN= lua.1 luac.1 # Lua version and release. V= 5.1 -R= 5.1.4 +R= 5.1.5 all: $(PLAT) @@ -23,18 +23,9 @@ See HISTORY for a summary of changes since the last released version. * Installation ------------ - In the LuaDist distribution the default makefiles have been replaced with - CMake. To build Lua use the following approach. - > mkdir _build && cd_build - > ccmake .. # Set up configuration, alternatively use cmake-gui on Windows. - > cmake --build . --target install - - The default makefile should work too, you just need to edit src/luaconf.h.orig - and save it as src/luaconf.h. - - > make - - See INSTALL for detailed instructions with make. + Lua is implemented in pure ANSI C, and compiles unmodified in all known + platforms that have an ANSI C compiler. In most Unix-like platforms, simply + do "make" with a suitable target. See INSTALL for detailed instructions. * Origin ------ @@ -1,7 +1,7 @@ --- This file is part of LuaDist project name = "lua" -version = "5.1.4" +version = "5.1.5" desc = "Lua is a powerful, fast, light-weight, embeddable scripting language." author = "Roberto Ierusalimschy, Waldemar Celes, Luiz Henrique de Figueiredo" diff --git a/doc/amazon.gif b/doc/amazon.gif Binary files differdeleted file mode 100644 index f2586d5..0000000 --- a/doc/amazon.gif +++ /dev/null diff --git a/doc/contents.html b/doc/contents.html index 8e58e18..3d83da9 100644 --- a/doc/contents.html +++ b/doc/contents.html @@ -3,11 +3,10 @@ <HEAD> <TITLE>Lua 5.1 Reference Manual - contents</TITLE> <LINK REL="stylesheet" TYPE="text/css" HREF="lua.css"> -<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1"> +<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8"> <STYLE TYPE="text/css"> ul { list-style-type: none ; - list-style-position: outside ; } </STYLE> </HEAD> @@ -20,7 +19,13 @@ ul { Lua 5.1 Reference Manual </H1> -This is an online version of +<P> +The reference manual is the official definition of the Lua language. +For a complete introduction to Lua programming, see the book +<A HREF="http://www.lua.org/docs.html#pil">Programming in Lua</A>. + +<P> +This manual is also available as a book: <BLOCKQUOTE> <A HREF="http://www.amazon.com/exec/obidos/ASIN/8590379833/lua-indexmanual-20"> <IMG SRC="cover.png" ALT="" TITLE="buy from Amazon" BORDER=1 ALIGN="left" HSPACE=12> @@ -29,128 +34,119 @@ This is an online version of <BR>by R. Ierusalimschy, L. H. de Figueiredo, W. Celes <BR>Lua.org, August 2006 <BR>ISBN 85-903798-3-3 -<BR><A HREF="http://www.amazon.com/exec/obidos/ASIN/8590379833/lua-indexmanual-20"> -<IMG SRC="amazon.gif" ALT="[Buy from Amazon]" BORDER=0></A> <BR CLEAR="all"> </BLOCKQUOTE> -<P> -Buy a copy of this book and +<P> +<A HREF="http://www.amazon.com/exec/obidos/ASIN/8590379833/lua-indexmanual-20">Buy a copy</A> +of this book and <A HREF="http://www.lua.org/donations.html">help to support</A> the Lua project. -<P> -The reference manual is the official definition of the Lua language. -For a complete introduction to Lua programming, see the book -<A HREF="http://www.lua.org/docs.html#books">Programming in Lua</A>. <P> - <A HREF="manual.html">start</A> · <A HREF="#contents">contents</A> · <A HREF="#index">index</A> · -<A HREF="http://www.lua.org/manual/5.1/pt/">português</A> -· -<A HREF="http://www.lua.org/manual/5.1/es/">español</A> +<A HREF="http://www.lua.org/manual/">other versions</A> <HR> <SMALL> -Copyright © 2006-2008 Lua.org, PUC-Rio. +Copyright © 2006–2012 Lua.org, PUC-Rio. Freely available under the terms of the -<a href="http://www.lua.org/license.html#5">Lua license</a>. +<A HREF="http://www.lua.org/license.html">Lua license</A>. </SMALL> -<P> <H2><A NAME="contents">Contents</A></H2> <UL style="padding: 0"> -<LI><A HREF="manual.html">1 - Introduction</A> +<LI><A HREF="manual.html">1 – Introduction</A> <P> -<LI><A HREF="manual.html#2">2 - The Language</A> +<LI><A HREF="manual.html#2">2 – The Language</A> <UL> -<LI><A HREF="manual.html#2.1">2.1 - Lexical Conventions</A> -<LI><A HREF="manual.html#2.2">2.2 - Values and Types</A> +<LI><A HREF="manual.html#2.1">2.1 – Lexical Conventions</A> +<LI><A HREF="manual.html#2.2">2.2 – Values and Types</A> <UL> -<LI><A HREF="manual.html#2.2.1">2.2.1 - Coercion</A> +<LI><A HREF="manual.html#2.2.1">2.2.1 – Coercion</A> </UL> -<LI><A HREF="manual.html#2.3">2.3 - Variables</A> -<LI><A HREF="manual.html#2.4">2.4 - Statements</A> +<LI><A HREF="manual.html#2.3">2.3 – Variables</A> +<LI><A HREF="manual.html#2.4">2.4 – Statements</A> <UL> -<LI><A HREF="manual.html#2.4.1">2.4.1 - Chunks</A> -<LI><A HREF="manual.html#2.4.2">2.4.2 - Blocks</A> -<LI><A HREF="manual.html#2.4.3">2.4.3 - Assignment</A> -<LI><A HREF="manual.html#2.4.4">2.4.4 - Control Structures</A> -<LI><A HREF="manual.html#2.4.5">2.4.5 - For Statement</A> -<LI><A HREF="manual.html#2.4.6">2.4.6 - Function Calls as Statements</A> -<LI><A HREF="manual.html#2.4.7">2.4.7 - Local Declarations</A> +<LI><A HREF="manual.html#2.4.1">2.4.1 – Chunks</A> +<LI><A HREF="manual.html#2.4.2">2.4.2 – Blocks</A> +<LI><A HREF="manual.html#2.4.3">2.4.3 – Assignment</A> +<LI><A HREF="manual.html#2.4.4">2.4.4 – Control Structures</A> +<LI><A HREF="manual.html#2.4.5">2.4.5 – For Statement</A> +<LI><A HREF="manual.html#2.4.6">2.4.6 – Function Calls as Statements</A> +<LI><A HREF="manual.html#2.4.7">2.4.7 – Local Declarations</A> </UL> -<LI><A HREF="manual.html#2.5">2.5 - Expressions</A> +<LI><A HREF="manual.html#2.5">2.5 – Expressions</A> <UL> -<LI><A HREF="manual.html#2.5.1">2.5.1 - Arithmetic Operators</A> -<LI><A HREF="manual.html#2.5.2">2.5.2 - Relational Operators</A> -<LI><A HREF="manual.html#2.5.3">2.5.3 - Logical Operators</A> -<LI><A HREF="manual.html#2.5.4">2.5.4 - Concatenation</A> -<LI><A HREF="manual.html#2.5.5">2.5.5 - The Length Operator</A> -<LI><A HREF="manual.html#2.5.6">2.5.6 - Precedence</A> -<LI><A HREF="manual.html#2.5.7">2.5.7 - Table Constructors</A> -<LI><A HREF="manual.html#2.5.8">2.5.8 - Function Calls</A> -<LI><A HREF="manual.html#2.5.9">2.5.9 - Function Definitions</A> +<LI><A HREF="manual.html#2.5.1">2.5.1 – Arithmetic Operators</A> +<LI><A HREF="manual.html#2.5.2">2.5.2 – Relational Operators</A> +<LI><A HREF="manual.html#2.5.3">2.5.3 – Logical Operators</A> +<LI><A HREF="manual.html#2.5.4">2.5.4 – Concatenation</A> +<LI><A HREF="manual.html#2.5.5">2.5.5 – The Length Operator</A> +<LI><A HREF="manual.html#2.5.6">2.5.6 – Precedence</A> +<LI><A HREF="manual.html#2.5.7">2.5.7 – Table Constructors</A> +<LI><A HREF="manual.html#2.5.8">2.5.8 – Function Calls</A> +<LI><A HREF="manual.html#2.5.9">2.5.9 – Function Definitions</A> </UL> -<LI><A HREF="manual.html#2.6">2.6 - Visibility Rules</A> -<LI><A HREF="manual.html#2.7">2.7 - Error Handling</A> -<LI><A HREF="manual.html#2.8">2.8 - Metatables</A> -<LI><A HREF="manual.html#2.9">2.9 - Environments</A> -<LI><A HREF="manual.html#2.10">2.10 - Garbage Collection</A> +<LI><A HREF="manual.html#2.6">2.6 – Visibility Rules</A> +<LI><A HREF="manual.html#2.7">2.7 – Error Handling</A> +<LI><A HREF="manual.html#2.8">2.8 – Metatables</A> +<LI><A HREF="manual.html#2.9">2.9 – Environments</A> +<LI><A HREF="manual.html#2.10">2.10 – Garbage Collection</A> <UL> -<LI><A HREF="manual.html#2.10.1">2.10.1 - Garbage-Collection Metamethods</A> -<LI><A HREF="manual.html#2.10.2">2.10.2 - Weak Tables</A> +<LI><A HREF="manual.html#2.10.1">2.10.1 – Garbage-Collection Metamethods</A> +<LI><A HREF="manual.html#2.10.2">2.10.2 – Weak Tables</A> </UL> -<LI><A HREF="manual.html#2.11">2.11 - Coroutines</A> +<LI><A HREF="manual.html#2.11">2.11 – Coroutines</A> </UL> <P> -<LI><A HREF="manual.html#3">3 - The Application Program Interface</A> +<LI><A HREF="manual.html#3">3 – The Application Program Interface</A> <UL> -<LI><A HREF="manual.html#3.1">3.1 - The Stack</A> -<LI><A HREF="manual.html#3.2">3.2 - Stack Size</A> -<LI><A HREF="manual.html#3.3">3.3 - Pseudo-Indices</A> -<LI><A HREF="manual.html#3.4">3.4 - C Closures</A> -<LI><A HREF="manual.html#3.5">3.5 - Registry</A> -<LI><A HREF="manual.html#3.6">3.6 - Error Handling in C</A> -<LI><A HREF="manual.html#3.7">3.7 - Functions and Types</A> -<LI><A HREF="manual.html#3.8">3.8 - The Debug Interface</A> +<LI><A HREF="manual.html#3.1">3.1 – The Stack</A> +<LI><A HREF="manual.html#3.2">3.2 – Stack Size</A> +<LI><A HREF="manual.html#3.3">3.3 – Pseudo-Indices</A> +<LI><A HREF="manual.html#3.4">3.4 – C Closures</A> +<LI><A HREF="manual.html#3.5">3.5 – Registry</A> +<LI><A HREF="manual.html#3.6">3.6 – Error Handling in C</A> +<LI><A HREF="manual.html#3.7">3.7 – Functions and Types</A> +<LI><A HREF="manual.html#3.8">3.8 – The Debug Interface</A> </UL> <P> -<LI><A HREF="manual.html#4">4 - The Auxiliary Library</A> +<LI><A HREF="manual.html#4">4 – The Auxiliary Library</A> <UL> -<LI><A HREF="manual.html#4.1">4.1 - Functions and Types</A> +<LI><A HREF="manual.html#4.1">4.1 – Functions and Types</A> </UL> <P> -<LI><A HREF="manual.html#5">5 - Standard Libraries</A> +<LI><A HREF="manual.html#5">5 – Standard Libraries</A> <UL> -<LI><A HREF="manual.html#5.1">5.1 - Basic Functions</A> -<LI><A HREF="manual.html#5.2">5.2 - Coroutine Manipulation</A> -<LI><A HREF="manual.html#5.3">5.3 - Modules</A> -<LI><A HREF="manual.html#5.4">5.4 - String Manipulation</A> +<LI><A HREF="manual.html#5.1">5.1 – Basic Functions</A> +<LI><A HREF="manual.html#5.2">5.2 – Coroutine Manipulation</A> +<LI><A HREF="manual.html#5.3">5.3 – Modules</A> +<LI><A HREF="manual.html#5.4">5.4 – String Manipulation</A> <UL> -<LI><A HREF="manual.html#5.4.1">5.4.1 - Patterns</A> +<LI><A HREF="manual.html#5.4.1">5.4.1 – Patterns</A> </UL> -<LI><A HREF="manual.html#5.5">5.5 - Table Manipulation</A> -<LI><A HREF="manual.html#5.6">5.6 - Mathematical Functions</A> -<LI><A HREF="manual.html#5.7">5.7 - Input and Output Facilities</A> -<LI><A HREF="manual.html#5.8">5.8 - Operating System Facilities</A> -<LI><A HREF="manual.html#5.9">5.9 - The Debug Library</A> +<LI><A HREF="manual.html#5.5">5.5 – Table Manipulation</A> +<LI><A HREF="manual.html#5.6">5.6 – Mathematical Functions</A> +<LI><A HREF="manual.html#5.7">5.7 – Input and Output Facilities</A> +<LI><A HREF="manual.html#5.8">5.8 – Operating System Facilities</A> +<LI><A HREF="manual.html#5.9">5.9 – The Debug Library</A> </UL> <P> -<LI><A HREF="manual.html#6">6 - Lua Stand-alone</A> +<LI><A HREF="manual.html#6">6 – Lua Stand-alone</A> <P> -<LI><A HREF="manual.html#7">7 - Incompatibilities with the Previous Version</A> +<LI><A HREF="manual.html#7">7 – Incompatibilities with the Previous Version</A> <UL> -<LI><A HREF="manual.html#7.1">7.1 - Changes in the Language</A> -<LI><A HREF="manual.html#7.2">7.2 - Changes in the Libraries</A> -<LI><A HREF="manual.html#7.3">7.3 - Changes in the API</A> +<LI><A HREF="manual.html#7.1">7.1 – Changes in the Language</A> +<LI><A HREF="manual.html#7.2">7.2 – Changes in the Libraries</A> +<LI><A HREF="manual.html#7.3">7.3 – Changes in the API</A> </UL> <P> -<LI><A HREF="manual.html#8">8 - The Complete Syntax of Lua</A> +<LI><A HREF="manual.html#8">8 – The Complete Syntax of Lua</A> </UL> <H2><A NAME="index">Index</A></H2> @@ -160,6 +156,8 @@ Freely available under the terms of the <H3><A NAME="functions">Lua functions</A></H3> <A HREF="manual.html#pdf-_G">_G</A><BR> <A HREF="manual.html#pdf-_VERSION">_VERSION</A><BR> +<P> + <A HREF="manual.html#pdf-assert">assert</A><BR> <A HREF="manual.html#pdf-collectgarbage">collectgarbage</A><BR> <A HREF="manual.html#pdf-dofile">dofile</A><BR> @@ -487,12 +485,12 @@ Freely available under the terms of the <P> <HR> -<SMALL> +<SMALL CLASS="footer"> Last update: -Sat Jan 19 13:24:29 BRST 2008 +Mon Feb 13 18:53:32 BRST 2012 </SMALL> <!-- -Last change: revised for Lua 5.1.3 +Last change: revised for Lua 5.1.5 --> </BODY> diff --git a/doc/lua.css b/doc/lua.css index 039cf11..7fafbb1 100644 --- a/doc/lua.css +++ b/doc/lua.css @@ -1,17 +1,37 @@ body { color: #000000 ; background-color: #FFFFFF ; - font-family: sans-serif ; + font-family: Helvetica, Arial, sans-serif ; text-align: justify ; - margin-right: 20px ; - margin-left: 20px ; + margin-right: 30px ; + margin-left: 30px ; } h1, h2, h3, h4 { + font-family: Verdana, Geneva, sans-serif ; font-weight: normal ; font-style: italic ; } +h2 { + padding-top: 0.4em ; + padding-bottom: 0.4em ; + padding-left: 30px ; + padding-right: 30px ; + margin-left: -30px ; + background-color: #E0E0FF ; +} + +h3 { + padding-left: 0.5em ; + border-left: solid #E0E0FF 1em ; +} + +table h3 { + padding-left: 0px ; + border-left: none ; +} + a:link { color: #000080 ; background-color: inherit ; @@ -39,3 +59,25 @@ hr { background-color: #a0a0a0 ; } +:target { + background-color: #F8F8F8 ; + padding: 8px ; + border: solid #a0a0a0 2px ; +} + +.footer { + color: gray ; + font-size: small ; +} + +input[type=text] { + border: solid #a0a0a0 2px ; + border-radius: 2em ; + -moz-border-radius: 2em ; + background-image: url('images/search.png') ; + background-repeat: no-repeat; + background-position: 4px center ; + padding-left: 20px ; + height: 2em ; +} + diff --git a/doc/manual.css b/doc/manual.css index eed5afd..b49b362 100644 --- a/doc/manual.css +++ b/doc/manual.css @@ -1,13 +1,24 @@ h3 code { font-family: inherit ; + font-size: inherit ; } -pre { - font-size: 105% ; +pre, code { + font-size: 12pt ; } span.apii { float: right ; font-family: inherit ; + font-style: normal ; + font-size: small ; + color: gray ; } +p+h1, ul+h1 { + padding-top: 0.4em ; + padding-bottom: 0.4em ; + padding-left: 30px ; + margin-left: -30px ; + background-color: #E0E0FF ; +} diff --git a/doc/manual.html b/doc/manual.html index f46f17c..4e41683 100644 --- a/doc/manual.html +++ b/doc/manual.html @@ -19,9 +19,9 @@ Lua 5.1 Reference Manual by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes <p> <small> -Copyright © 2006-2008 Lua.org, PUC-Rio. +Copyright © 2006–2012 Lua.org, PUC-Rio. Freely available under the terms of the -<a href="http://www.lua.org/license.html#5">Lua license</a>. +<a href="http://www.lua.org/license.html">Lua license</a>. </small> <hr> <p> @@ -29,11 +29,13 @@ Freely available under the terms of the <a href="contents.html#contents">contents</A> · <a href="contents.html#index">index</A> +· +<A HREF="http://www.lua.org/manual/">other versions</A> <!-- ====================================================================== --> <p> -<!-- $Id: manual.of,v 1.48 2008/08/18 15:24:20 roberto Exp $ --> +<!-- $Id: manual.of,v 1.49.1.2 2012/01/13 20:23:26 roberto Exp $ --> @@ -5645,7 +5647,7 @@ Currently, Lua has the following standard libraries: <ul> -<li>basic library,</li> which includes the coroutine sub-library; +<li>basic library, which includes the coroutine sub-library;</li> <li>package library;</li> @@ -5709,7 +5711,7 @@ when absent, it defaults to "assertion failed!" <p> -<hr><h3><a name="pdf-collectgarbage"><code>collectgarbage (opt [, arg])</code></a></h3> +<hr><h3><a name="pdf-collectgarbage"><code>collectgarbage ([opt [, arg]])</code></a></h3> <p> @@ -5718,6 +5720,11 @@ It performs different functions according to its first argument, <code>opt</code <ul> +<li><b>"collect":</b> +performs a full garbage-collection cycle. +This is the default option. +</li> + <li><b>"stop":</b> stops the garbage collector. </li> @@ -5726,10 +5733,6 @@ stops the garbage collector. restarts the garbage collector. </li> -<li><b>"collect":</b> -performs a full garbage-collection cycle. -</li> - <li><b>"count":</b> returns the total memory in use by Lua (in Kbytes). </li> @@ -5760,7 +5763,7 @@ Returns the previous value for <em>step</em>. <p> -<hr><h3><a name="pdf-dofile"><code>dofile (filename)</code></a></h3> +<hr><h3><a name="pdf-dofile"><code>dofile ([filename])</code></a></h3> Opens the named file and executes its contents as a Lua chunk. When called without arguments, <code>dofile</code> executes the contents of the standard input (<code>stdin</code>). @@ -8421,7 +8424,7 @@ Otherwise, it returns the name of the upvalue. <p> -<hr><h3><a name="pdf-debug.traceback"><code>debug.traceback ([thread,] [message] [, level])</code></a></h3> +<hr><h3><a name="pdf-debug.traceback"><code>debug.traceback ([thread,] [message [, level]])</code></a></h3> <p> @@ -8789,12 +8792,12 @@ Here is the complete syntax of Lua in extended BNF. <HR> -<SMALL> +<SMALL CLASS="footer"> Last update: -Mon Aug 18 13:25:46 BRT 2008 +Mon Feb 13 18:54:19 BRST 2012 </SMALL> <!-- -Last change: revised for Lua 5.1.4 +Last change: revised for Lua 5.1.5 --> </body></html> diff --git a/doc/readme.html b/doc/readme.html index 38be6db..3ed6a81 100644 --- a/doc/readme.html +++ b/doc/readme.html @@ -12,7 +12,7 @@ Documentation </H1> -This is the documentation included in the source distribution of Lua 5.1.4. +This is the documentation included in the source distribution of Lua 5.1.5. <UL> <LI><A HREF="contents.html">Reference manual</A> @@ -33,7 +33,7 @@ especially the <HR> <SMALL> Last update: -Tue Aug 12 14:46:07 BRT 2008 +Fri Feb 3 09:44:42 BRST 2012 </SMALL> </BODY> @@ -5,7 +5,7 @@ # grep '^V=' ../Makefile V= 5.1 # grep '^R=' ../Makefile -R= 5.1.4 +R= 5.1.5 # grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/' prefix= /usr/local diff --git a/src/Makefile b/src/Makefile index e4a3cd6..e0d4c9f 100644 --- a/src/Makefile +++ b/src/Makefile @@ -48,7 +48,7 @@ o: $(ALL_O) a: $(ALL_A) $(LUA_A): $(CORE_O) $(LIB_O) - $(AR) $@ $? + $(AR) $@ $(CORE_O) $(LIB_O) # DLL needs all object files $(RANLIB) $@ $(LUA_T): $(LUA_O) $(LUA_A) diff --git a/src/lbaselib.c b/src/lbaselib.c index 2a4c079..2ab550b 100644 --- a/src/lbaselib.c +++ b/src/lbaselib.c @@ -631,7 +631,7 @@ static void base_open (lua_State *L) { luaL_register(L, "_G", base_funcs); lua_pushliteral(L, LUA_VERSION); lua_setglobal(L, "_VERSION"); /* set global _VERSION */ - /* `ipairs' and `pairs' need auxliliary functions as upvalues */ + /* `ipairs' and `pairs' need auxiliary functions as upvalues */ auxopen(L, "ipairs", luaB_ipairs, ipairsaux); auxopen(L, "pairs", luaB_pairs, luaB_next); /* `newproxy' needs a weaktable as upvalue */ @@ -1,5 +1,5 @@ /* -** $Id: ldo.c,v 2.38.1.3 2008/01/18 22:31:22 roberto Exp $ +** $Id: ldo.c,v 2.38.1.4 2012/01/18 02:27:10 roberto Exp $ ** Stack and Call structure of Lua ** See Copyright Notice in lua.h */ @@ -217,6 +217,7 @@ static StkId adjust_varargs (lua_State *L, Proto *p, int actual) { int nvar = actual - nfixargs; /* number of extra arguments */ lua_assert(p->is_vararg & VARARG_HASARG); luaC_checkGC(L); + luaD_checkstack(L, p->maxstacksize); htab = luaH_new(L, nvar, 1); /* create `arg' table */ for (i=0; i<nvar; i++) /* put extra arguments into `arg' table */ setobj2n(L, luaH_setnum(L, htab, i+1), L->top - nvar + i); @@ -1,5 +1,5 @@ /* -** $Id: lgc.c,v 2.38.1.1 2007/12/27 13:02:25 roberto Exp $ +** $Id: lgc.c,v 2.38.1.2 2011/03/18 18:05:38 roberto Exp $ ** Garbage Collector ** See Copyright Notice in lua.h */ @@ -627,7 +627,6 @@ void luaC_step (lua_State *L) { } } else { - lua_assert(g->totalbytes >= g->estimate); setthreshold(g); } } diff --git a/src/lparser.c b/src/lparser.c index 1e2a9a8..dda7488 100644 --- a/src/lparser.c +++ b/src/lparser.c @@ -1,5 +1,5 @@ /* -** $Id: lparser.c,v 2.42.1.3 2007/12/28 15:32:23 roberto Exp $ +** $Id: lparser.c,v 2.42.1.4 2011/10/21 19:31:42 roberto Exp $ ** Lua Parser ** See Copyright Notice in lua.h */ @@ -374,9 +374,9 @@ static void close_func (LexState *ls) { lua_assert(luaG_checkcode(f)); lua_assert(fs->bl == NULL); ls->fs = fs->prev; - L->top -= 2; /* remove table and prototype from the stack */ /* last token read was anchored in defunct function; must reanchor it */ if (fs) anchor_token(ls); + L->top -= 2; /* remove table and prototype from the stack */ } @@ -1,5 +1,5 @@ /* -** $Id: lua.h,v 1.218.1.5 2008/08/06 13:30:12 roberto Exp $ +** $Id: lua.h,v 1.218.1.7 2012/01/13 20:36:20 roberto Exp $ ** Lua - An Extensible Extension Language ** Lua.org, PUC-Rio, Brazil (http://www.lua.org) ** See Copyright Notice at the end of this file @@ -17,9 +17,9 @@ #define LUA_VERSION "Lua 5.1" -#define LUA_RELEASE "Lua 5.1.4" +#define LUA_RELEASE "Lua 5.1.5" #define LUA_VERSION_NUM 501 -#define LUA_COPYRIGHT "Copyright (C) 1994-2008 Lua.org, PUC-Rio" +#define LUA_COPYRIGHT "Copyright (C) 1994-2012 Lua.org, PUC-Rio" #define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo & W. Celes" @@ -362,7 +362,7 @@ struct lua_Debug { /****************************************************************************** -* Copyright (C) 1994-2008 Lua.org, PUC-Rio. All rights reserved. +* Copyright (C) 1994-2012 Lua.org, PUC-Rio. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the @@ -1,5 +1,5 @@ /* -** $Id: lvm.c,v 2.63.1.4 2009/07/01 21:10:33 roberto Exp $ +** $Id: lvm.c,v 2.63.1.5 2011/08/17 20:43:11 roberto Exp $ ** Lua virtual machine ** See Copyright Notice in lua.h */ @@ -142,6 +142,7 @@ void luaV_settable (lua_State *L, const TValue *t, TValue *key, StkId val) { if (!ttisnil(oldval) || /* result is no nil? */ (tm = fasttm(L, h->metatable, TM_NEWINDEX)) == NULL) { /* or no TM? */ setobj2t(L, oldval, val); + h->flags = 0; luaC_barriert(L, h, val); return; } |