Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Details | Roberto Ierusalimschy | 2020-07-03 | 1 | -8/+13 |
| | | | | Comments in makefile and function 'l_str2d'. | ||||
* | 'luaV_concat' can "concat" one single value | Roberto Ierusalimschy | 2020-07-03 | 1 | -4/+2 |
| | | | | | Several of its callers needed that case and had to do the check themselves. | ||||
* | Simplification and smaller buffers for 'lua_pushfstring' | Roberto Ierusalimschy | 2020-07-03 | 1 | -10/+16 |
| | | | | | The function 'lua_pushfstring' is seldom called with large strings, there is no need to optimize too much for that cases. | ||||
* | Undo change in the handling of 'L->top' (commit b80077b8f3) | Roberto Ierusalimschy | 2019-08-29 | 1 | -2/+0 |
| | | | | | | With MMBIN instructions, there are fewer opcodes that need to update 'L->top', so that change does not seem to pay for the increased complexity. | ||||
* | Change in the handling of 'L->top' when calling metamethods | Roberto Ierusalimschy | 2019-07-26 | 1 | -0/+2 |
| | | | | | | | Instead of updating 'L->top' in every place that may call a metamethod, the metamethod functions themselves (luaT_trybinTM and luaT_callorderTM) correct the top. (When calling metamethods from the C API, however, the callers must preserve 'L->top'.) | ||||
* | OP_NEWTABLE keeps exact size of arrays | Roberto Ierusalimschy | 2019-07-12 | 1 | -26/+0 |
| | | | | | | OP_NEWTABLE is followed by an OP_EXTRAARG, so that it can keep the exact size of the array part of the table to be created. (Functions 'luaO_int2fb'/'luaO_fb2int' were removed.) | ||||
* | Details | Roberto Ierusalimschy | 2019-06-03 | 1 | -9/+9 |
| | | | | | Several small changes from feedback on 5.4 alhpa rc1 (warnings, typos in the manual, and the like) | ||||
* | Details | Roberto Ierusalimschy | 2019-05-28 | 1 | -2/+2 |
| | | | | | | | - new error message for "attempt to assign to const variable" - note in the manual about compatibility options - comments - small changes in 'read_line' and 'pushstr' | ||||
* | A few more improvements in 'luaO_pushvfstring' | Roberto Ierusalimschy | 2019-05-03 | 1 | -29/+37 |
| | | | | | | | | - 'L' added to the 'BuffFS' structure - '%c' does not handle control characters (it is not its business. This now is done by the lexer, who is the one in charge of that kind of errors.) - avoid the direct use of 'l_sprintf' in the Lua kernel | ||||
* | Some more small improvements to 'luaO_pushvfstring' | Roberto Ierusalimschy | 2019-04-26 | 1 | -54/+68 |
| | | | | | | | Details: - counter 'pushed' moved to the struct 'BuffFS' - new auxiliar function 'getbuff' to build strings directly on the buffer. | ||||
* | Revamp of 'lua_pushfstring' / 'luaO_pushvfstring' | Roberto Ierusalimschy | 2019-04-24 | 1 | -37/+107 |
| | | | | | | | | | The function 'luaO_pushvfstring' now uses an internal buffer to concatenate small strings, instead of pushing all pieces on the stack. This avoids the creation of several small Lua strings for each piece of the result. (For instance, a format like "n: '%d'" used to create three intermediate strings: "n: '", the numeral, and "'". Now it creates none.) | ||||
* | Added field 'srclen' to structure 'lua_Debug' | Roberto Ierusalimschy | 2019-04-04 | 1 | -15/+12 |
| | | | | | | This new field gets the length of 'source' in the same structure. Unlike the other strings in that structure, 'source' can be relatively large, and Lua already has its length readily available. | ||||
* | Changes in the validation of UTF-8 | Roberto Ierusalimschy | 2019-03-15 | 1 | -3/+3 |
| | | | | | | | | | | | All UTF-8 encoding functionality (including the escape sequence '\u') accepts all values from the original UTF-8 specification (with sequences of up to six bytes). By default, the decoding functions in the UTF-8 library do not accept invalid Unicode code points, such as surrogates. A new parameter 'nonstrict' makes them accept all code points up to (2^31)-1, as in the original UTF-8 specification. | ||||
* | New macros for arithmetic/bitwise operations in 'luaV_execute' | Roberto Ierusalimschy | 2018-11-05 | 1 | -1/+1 |
| | | | | | | | The repetitive code of the arithmetic and bitwise operators in the main iterpreter loop was moved to appropriate macros. (As a detail, the function 'luaV_div' was renamed 'luaV_idiv', as it does an "integer division" (floor division). | ||||
* | Corrections in the implementation of '%' for floats. | Roberto Ierusalimschy | 2018-08-28 | 1 | -5/+1 |
| | | | | | | | | | The multiplication (m*b) used to test whether 'm' is non-zero and 'm' and 'b' have different signs can underflow for very small numbers, giving a wrong result. The use of explicit comparisons solves this problem. This commit also adds several new tests for '%' (both for floats and for integers) to exercise more corner cases, such as very large and very small values. | ||||
* | Removed extra information from RCS keyword strings | Roberto Ierusalimschy | 2018-08-23 | 1 | -1/+1 |
| | | | | | Version numbers and dates (mostly wrong) from RCS keyword strings removed from all source files; only the file name are kept. | ||||
* | no more 'luaO_nilobject' to avoid comparison of global variable addresses | Roberto Ierusalimschy | 2018-06-01 | 1 | -5/+1 |
| | | | | (now uses static variables) | ||||
* | 'luaO_pushvfstring' does not need to reallocate stack | Roberto Ierusalimschy | 2018-04-25 | 1 | -10/+12 |
| | | | | (less error cases in the API) | ||||
* | removed compatibility code with older versions | Roberto Ierusalimschy | 2018-02-27 | 1 | -3/+1 |
| | |||||
* | janitor work on casts | Roberto Ierusalimschy | 2018-01-28 | 1 | -8/+8 |
| | |||||
* | typos in comments | Roberto Ierusalimschy | 2017-12-30 | 1 | -3/+3 |
| | |||||
* | detail (typo in comments) | Roberto Ierusalimschy | 2017-11-23 | 1 | -2/+2 |
| | |||||
* | detail ('signal' -> 'sign' in comments) | Roberto Ierusalimschy | 2017-11-16 | 1 | -4/+4 |
| | |||||
* | new function 'luaV_flttointeger' to convert floats to integers (without | Roberto Ierusalimschy | 2017-11-08 | 1 | -2/+2 |
| | | | | | string coercions) + string operands to bitwise operations handled by string metamethods | ||||
* | raw operation should not convert strings to numbers | Roberto Ierusalimschy | 2017-10-10 | 1 | -2/+2 |
| | |||||
* | coercion string->number in arithmetic operations moved to string | Roberto Ierusalimschy | 2017-07-07 | 1 | -2/+2 |
| | | | | library | ||||
* | new type 'StackValue' for stack elements | Roberto Ierusalimschy | 2017-06-29 | 1 | -19/+26 |
| | | | | (we may want to put extra info there in the future) | ||||
* | assert removed in 'luaO_arith' | Roberto Ierusalimschy | 2017-05-24 | 1 | -2/+1 |
| | | | | (nobody calls it with L==NULL) | ||||
* | new macro 'lua_pointer2str' to encapsulate use of 'l_sprintf' inside | Roberto Ierusalimschy | 2017-04-19 | 1 | -2/+3 |
| | | | | the kernel | ||||
* | detail (removing spaces at end of lines) | Roberto Ierusalimschy | 2016-12-22 | 1 | -2/+2 |
| | |||||
* | small corrections for C++ compliance | Roberto Ierusalimschy | 2016-06-27 | 1 | -2/+2 |
| | |||||
* | do not convert decimal constants with overflow to integers. | Roberto Ierusalimschy | 2016-05-20 | 1 | -2/+8 |
| | | | | (Therefore, they will be converted as floats) | ||||
* | 'luaO_str2num' (and, therefore, 'lua_stringtonumber', 'number', | Roberto Ierusalimschy | 2016-05-02 | 1 | -10/+46 |
| | | | | | and coercions) accepts both the locale point and a dot as its radix character | ||||
* | comments | Roberto Ierusalimschy | 2015-12-14 | 1 | -11/+13 |
| | |||||
* | macro 'incr_top' replaced by function 'luaD_inctop'. (It is not used | Roberto Ierusalimschy | 2015-11-02 | 1 | -3/+3 |
| | | | | in critical time pathes, can save a few bytes without the macro) | ||||
* | 'luaO_pushvfstring' now uses 'incr_top' to increment top. | Roberto Ierusalimschy | 2015-11-02 | 1 | -10/+10 |
| | |||||
* | simpler code for 'luaO_fb2int' | Roberto Ierusalimschy | 2015-06-26 | 1 | -4/+2 |
| | |||||
* | using 'snprintf' in C99 (both for documentation of buffer sizes | Roberto Ierusalimschy | 2015-06-18 | 1 | -4/+4 |
| | | | | and some complains from tools) | ||||
* | some details in 'luaO_int2fb' + more consistent use of the locale | Roberto Ierusalimschy | 2015-04-11 | 1 | -10/+20 |
| | | | | decimal point | ||||
* | details (avoid 'lint' warnings) | Roberto Ierusalimschy | 2015-03-28 | 1 | -5/+5 |
| | |||||
* | macros 'luai_num*' (for float arithmetic operations) moved to | Roberto Ierusalimschy | 2015-02-05 | 1 | -3/+2 |
| | | | | llimits.h. | ||||
* | removed useless initializations | Roberto Ierusalimschy | 2014-12-26 | 1 | -2/+2 |
| | |||||
* | 'x//y' extended to floats | Roberto Ierusalimschy | 2014-11-21 | 1 | -4/+5 |
| | |||||
* | no need to cast '*s' to unsigned char when we know it is a digit + | Roberto Ierusalimschy | 2014-11-04 | 1 | -4/+4 |
| | | | | no need to call 'luaO_hexavalue' for decimal digits | ||||
* | added include for 'lprefix.h', for stuff that must be added before | Roberto Ierusalimschy | 2014-11-02 | 1 | -4/+7 |
| | | | | any other header file | ||||
* | small simplifications in code for 'lua_strx2number' | Roberto Ierusalimschy | 2014-10-28 | 1 | -15/+13 |
| | |||||
* | small reorganization of tests around LUA_USE_C99 | Roberto Ierusalimschy | 2014-10-27 | 1 | -20/+2 |
| | |||||
* | `name' in comments changed to 'name' | Roberto Ierusalimschy | 2014-10-25 | 1 | -2/+2 |
| | |||||
* | added some casts to avoid warnings in some compilers | Roberto Ierusalimschy | 2014-10-24 | 1 | -3/+3 |
| | |||||
* | macros 'LUA_QL'/'LUA_QL' deprecated | Roberto Ierusalimschy | 2014-10-17 | 1 | -4/+3 |
| |