Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | New type 'TStatus' for thread status/error codes | Roberto Ierusalimschy | 2025-01-30 | 1 | -1/+1 |
| | |||||
* | Added gcc option '-Wconversion' | Roberto Ierusalimschy | 2024-07-27 | 1 | -4/+4 |
| | | | | | No warnings for standard numerical types. Still pending alternative numerical types. | ||||
* | Cleaning of llimits.h | Roberto Ierusalimschy | 2024-06-20 | 1 | -3/+13 |
| | | | | | | Several definitions that don't need to be "global" (that is, that concerns only specific parts of the code) moved out of llimits.h, to more appropriate places. | ||||
* | Some 'unsigned int' changed to 'unsigned' | Roberto Ierusalimschy | 2024-03-22 | 1 | -3/+3 |
| | | | | | 'unsigned int' is too long sometimes. (We already write 'long' instead of 'long int'...) | ||||
* | Merge branch 'master' into nextversion | Roberto Ierusalimschy | 2024-01-25 | 1 | -1/+1 |
|\ | |||||
| * | Bug: Buffer overflow in string concatenation | Roberto Ierusalimschy | 2023-12-21 | 1 | -1/+1 |
| | | | | | | | | | | Even if the string fits in size_t, the whole size of the TString object can overflow when we add the header. | ||||
| * | Cannot use 'getshrstr' before setting 'shrlen' | Roberto Ierusalimschy | 2023-08-25 | 1 | -1/+1 |
| | | |||||
* | | External strings | Roberto Ierusalimschy | 2023-11-09 | 1 | -3/+75 |
| | | | | | | | | Strings can use external buffers to store their contents. | ||||
* | | Towards external strings | Roberto Ierusalimschy | 2023-11-08 | 1 | -8/+11 |
| | | | | | | | | Long strings have a pointer to string contents. | ||||
* | | Added suport for Fixed Buffers | Roberto Ierusalimschy | 2023-09-05 | 1 | -1/+1 |
|/ | | | | | A fixed buffer keeps a binary chunk "forever", so that the program does not need to copy some of its parts when loading it. | ||||
* | More disciplined use of 'getstr' and 'tsslen' | Roberto Ierusalimschy | 2023-08-17 | 1 | -5/+6 |
| | | | | | We may want to add other string variants in the future; this change documents better where the code may need to handle those variants. | ||||
* | Broadening the use of branch hints | Roberto Ierusalimschy | 2021-02-24 | 1 | -4/+4 |
| | | | | | | More uses of macros 'likely'/'unlikely' (renamed to 'l_likely'/'l_unlikely'), both in range (extended to the libraries) and in scope (extended to hooks, stack growth). | ||||
* | Hash always use all characters in a long string | Roberto Ierusalimschy | 2020-10-12 | 1 | -16/+4 |
| | | | | | | | Hashes for long strings are computed only when they are used as keys in a table, not a too common case. And, in that case, it is to easy to force collisions changing only the characters which are not part of the hash. | ||||
* | Short strings always use all bytes in the hash | Roberto Ierusalimschy | 2020-04-01 | 1 | -5/+7 |
| | | | | | | Collisions in short strings occurr just by their existence, when internalizing them. (Collisions in long strings is caused/controlled by the program, when adding them as keys to the same table.) | ||||
* | Clearer distinction between types and tags | Roberto Ierusalimschy | 2020-01-31 | 1 | -5/+5 |
| | | | | | LUA_T* represents only types; tags (types + Variants) are represented by LUA_V* constants. | ||||
* | Details | Roberto Ierusalimschy | 2019-06-03 | 1 | -2/+2 |
| | | | | | Several small changes from feedback on 5.4 alhpa rc1 (warnings, typos in the manual, and the like) | ||||
* | 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. | ||||
* | new macros 'likely'/'unlikely' with hints for jump predictions | Roberto Ierusalimschy | 2018-05-30 | 1 | -5/+5 |
| | | | | (used only in errors for now) | ||||
* | userdata can have multiple user values | Roberto Ierusalimschy | 2018-02-20 | 1 | -5/+8 |
| | |||||
* | no more 'nfield' string | Roberto Ierusalimschy | 2018-02-15 | 1 | -8/+5 |
| | |||||
* | janitor work on casts | Roberto Ierusalimschy | 2018-01-28 | 1 | -2/+2 |
| | |||||
* | 'rehash' -> 'tablerehash' | Roberto Ierusalimschy | 2017-12-18 | 1 | -6/+6 |
| | | | | (to avoid name colisions when compiling Lua as a single file) | ||||
* | back to reallocation when resizing the string table. | Roberto Ierusalimschy | 2017-12-12 | 1 | -30/+60 |
| | | | | | (Not a good idea to explicitly allocate new memory when shrinking something.) | ||||
* | more freedom in handling memory-allocation errors (not all allocations | Roberto Ierusalimschy | 2017-12-08 | 1 | -2/+5 |
| | | | | | automatically raise an error), which allows fixing a bug when resizing a table. | ||||
* | using explicit tests for allocation overflow whenever possible | Roberto Ierusalimschy | 2017-12-07 | 1 | -2/+10 |
| | |||||
* | rehashes string table always allocating a new array instead of | Roberto Ierusalimschy | 2017-12-01 | 1 | -17/+11 |
| | | | | | reallocating old one. (Avoids problems if reallocation to a small size fails.) | ||||
* | no more reference 'memerrmsg' + new reference to "n" | Roberto Ierusalimschy | 2017-07-27 | 1 | -8/+8 |
| | | | | | | (both can be retrieved by 'luaS_newliteral' without creating anything, because they are fixed, but "n" deserves fast access while 'memerrmsg' does not) | ||||
* | tiny code refactoring in 'luaS_hash' | Roberto Ierusalimschy | 2015-11-23 | 1 | -4/+3 |
| | |||||
* | new function 'luaS_hashlongstr' | Roberto Ierusalimschy | 2015-11-03 | 1 | -1/+11 |
| | |||||
* | detail (added assertion) | Roberto Ierusalimschy | 2015-10-08 | 1 | -1/+2 |
| | |||||
* | code for string cache generalized for "associative sets" (compiler | Roberto Ierusalimschy | 2015-09-22 | 1 | -16/+22 |
| | | | | will optimize away or inline the extra loops) | ||||
* | macros 'getaddrstr' and 'getstr' unified (they do the same thing) | Roberto Ierusalimschy | 2015-09-17 | 1 | -4/+4 |
| | |||||
* | long strings are created directly in final position when possible | Roberto Ierusalimschy | 2015-09-08 | 1 | -7/+13 |
| | | | | | (instead of using an auxiliar buffer to first create the string and then allocate the final string and copy result there) | ||||
* | detail (i + 1 > exp is simply i >= exp) | Roberto Ierusalimschy | 2015-06-18 | 1 | -2/+2 |
| | |||||
* | 'strcache' elements as arrays of 1 element hints that cache can | Roberto Ierusalimschy | 2015-06-01 | 1 | -9/+9 |
| | | | | be n-way (instead of direct mapped) | ||||
* | 'clearapihash' -> 'luaS_clearcache' and moved to 'lstring.c' (which | Roberto Ierusalimschy | 2015-03-25 | 1 | -1/+14 |
| | | | | keeps all code related to this cache) | ||||
* | new cache for interning strings | Roberto Ierusalimschy | 2015-03-04 | 1 | -3/+31 |
| | |||||
* | size of short strings stored in a single byte, to reduce the size | Roberto Ierusalimschy | 2015-01-16 | 1 | -12/+15 |
| | | | | of struct 'TString' | ||||
* | added include for 'lprefix.h', for stuff that must be added before | Roberto Ierusalimschy | 2014-11-02 | 1 | -4/+6 |
| | | | | any other header file | ||||
* | 'iswhite' and related macros now can work directly on any object | Roberto Ierusalimschy | 2014-07-21 | 1 | -3/+3 |
| | | | | (no need to convert to 'GCObject') | ||||
* | type 'Udata' refers directly to structure inside the union (union | Roberto Ierusalimschy | 2014-07-18 | 1 | -5/+5 |
| | | | | used only for aligning purposes now) | ||||
* | type 'TString' refers directly to the structure inside the union | Roberto Ierusalimschy | 2014-07-18 | 1 | -22/+22 |
| | | | | (union used only for size purposes) | ||||
* | added check for conversion 'obj2gco' (and corrections for small | Roberto Ierusalimschy | 2014-07-18 | 1 | -3/+3 |
| | | | | problems detected by this check) | ||||
* | use appropriate macros to convert GCObject to specific types | Roberto Ierusalimschy | 2014-06-18 | 1 | -3/+7 |
| | |||||
* | LUAI_FUNC is being used only in header files | Roberto Ierusalimschy | 2014-04-02 | 1 | -2/+2 |
| | |||||
* | removed function 'luaS_eqstr' (not used anywhere) | Roberto Ierusalimschy | 2014-03-19 | 1 | -10/+1 |
| | |||||
* | userdata can have any Lua value as uservalue | Roberto Ierusalimschy | 2014-02-19 | 1 | -3/+3 |
| | |||||
* | check for shrinking string table done only at the end of a GC cycle | Roberto Ierusalimschy | 2013-09-11 | 1 | -3/+1 |
| | |||||
* | 'luaC_newobj' does not handle special cases; only special case | Roberto Ierusalimschy | 2013-09-11 | 1 | -3/+3 |
| | | | | now is threads, which do not use 'luaC_newobj' anymore. | ||||
* | back to open hashing for the string table (but with a different | Roberto Ierusalimschy | 2013-09-05 | 1 | -78/+43 |
| | | | | | 'hnext' field, to strings are still collected like all other objects) |