Roberto Ierusalimschy
4f4e0e49bb
easier way to compile Lua 32
2014-10-03 09:55:44 -03:00
Roberto Ierusalimschy
2f4d429071
details (comments)
2014-10-03 09:54:57 -03:00
Roberto Ierusalimschy
27f7bd2e83
detail
2014-10-01 13:05:06 -03:00
Roberto Ierusalimschy
798660c9cd
deprecated "cast macros" ('luaL_checkint', 'luaL_optint', etc.)
2014-10-01 08:54:56 -03:00
Roberto Ierusalimschy
34b6664dcb
better to use 'long' to represent UTF-8 code points
2014-10-01 08:52:33 -03:00
Roberto Ierusalimschy
d35fff16d5
'ipairs' always stops at first nil element
2014-09-30 10:53:26 -03:00
Roberto Ierusalimschy
56699cd603
small change to avoid bug in some versions of the clang compiler
2014-09-26 11:09:21 -03:00
Roberto Ierusalimschy
8ede2c353c
detail in 'report' + message handler always is called with an
...
argument + 'report' already handles non-string error messages
2014-09-25 11:20:37 -03:00
Roberto Ierusalimschy
6384475ec4
'luaL_getmetafield' returns type of metafield (instead of a boolean)
2014-09-22 03:42:15 -03:00
Roberto Ierusalimschy
3a15c7ce43
size for array part of a table ('sizearray') changed from 'int' to
...
'unsigned int', which allows twice as many elements in the array part
2014-09-04 15:15:29 -03:00
Roberto Ierusalimschy
0a6b58c3aa
weak tables that must be retraversed are kept in 'grayagain' list
...
until atomic phase (instead of going to their special lists) +
more comments
2014-09-03 13:54:41 -03:00
Roberto Ierusalimschy
979a663d2a
detail (error message from 'coroutine.status')
2014-09-01 15:00:04 -03:00
Roberto Ierusalimschy
22952d8973
'T.gccolor' classify dead objects too
2014-09-01 14:58:55 -03:00
Roberto Ierusalimschy
df608f842a
'linktable' -> 'linkgclist' (and used for all links with 'gclist')
2014-09-01 14:37:11 -03:00
Roberto Ierusalimschy
001bb46ae1
bug: Ephemeron table can wrongly collect entry with strong key
2014-09-01 13:56:01 -03:00
Roberto Ierusalimschy
9b25347a67
detail
2014-08-27 11:59:33 -03:00
Roberto Ierusalimschy
e401513086
new option 'p' for 'debug.sizeof' (size of a pointer)
2014-08-22 13:22:42 -03:00
Roberto Ierusalimschy
7f1a2ad699
new functions 'lua_geti/lua_seti' (non raw)
2014-08-21 17:07:56 -03:00
Roberto Ierusalimschy
a1ab5ab396
'table.copy' -> 'table.move' + optional parameter moved to the end +
...
several functions operate on "virtual" tables too
2014-08-21 16:13:55 -03:00
Roberto Ierusalimschy
01549fb1ed
'Csize' -> 'sizeof' + removed its 'b' option
2014-08-21 16:12:40 -03:00
Roberto Ierusalimschy
4fba117433
[un]'dumpint' -> [un]'dumpinteger'
2014-08-20 19:06:41 -03:00
Roberto Ierusalimschy
2be88d5084
'lua_Ctx' -> 'lua_Kcontext'
2014-08-01 14:33:08 -03:00
Roberto Ierusalimschy
f5c690b684
details in comments
2014-08-01 14:24:02 -03:00
Roberto Ierusalimschy
61fa462535
added cast to avoid warning
2014-08-01 14:22:57 -03:00
Roberto Ierusalimschy
fba9050d3d
release changed to (5.3) alpha
2014-07-31 10:44:30 -03:00
Roberto Ierusalimschy
d861706620
new macro 'cvt2num' to better control whether strings are convertible
...
to numbers
2014-07-30 11:42:44 -03:00
Roberto Ierusalimschy
34ac039fb8
new macro 'cvt2str' to better control whether numbers are convertible
...
to strings
2014-07-30 11:00:14 -03:00
Roberto Ierusalimschy
1aa5262634
do not assume numbers are coercible to strings
2014-07-30 10:59:24 -03:00
Roberto Ierusalimschy
07c7fdb9df
simpler definition for 'setobj' (trust the compiler for the assignment)
2014-07-29 13:22:24 -03:00
Roberto Ierusalimschy
3ccbae84d2
added some casts between integral types (to avoid warnings)
2014-07-29 13:01:00 -03:00
Roberto Ierusalimschy
255d59ed5e
some janitorial work (comments, small refactoring)
2014-07-28 14:47:53 -03:00
Roberto Ierusalimschy
925d1b59f9
new function 'math.ult' (unsigned less than)
2014-07-28 14:35:47 -03:00
Roberto Ierusalimschy
03bbe1baf1
first implementation for 'table.copy'
2014-07-25 15:46:00 -03:00
Roberto Ierusalimschy
f9037ae8c1
'ipairs' respects metamethods
2014-07-24 16:33:29 -03:00
Roberto Ierusalimschy
57d8424146
extra space for new threads is initialized with a copy of the main
...
thread, not of the creator thread.
2014-07-24 13:17:56 -03:00
Roberto Ierusalimschy
baa0e23456
better support for extra user space associated with a Lua state
2014-07-24 11:00:16 -03:00
Roberto Ierusalimschy
55a710545c
detail (extra byte in LUAI_EXTRASPACE to test proper alignment of
...
a lua_State)
2014-07-23 14:16:50 -03:00
Roberto Ierusalimschy
753f2c1da4
better(?) alignment for some structures (pointers first)
2014-07-23 14:15:43 -03:00
Roberto Ierusalimschy
b3b8580606
comments + proper undef of compatibility macros + no need to undef
...
internal macros (this is the first definition)
2014-07-23 13:47:47 -03:00
Roberto Ierusalimschy
73ad16b5c6
no need for type 'pCallInfo'
2014-07-23 13:44:30 -03:00
Roberto Ierusalimschy
97e299c395
'lua_replace' implemented as a macro using 'lua_copy'
2014-07-22 15:07:47 -03:00
Roberto Ierusalimschy
c697aa30bc
more precise type for argument to 'aux_upvalue'
2014-07-21 13:02:57 -03:00
Roberto Ierusalimschy
17ee57f8e0
'iswhite' and related macros now can work directly on any object
...
(no need to convert to 'GCObject')
2014-07-21 13:02:10 -03:00
Roberto Ierusalimschy
3c6d0aaa7d
'iswhite' and related macros now can work directly on any object
...
(no need to convert to 'GCObject')
2014-07-19 12:14:46 -03:00
Roberto Ierusalimschy
e43612aaf6
put the restriction that 'luaC_barrierback' works only on tables
...
in its prototype
2014-07-19 12:09:37 -03:00
Roberto Ierusalimschy
2898e2fd12
removed useless assertion (gcstate != GCSpause already implied by
...
other assertions) and wrong assertion (setmetatable uses this barrier
for tables too)
2014-07-19 11:44:19 -03:00
Roberto Ierusalimschy
8704fca0c9
in 'luaL_checkversion_' check numeric types first. (Other tests
...
depend on correct numeric type.)
2014-07-19 11:37:09 -03:00
Roberto Ierusalimschy
325e44d87e
no more "-2" for limits. (Limits should be precise; safety is in
...
the code that handles these limits.)
2014-07-18 15:29:12 -03:00
Roberto Ierusalimschy
54ac253343
detail (no need to define LUAI_USER_ALIGNMENT_T when it is not
...
defined; simpler to define 'L_Umaxalign' directly)
2014-07-18 15:18:45 -03:00
Roberto Ierusalimschy
bb12903120
type 'Udata' refers directly to structure inside the union (union
...
used only for aligning purposes now)
2014-07-18 11:46:47 -03:00
Roberto Ierusalimschy
ca41b43f53
type 'TString' refers directly to the structure inside the union
...
(union used only for size purposes)
2014-07-18 10:36:14 -03:00
Roberto Ierusalimschy
3511e186cd
ensure size for LUAI_USER_ALIGNMENT_T in tests is larger than the
...
structures it is aligning (in most architectures)
2014-07-18 10:27:45 -03:00
Roberto Ierusalimschy
56137d58ff
added check for conversion 'obj2gco' (and corrections for small
...
problems detected by this check)
2014-07-18 09:17:54 -03:00
Roberto Ierusalimschy
9aec500a26
no need for field 'gch' anymore
2014-07-17 14:27:49 -03:00
Roberto Ierusalimschy
5a9cc57a5e
change in GCObject: instead of being a union, it is now a structure
...
with the common header of all collectable objects; union is used
only for conversions. (Goal is to be able to check that the cast
'obj2gco' can have a check to ensure that object being converted
is really a collectable object.). This is the first step in the
change.
2014-07-17 14:09:50 -03:00
Roberto Ierusalimschy
1aa4f69b51
new type 'lua_Ctx' for continuation-function contexts (to allow type
...
to be configurable)
2014-07-17 10:53:37 -03:00
Roberto Ierusalimschy
8bb272a3e3
new conversion float->integer: conversion is valid only when
...
float has an exact representation as an integer
2014-07-17 09:30:53 -03:00
Roberto Ierusalimschy
c229ed597f
'requiref' checks 'package.loaded' before loading a module
2014-07-16 11:51:36 -03:00
Roberto Ierusalimschy
16b4110521
function 'type' keeps type names as upvalues to avoid creating strings
...
everytime it is called
2014-07-16 10:56:59 -03:00
Roberto Ierusalimschy
f14662fca6
detail (added placeholders for non-function fields to preallocate
...
space for them)
2014-07-16 10:56:14 -03:00
Roberto Ierusalimschy
a9af12bbe7
Table library now respects '__index'/'__newindex' metamethods
2014-07-16 09:44:52 -03:00
Roberto Ierusalimschy
5bbb4a06a6
removed unused parameter Ä'L' in macro 'api_check' and company
2014-07-15 18:26:50 -03:00
Roberto Ierusalimschy
d4fb848be7
added api check in 'lua_typename' (tag is valid)
2014-07-15 18:14:49 -03:00
Roberto Ierusalimschy
b9dcf9974d
detail (typos in comments)
2014-06-30 16:48:08 -03:00
Roberto Ierusalimschy
a77d263e86
unsigned-manipulation functions (lua_puhsunsigned, lua_tounsigned, etc.)
...
deprecated
2014-06-26 15:38:28 -03:00
Roberto Ierusalimschy
7cc40851e1
emergency collection can happen even when collector is stopped
2014-06-26 15:29:05 -03:00
Roberto Ierusalimschy
08a9c9faa3
detail (comment)
2014-06-26 15:28:24 -03:00
Roberto Ierusalimschy
84fe52dbeb
unsigned-manipulation functions (lua_puhsunsigned, lua_tounsigned, etc.)
...
deprecated
2014-06-26 14:25:11 -03:00
Roberto Ierusalimschy
10200585a7
var-arguments to the script come from 'arg' table (not from original
...
'argv' array)
2014-06-26 14:08:52 -03:00
Roberto Ierusalimschy
c94f11d783
'IntPoint' -> 'point2int' + ensure that casted value fits in
...
destination type
2014-06-26 13:17:35 -03:00
Roberto Ierusalimschy
54ac5960a8
LUA_MAXUNSIGNED was only used to define 2.0^intnumbits (and that
...
definition was not strictly portable), so it was removed and
replaced by a more correct and direct definition for 2.0^intnumbits
(only where it was needed)
2014-06-24 14:02:00 -03:00
Roberto Ierusalimschy
0e6229a953
use proper macros to convert 'GCObject' to other objects + better
...
type cheking in 'set*value' macros
2014-06-19 15:39:36 -03:00
Roberto Ierusalimschy
d2ab1aef31
detail (avoid too large macro)
2014-06-19 15:29:30 -03:00
Roberto Ierusalimschy
89b56e7d84
more precision between closure types ('LClosure' x 'CClosure')
2014-06-19 15:27:20 -03:00
Roberto Ierusalimschy
14929f5764
use appropriate macros to convert GCObject to specific types
2014-06-18 19:59:29 -03:00
Roberto Ierusalimschy
7021cc9bc8
allows different 'source' for each prototype, but inherits it from
...
parent when they are equal (only possible case for chunks created
by the parser)
2014-06-18 15:35:43 -03:00
Roberto Ierusalimschy
04da0a40c0
added assertion about sources being the same for all protos in a chunk
2014-06-18 10:54:31 -03:00
Roberto Ierusalimschy
eb67828236
changed macro for compatibility options + details
2014-06-18 10:24:01 -03:00
Roberto Ierusalimschy
94266dfdbd
source for all prototypes must be equal in a chunk; no need to store
...
each one separated
2014-06-18 10:21:12 -03:00
Roberto Ierusalimschy
e3871abe95
'math.ifloor' is back
2014-06-18 09:35:53 -03:00
Roberto Ierusalimschy
3fc25ff15b
macro 'checkobjref' accepts NULL (as all its uses checked for NULL
...
before) + user value from a userdata may not be a GC object
2014-06-17 14:13:29 -03:00
Roberto Ierusalimschy
fa3113ffbf
cleaner way to handle bit CIST_OAH (with auxiliar macros)
2014-06-12 16:07:30 -03:00
Roberto Ierusalimschy
d94bb6c273
janitor work on 'lua_resume' and related code
2014-06-11 13:01:55 -03:00
Roberto Ierusalimschy
5784331768
new items in default path for Windows
2014-06-10 16:21:20 -03:00
Roberto Ierusalimschy
88a9e51f34
bit-field CIST_YIELDED removed (it was never consulted)
2014-06-10 16:18:50 -03:00
Roberto Ierusalimschy
8b5940e7ca
must also reset CIST_OAH if necessary (CallInfo is not a fresh one)
2014-06-10 16:13:26 -03:00
Roberto Ierusalimschy
1a3656e56e
more relaxed rules for __eq metamethod (more similar to other
...
operators)
2014-06-10 15:53:18 -03:00
Roberto Ierusalimschy
542b6cfc02
no need for field 'status' in structure 'CallInfo' (after removal
...
of 'lua_getctx') + field 'old_allowhook' can be packed into a single
bit
2014-06-10 15:51:21 -03:00
Roberto Ierusalimschy
6f6fd96e3b
new type lua_KFunction + no more 'lua_getctx'
2014-06-10 14:41:38 -03:00
Roberto Ierusalimschy
35a6aad0d7
added comments
2014-06-09 13:32:18 -03:00
Roberto Ierusalimschy
23f0ff9517
lots of janitor work (including comments) + 'arg' table created
...
before running any script + changes in the parameters and return
of 'collectargs'
2014-06-05 17:42:06 -03:00
Roberto Ierusalimschy
355037528c
'math.mof' works with integers, too
2014-06-02 20:09:28 -03:00
Roberto Ierusalimschy
9e68c047ae
'assert' does not assume that the error object is a string
2014-06-02 00:06:26 -03:00
Roberto Ierusalimschy
e9d86eddf3
if numeral overflows the reading buffer, signal it as invalid input
...
(resulting in nil)
2014-06-02 00:00:51 -03:00
Roberto Ierusalimschy
11aefa4478
details (comments)
2014-06-01 21:03:16 -03:00
Roberto Ierusalimschy
5ebdd326b6
detail (to avoid warnings of unused variable)
2014-05-29 16:30:07 -03:00
Roberto Ierusalimschy
84db17b6fc
more "religious" definition for 'lua_numtointeger'
2014-05-27 10:59:03 -03:00
Roberto Ierusalimschy
456806f25c
no more 'math.ifloor' + new semantics for 'math.floor'/'math.ceil'
2014-05-26 14:13:52 -03:00
Roberto Ierusalimschy
c98f195eb9
function 'luaV_numtointeger' changed to a global macro
...
'lua_numtointeger' (tricky, small, and useful in several places)
2014-05-26 14:10:22 -03:00
Roberto Ierusalimschy
4d696c45b9
simpler handling of 'GCScallfin' state + more comments
2014-05-25 16:08:32 -03:00