Roberto Ierusalimschy
dbb6f11e8e
bug (with compat on): 'ipairs' can work with any type that provides
an __index; so, 'pairsmeta' should not check for tables. ('pairs'
already checks for tables through 'next'.)
8 years ago
Roberto Ierusalimschy
aeb4c6fff1
comments + removed unused variable
8 years ago
Roberto Ierusalimschy
3b91b07fd9
detail (macro 'l_checkmode' reimplemented as function)
8 years ago
Roberto Ierusalimschy
349badabc1
wrong test in '#if' for floating-point type
8 years ago
Roberto Ierusalimschy
e4a9e6fcca
do not eliminate varargs from functions that do not use varargs
(confuses the debug lib and gains very little in performance)
8 years ago
Roberto Ierusalimschy
9de2bb0d62
bug: When a coroutine tries to resume a non-suspended coroutine,
it coud do some mess (and break C assertions) before detecting the error.
Now it tests for those errors before anything else.
8 years ago
Roberto Ierusalimschy
d55fd3455b
redefine MAXINDEXRK (for debugging, to force most values to
go through registers)
8 years ago
Roberto Ierusalimschy
0d1c6f4188
MAXINDEXRK can be redefined (for debugging, to force most values to
go through registers)
8 years ago
Roberto Ierusalimschy
fc6b32bcaa
bug: Lua can generate wrong code in functions with too many constants
8 years ago
Roberto Ierusalimschy
de96e26afc
bug: 'checkoption' could read past end of string + 'os.date' can
handle embedded zeros
8 years ago
Roberto Ierusalimschy
de3fd8ab83
Handling of LUA_PATH/LUA_CPATH moved from package library to stand
alone interpreter (so that 'lua.c' concentrates all handling of
environment variables)
8 years ago
Roberto Ierusalimschy
788109a3de
new bug: Checking a format for 'os.date' may read pass the format string
8 years ago
Roberto Ierusalimschy
09c9fa36ea
small corrections for C++ compliance
8 years ago
Roberto Ierusalimschy
dcb2998aa6
bug: expression list with four or more expressions in
a 'for' loop can crash the interpreter. ('adjust_assign' must
remove extra expresssions from its registers.)
8 years ago
Roberto Ierusalimschy
fac00ca023
bug: expression list with four or more expressions in
a 'for' loop can crash the interpreter.
9 years ago
Roberto Ierusalimschy
6487fb11fc
all 'static' variables should be 'const'
9 years ago
Roberto Ierusalimschy
644799537f
allow more bits in 'callstatus' (use no extra space due to alignments)
9 years ago
Roberto Ierusalimschy
aa66ca76ce
'lua_pushglobaltable' returns 'void'
9 years ago
Roberto Ierusalimschy
707b0ba6e2
'string.format("%q")' writes 'math.mininteger' in hexa, to ensure
it is read back as an integer
9 years ago
Roberto Ierusalimschy
10b0b09555
do not convert decimal constants with overflow to integers.
(Therefore, they will be converted as floats)
9 years ago
Roberto Ierusalimschy
4d5ab9baa6
'string.pack("cn")' does not accept strings longer than 'n'
9 years ago
Roberto Ierusalimschy
b65252b39b
'singlevaraux' returns result only in 'var->k'
9 years ago
Roberto Ierusalimschy
fbd8614bdb
comment (FALLTHROUGH)
9 years ago
Roberto Ierusalimschy
f3b52a6061
'io.read("n")' accepts both a dot and the locale point as its
radix character + 'MAXRN' -> 'L_MAXLENNUM' + small detail in
'test2'
9 years ago
Roberto Ierusalimschy
0232fbffbe
now that 'luaO_str2num' always accepts a dot as a radix character,
the lexer does not need to bother with this issue.
9 years ago
Roberto Ierusalimschy
ed110f66c5
'luaO_str2num' (and, therefore, 'lua_stringtonumber', 'number',
and coercions) accepts both the locale point and a dot as its
radix character
9 years ago
Roberto Ierusalimschy
22093f9c6e
'string.format("%q", number)' ensures a dot as decimal point
9 years ago
Roberto Ierusalimschy
792ffaccf2
detail (macro should "use" all its arguments)
9 years ago
Roberto Ierusalimschy
57cdb60429
no more time limits to pattern matching (at least for now)
9 years ago
Roberto Ierusalimschy
89c09c8e40
match time limit defined by variable 'string.pattlimit'
9 years ago
Roberto Ierusalimschy
48baa5e89c
'os.time(t)' normalizes 't' fields
9 years ago
Roberto Ierusalimschy
fdd7209688
error handling in 'wrap' does not coerce numbers into string messages
9 years ago
Roberto Ierusalimschy
82a8e06524
details ('error' does not coerce numbers to strings + comments)
9 years ago
Roberto Ierusalimschy
c258870c59
diff for last bug was against wrong version
9 years ago
Roberto Ierusalimschy
e8e39a277f
'string.format"%q"' now works for all basic types (nil, boolean,
numbers, and strings)
9 years ago
Roberto Ierusalimschy
fff7d42a69
LUA_PACKPADBYTE -> LUAL_PACKPADBYTE (it is an internal library
name, not something to be usually configured)
9 years ago
Roberto Ierusalimschy
783aa8a9da
new way to avoid infinite loops in empty matches: "Python rule"
("Empty matches for the pattern are replaced only when not
adjacent to a previous match")
9 years ago
Roberto Ierusalimschy
8d4feb504f
do not try to ensure that 'sweepgc' points to a live object
when entering sweep phase ('entersweep'); that may be too
expensive to be done still inside the atomic step. Walking
one single object more often than not will work.
9 years ago
Roberto Ierusalimschy
d77a7a8c26
detail (comment)
9 years ago
Roberto Ierusalimschy
e747491b96
comments
9 years ago
Roberto Ierusalimschy
acff3ad88d
bug: 'gmatch' iterator fails when called from a coroutine different
from the one that created it
9 years ago
Roberto Ierusalimschy
e7b2e01d43
bug: label between local definitions can mix-up their initializations
9 years ago
Roberto Ierusalimschy
03ca6385dc
call 'checkGC' *after* creating new objects (this is how 'execute'
does it)
(It increases the changes that 'allgc' start with a non-white
object, which helps 'entersweep')
9 years ago
Roberto Ierusalimschy
7777b412de
When available, use metafield '__name' in error messages
9 years ago
Roberto Ierusalimschy
c3e9b14d24
'\0' is a control character, no need to check it explicitly
9 years ago
Roberto Ierusalimschy
7d6b78ee79
in 'table.move', destination table can be source table even if
given as an explicit extra argument
9 years ago
Roberto Ierusalimschy
5f3ad5731e
simpler yet definition for 'checkoption'
9 years ago
Roberto Ierusalimschy
494e9ba0f4
simpler code for 'checkoption' + added conversion specifiers specific
to Windows
9 years ago
Roberto Ierusalimschy
f79b4568ae
details (removed silly use of 'luaL_opt' + better error messages
in cases of "table expected")
9 years ago
Roberto Ierusalimschy
fd51651684
new macro 'vmfetch' to help changing code to computed goto's (macro
abstracts the code to run before each instruction)
9 years ago