Roberto Ierusalimschy
|
3aa9598177
|
'mainthread' is not inserted in the 'allgc' list anymore, but swept
separately.
|
15 years ago |
Roberto Ierusalimschy
|
64d39ed1b6
|
generational mode no longer sweep old objects
|
15 years ago |
Roberto Ierusalimschy
|
4433dbb5f5
|
userdata with finalizers are kept in a separated list ('udgc'), instead
of at the end of 'rootgc' (which was renamed to 'allgc', as it is not
"root" in the usual meaning for collectors)
|
15 years ago |
Roberto Ierusalimschy
|
5cb128ea54
|
BUG: emergency collector might resize 'strt' (string table) when
creating a new string
+ atomic and markroot steps has some cost
+ full collection must leave collector in proper state when mode
is generational
|
15 years ago |
Roberto Ierusalimschy
|
74123e9686
|
draft version of a generational mode for garbage collection. (Not well
tested; no major collections; ...)
|
15 years ago |
Roberto Ierusalimschy
|
9c196bebad
|
detail (wrong comment about LUAI_GCPAUSE)
|
15 years ago |
Roberto Ierusalimschy
|
28b2566c97
|
'lua_assert' not visible from libraries
|
15 years ago |
Roberto Ierusalimschy
|
caf74dd731
|
'cpcall' renamed to 'ccall' as it does not do a protected call
|
15 years ago |
Roberto Ierusalimschy
|
62840c5fad
|
'ipairs' is deprecated
|
15 years ago |
Roberto Ierusalimschy
|
5ca7cdd709
|
for compatibility only: 'module' changes the first upvalue of
calling function to affect its environment
|
15 years ago |
Roberto Ierusalimschy
|
1514e49d43
|
avoid using function environments in C libraries (as it probably will
be deprecated)
|
15 years ago |
Roberto Ierusalimschy
|
22ef84b6c8
|
'_ENV' name permanently stored in global state for easier access
|
15 years ago |
Roberto Ierusalimschy
|
63a2b62468
|
must include 'string.h' because a macro uses 'strlen'
|
15 years ago |
Roberto Ierusalimschy
|
489253d753
|
better definitions for lua_[gs]etglobal + less uses of ENVIRONINDEX
|
15 years ago |
Roberto Ierusalimschy
|
25c557ec63
|
first version of _ENV; no more global variables
|
15 years ago |
Roberto Ierusalimschy
|
f292760f12
|
small optimization in luaL_addlstring (avoid adding chars one by one)
(suggested by Chuck Coffing)
|
15 years ago |
Roberto Ierusalimschy
|
1124cb1247
|
first step towards _ENV: all chunks have an puvalues _ENV with the
global table
|
15 years ago |
Roberto Ierusalimschy
|
c295147874
|
when finding a 'name' for a function, handle the case when the function
is a for iterator
|
15 years ago |
Roberto Ierusalimschy
|
e560ac4862
|
when searching for a variable name, look existing upvalues before
goingg to upper levels
|
15 years ago |
Roberto Ierusalimschy
|
915a9a912c
|
just in case, better to flush error messages
|
15 years ago |
Roberto Ierusalimschy
|
ae0a5e2142
|
new option '*L' for io.read + options for io.lines
|
15 years ago |
Roberto Ierusalimschy
|
347f0c33d1
|
avoid 'continue' unless necessary
|
15 years ago |
Roberto Ierusalimschy
|
622e448710
|
removed useless test (argv[i] cannot be NULL when i<argc)
|
15 years ago |
Roberto Ierusalimschy
|
0fe2576a39
|
new instructions to optimize indexing on upvalues
|
15 years ago |
Roberto Ierusalimschy
|
d08d237a49
|
detail: in loadfile read function, no need to return NULL on EOF;
size ==0 is enough to signal EOF.
|
15 years ago |
Roberto Ierusalimschy
|
64a7ec987c
|
avoid using 'ungetc' in loadfile
|
15 years ago |
Roberto Ierusalimschy
|
4274738e81
|
new macro 'luai_writestringerror'
|
15 years ago |
Roberto Ierusalimschy
|
0d7d559dcc
|
no need to flush either stderr or \n-terminated outputs
|
15 years ago |
Roberto Ierusalimschy
|
af512ad6da
|
use of 'conventional' names for shift and rotate operations +
right/left versions for them
|
15 years ago |
Roberto Ierusalimschy
|
d27108ccd5
|
removed support for '#fist-line comment' on binary files (as binary
files do not have lines...)
|
15 years ago |
Roberto Ierusalimschy
|
a838b3b496
|
better usage messages, showing entire offending argument
|
15 years ago |
Roberto Ierusalimschy
|
4c54cd3a10
|
when yielding, original 'func' value must be kept and restored so
that 'poscall' puts results in the right slot.
|
15 years ago |
Roberto Ierusalimschy
|
c8ff7de7f0
|
field 'oldtop' renamed to 'extra', as it can be used for other
purposes
|
15 years ago |
Roberto Ierusalimschy
|
3bae8e047c
|
typo (thanks to Gavin)
|
15 years ago |
Roberto Ierusalimschy
|
4f5f2fe367
|
new function 'luaL_cpcall'
|
15 years ago |
Roberto Ierusalimschy
|
01586d539e
|
typo in comment
|
15 years ago |
Roberto Ierusalimschy
|
c8ab34ab7a
|
better messages for invalid options
|
15 years ago |
Roberto Ierusalimschy
|
36ab1ee10c
|
__unm metamethod gets nil as its 2nd parameter
|
15 years ago |
Roberto Ierusalimschy
|
193ce46970
|
table.pack was locking last result, avoiding its collection
|
15 years ago |
Roberto Ierusalimschy
|
b678f246a4
|
HINSTANCE -> HMODULE (they are the same thing, but the MS documentation
uses the latter) + LoadLibrary -> LoadLibraryEx with optional arguments,
to allow the option LOAD_WITH_ALTERED_SEARCH_PATH
|
15 years ago |
Roberto Ierusalimschy
|
f270e7f044
|
warnings that are not compatible with C++ separated from other warning
options
|
15 years ago |
Roberto Ierusalimschy
|
070d3743a7
|
"no value" added to array luaT_typenames + occurrences of "userdata"
in that array unified in a single address
|
15 years ago |
Roberto Ierusalimschy
|
0c7de97d47
|
correct error message when yielding from outside a coroutine
|
15 years ago |
Roberto Ierusalimschy
|
900b7d4514
|
on 64-bit machines, an address may not fit into a 'long', so it
is better to convert from pointer to void to pointer to function
directly, even if ANSI C does not like it.
|
15 years ago |
Roberto Ierusalimschy
|
91f0b20a0e
|
missing standard defines
|
15 years ago |
Roberto Ierusalimschy
|
e4b4623abc
|
'searchpath' changes dots into directory separators
|
15 years ago |
Roberto Ierusalimschy
|
cef96b73e1
|
added casts from int to enumerations to follow C++ rules
|
15 years ago |
Roberto Ierusalimschy
|
427e01eb63
|
removed useless initialization
|
15 years ago |
Roberto Ierusalimschy
|
d320c908d0
|
conversion from pointer to void to pointer to function seems more
"correct" if done through an integral type (because conversions
between pointers and numbers are allowed, only "implementation
defined").
|
15 years ago |
Roberto Ierusalimschy
|
8bfc696676
|
missing 'external' in variable declaration
|
15 years ago |