Commit Graph
100 Commits
Author SHA1 Message Date
Roberto Ierusalimschy bf06e22b6a correct definition for 'MAX_SIZE' (using singed integers as the limit,
not unsigned ones) + new type 'l_uacInt'
2014-04-11 16:56:04 -03:00
Roberto Ierusalimschy d99ffa920d new type 'LUAI_UACINT' (result of an 'usual argument conversion' of
a lua_Integer)
2014-04-11 16:53:45 -03:00
Roberto Ierusalimschy 2771050dfa 'MIN/MAX_INTEGER' replaced by 'LUA_MIN/MAXINTEGER' 2014-04-11 16:02:16 -03:00
Roberto Ierusalimschy e1daf10e4c details in comments 2014-04-11 15:19:07 -03:00
Roberto Ierusalimschy 115fa77009 maximum size for dump of integers is size of lua_Integer (which
means that there is no overflows when undumping)
2014-04-10 16:45:43 -03:00
Roberto Ierusalimschy 561030c211 pack/unpack functions renamed dump/undump 2014-04-10 15:24:12 -03:00
Roberto Ierusalimschy 5336cc9d6a math.random: use 'random' when available + changes to work correctly
for any integer interval (up to [minint,maxint])
2014-04-10 14:53:33 -03:00
Roberto Ierusalimschy fdd137276b more precision for PI + no more RADIANS_PER_DEGREE +
'min/maxint' -> 'min/maxinteger'
2014-04-09 14:29:46 -03:00
Roberto Ierusalimschy a8aede68c7 new definition for 'luai_nummod' (using 'fmod') 2014-04-09 14:05:11 -03:00
Roberto Ierusalimschy c7859a046d using 'volatile' in 'tofloat' to ensure result has the same precision
(lua_Number) of other computations
2014-04-08 11:28:04 -03:00
Roberto Ierusalimschy 4a24883674 'GCmemtrav' does not need to track the entire collection, only each
single step individually
2014-04-04 14:01:04 -03:00
Roberto Ierusalimschy 9737832641 'int' -> 'lua_Integer' in several functions 2014-04-04 13:38:11 -03:00
Roberto Ierusalimschy 8b45d9806a new constants 'math.maxint'/'math.minint' 2014-04-03 11:18:19 -03:00
Roberto Ierusalimschy be52f784d9 new macros LUA_MAXINTEGER/LUA_MININTEGER 2014-04-03 11:18:02 -03:00
Roberto Ierusalimschy 144afa4d47 several changes in 'utf8.offset' 2014-04-03 10:45:09 -03:00
Roberto Ierusalimschy 007f66408d bug: compiler can optimize away overflow check in 'table.concat' 2014-04-03 10:30:23 -03:00
Roberto Ierusalimschy 48c745a611 avoid constant overflow when shifting left signed integers until
their last bit
2014-04-03 10:29:24 -03:00
Roberto Ierusalimschy 3a044de5a1 new implementation for 'utf8.len' 2014-04-02 14:01:22 -03:00
Roberto Ierusalimschy 7d514af0bc bug (in work version): comparisons should not try to convert
strings to numbers
2014-04-02 13:54:20 -03:00
Roberto Ierusalimschy f61ceee708 LUAI_FUNC is being used only in header files 2014-04-02 13:44:42 -03:00
Roberto Ierusalimschy 5aeb57f11f detail (error message for conversion from float to integer) 2014-04-01 15:55:06 -03:00
Roberto Ierusalimschy 493b3fdd65 added an 'api_check' for negative sizes in 'lua_checkstack' 2014-04-01 15:51:23 -03:00
Roberto Ierusalimschy 315c5bf7b7 bug: compiler could optimize away overflow check (+ changing indices
from 'int' to 'lua_Integer')
2014-04-01 15:50:34 -03:00
Roberto Ierusalimschy 607be77ec8 some details to avoid warnings 2014-04-01 11:39:55 -03:00
Roberto Ierusalimschy 0d745ed04c more precise estimation (GCestimate) for total bytes in use after
a GC cycle
2014-04-01 11:06:59 -03:00
Roberto Ierusalimschy 3d1c6730da detail ('1U' -> '1u', like other unsigned constants in the code) 2014-03-31 16:18:24 -03:00
Roberto Ierusalimschy 66b7b9b582 math.abs, math.max, and math.min work for integers, too. 2014-03-31 16:00:52 -03:00
Roberto Ierusalimschy 8ef9117924 fancier way to do sign extension 2014-03-31 15:38:26 -03:00
Roberto Ierusalimschy ea69f17d98 macro 'tostring' is used only by 'luaV_concat' 2014-03-31 15:37:52 -03:00
Roberto Ierusalimschy 420cc62fac missplelling in comments/function names (endianess -> endianness) 2014-03-27 12:58:05 -03:00
Roberto Ierusalimschy 1a3ebc203a definition of LUA_REAL_* and LUA_INT_* moved to the beginning of
configurations
2014-03-21 11:27:16 -03:00
Roberto Ierusalimschy 2d5e2212d4 native lua_Number may be neither float nor double (in pack/unpackfloat) 2014-03-21 11:26:44 -03:00
Roberto Ierusalimschy da4811238a details (typos in comments) 2014-03-21 10:52:33 -03:00
Roberto Ierusalimschy f96872a534 copyright year -> 2014 2014-03-20 16:42:35 -03:00
Roberto Ierusalimschy 738b3b64af detail (to avoid warnings with '-O3') 2014-03-20 16:36:02 -03:00
Roberto Ierusalimschy 363b525c23 does not create library when it is deprecated 2014-03-20 16:22:16 -03:00
Roberto Ierusalimschy 469daa16ee configuration for Lua type corresponding to 'time_t' 2014-03-20 16:18:54 -03:00
Roberto Ierusalimschy 7707f3e7c3 'posrelat' -> 'u_posrelat' (to avoid name conflict in 'one.c') 2014-03-20 11:11:00 -03:00
Roberto Ierusalimschy 16f8e44924 with 64-bit integers, file offsets do not need to be floats 2014-03-19 15:57:42 -03:00
Roberto Ierusalimschy 2f5f77788f removed function 'luaS_eqstr' (not used anywhere) 2014-03-19 15:51:42 -03:00
Roberto Ierusalimschy ed795d5ff4 detail (removed unused prototype) 2014-03-19 15:51:16 -03:00
Roberto Ierusalimschy 282d67d8fc bitlib has been deprecated 2014-03-18 15:27:08 -03:00
Roberto Ierusalimschy 114d10cbc5 detail (comment) 2014-03-15 09:29:48 -03:00
Roberto Ierusalimschy 9f3f5b6f41 details 2014-03-14 13:54:08 -03:00
Roberto Ierusalimschy a39489194e changing prefix of configurable macros from "lua_" to "l_" 2014-03-13 17:07:18 -03:00
Roberto Ierusalimschy a3addae036 lua_gettable and similars return type of gotten value 2014-03-12 17:57:40 -03:00
Roberto Ierusalimschy ad40bb1181 detail in string.rep: allow large repetitions of the empty string (no
possibility of overflows)
2014-03-12 15:09:06 -03:00
Roberto Ierusalimschy 80fe8504f5 make all dumps/loads go trhough Load/DumpVector (so it is easier
to adapt the code to correct endianess, if needed)
2014-03-11 15:56:27 -03:00
Roberto Ierusalimschy e976384213 keep chunk's headers compatible at least up to LUAC_VERSION (to be
able to detect correctly version mismatches)
2014-03-11 15:05:46 -03:00
Roberto Ierusalimschy 68f4ccdd00 make sure that LUAC_INT is a lua_Integer and that LUAC_NUM is
a lua_Number
2014-03-11 11:22:54 -03:00
Roberto Ierusalimschy 342a936599 detail (breaking too long lines) 2014-03-10 16:52:47 -03:00
Roberto Ierusalimschy 901da539e5 no need to avoid negative ints in 'LoadInt' 2014-03-10 16:50:19 -03:00
Roberto Ierusalimschy 197e249433 "indent -kr -i2 -br -brf -nut" plus a few manual formating 2014-03-10 14:56:32 -03:00
Roberto Ierusalimschy 2aff75f58e small bug (from revision 2.80): LUA_OP* constants are not from
enumeration 'Opcode' (they are integers)
2014-03-09 16:21:34 -03:00
Roberto Ierusalimschy cd12410195 new macro 'cast_void' 2014-03-07 13:19:00 -03:00
Roberto Ierusalimschy c5bb3643ab simpler code to read a line from a file (using 'getc' or, if present,
'getc_unlocked')
2014-03-06 14:12:02 -03:00
Roberto Ierusalimschy 5ff1c18a71 back with 'L' for macros 'luai_num*', but now with a new macro
'luai_numinvalidop' to protect constant folding
2014-03-06 13:15:18 -03:00
Roberto Ierusalimschy 99ac4a260f 'constfolding' passes a proper Lua state to 'luaO_arith' 2014-03-06 10:58:28 -03:00
Roberto Ierusalimschy fa7e77fd38 detail ('codearith' uses 'LUA_OP*' constants instead of 'OP_*') 2014-03-06 10:39:05 -03:00
Roberto Ierusalimschy f69e0ade19 no need to store a full 'size_t' fo the size of (frequent) small strings 2014-03-01 12:18:44 -03:00
Roberto Ierusalimschy 99a1c06ea3 more regularity with vectors + sizeof computed by the macros themselves 2014-02-28 13:13:01 -03:00
Roberto Ierusalimschy 93e28031de all chars used in binary dumps are unsigned ('lu_byte') 2014-02-28 09:25:12 -03:00
Roberto Ierusalimschy de84b3fecb store number of upvalues of main function in front of the dump,
so that undump can create initial closure before reading its prototype
2014-02-27 15:56:15 -03:00
Roberto Ierusalimschy 054179c2ff more explicit handling of headers for binary chunks 2014-02-27 13:56:20 -03:00
Roberto Ierusalimschy 986c11daa6 removal of weird construction in definition of LUA_STRFTIMEOPTIONS
(two empty strings concatenated as in "" "")
2014-02-26 12:55:58 -03:00
Roberto Ierusalimschy c6c41e85b2 more uniformity for defining system-dependent features 2014-02-26 12:27:56 -03:00
Roberto Ierusalimschy 87c930676f detail (comments) 2014-02-26 09:39:30 -03:00
Roberto Ierusalimschy 11e762dbcd added macro MAX_UINTEGER 2014-02-26 09:38:43 -03:00
Roberto Ierusalimschy 5c9cb5f0b1 detail (comment) 2014-02-26 09:38:18 -03:00
Roberto Ierusalimschy fed236ca7f detail (unknown lines are marked as -1, not 0) 2014-02-25 11:31:16 -03:00
Roberto Ierusalimschy 295f7ac04e added 'stip' parameter to lua_dump/string.dump 2014-02-25 11:30:21 -03:00
Roberto Ierusalimschy 6318de80d3 added 'strip' parameter to lua_dump/string.dump 2014-02-25 11:30:21 -03:00
Roberto Ierusalimschy 5715de344f 'read_all' does not need to grow buffer, as 'luaL_prepbuffsize'
already does that
2014-02-21 11:39:50 -03:00
Roberto Ierusalimschy c86b9da022 userdata can have any Lua value as uservalue 2014-02-19 10:52:42 -03:00
Roberto Ierusalimschy a4c6dcf999 detail (better error messages for light userdata) 2014-02-19 10:48:53 -03:00
Roberto Ierusalimschy 3f78de256e no need to keep threads in a different GC list, now that there is the
'twups' list
2014-02-18 10:46:26 -03:00
Roberto Ierusalimschy d764cc5522 new list 'twups' to allow traversal of upvalues from dead threads
(+ fixed some problems with cycles involving those upvalues)
2014-02-18 10:39:37 -03:00
Roberto Ierusalimschy ffa96d988d field 'op' renamed to 'open' 2014-02-15 11:12:01 -02:00
Roberto Ierusalimschy 6a24bd17a8 no more second result from 'collectgarbage"count"' (as Lua seldom
will need lua_Number to be an integer)
2014-02-14 14:45:38 -02:00
Roberto Ierusalimschy 1cce3e6842 change in the way 'collectgarbage("step", size)' interprets 'size'
(mimicking the way the GC itself behaves when Lua allocates 'size'
Kbytes)
2014-02-14 14:43:14 -02:00
Roberto Ierusalimschy 0b04c561f5 new syntax for Unicode escape '\u{012F}' 2014-02-14 13:23:51 -02:00
Roberto Ierusalimschy 90b0ac6495 limit to 'gcstepmul' imposed by 'lua_gc' (+ some details in 'lgc.c') 2014-02-13 15:25:20 -02:00
Roberto Ierusalimschy de3b1c9b53 better control for number of finalizers called at each GC cycle
(increases progressively)
2014-02-13 12:46:38 -02:00
Roberto Ierusalimschy 733c58595b no more local collection 2014-02-13 10:11:34 -02:00
Roberto Ierusalimschy 4a1ed6e6e5 new field '__name' in metatables to help better error messages 2014-02-11 15:39:15 -02:00
Roberto Ierusalimschy 6b30774469 detail (better presentation for 'luaC_step') 2014-02-11 10:28:47 -02:00
Roberto Ierusalimschy ba3586cc90 keep a single list of objects to be finalized (with local and non-local
objects), to ensure finalization order
2014-02-11 10:18:12 -02:00
Roberto Ierusalimschy 68df7c6279 added proper headers for a standard lib file 2014-02-06 18:03:24 -02:00
Roberto Ierusalimschy 19ad78d713 C++ needs casts for arithmetic with enums 2014-02-06 17:55:55 -02:00
Roberto Ierusalimschy 6ccf150039 new library: utf8 2014-02-06 15:32:33 -02:00
Roberto Ierusalimschy 4ea60463f5 UTF-8 encoding exported as format '%U' in 'lua_pushfstring' 2014-02-06 13:59:24 -02:00
Roberto Ierusalimschy d438e1379d insertion of ".0" in floats with integer values done by "luaL_tolstring",
not by the core
2014-02-05 17:14:53 -02:00
Roberto Ierusalimschy 1721d09ac8 still accepts initial '=' for expressions, for compatibility with old
versions (and old habits...)
2014-02-05 12:22:55 -02:00
Roberto Ierusalimschy 2f3da00e51 added support for UTF-8 escapes 2014-02-04 16:57:34 -02:00
Roberto Ierusalimschy 5a73e3ad9e simpler way to create messages for errors in escape sequences 2014-01-31 13:14:22 -02:00
Roberto Ierusalimschy 86dd8bf3f5 no more 'L' in macros "luai_num*" (several places that use those macros
cannot throw errors anyway...)
2014-01-27 11:34:32 -02:00
Roberto Ierusalimschy 67c5de9283 comment 2014-01-27 11:28:45 -02:00
Roberto Ierusalimschy 0a850e641d larger limit + better error messages for loop detection in inheritance 2014-01-22 18:02:04 -02:00
Roberto Ierusalimschy 916bd874ad added explicit default options to string.pack/unpack functions 2014-01-09 14:21:28 -02:00
Roberto Ierusalimschy cd848cab6b first implementation for string.pack/unpackfloat + try not to assume
that chars have 8 bits
2014-01-08 16:34:34 -02:00