summaryrefslogtreecommitdiff
path: root/lparser.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 'iswhite' and related macros now can work directly on any objectRoberto Ierusalimschy2014-07-211-4/+4
| | | | (no need to convert to 'GCObject')
* type 'TString' refers directly to the structure inside the unionRoberto Ierusalimschy2014-07-181-4/+4
| | | | (union used only for size purposes)
* added check for conversion 'obj2gco' (and corrections for smallRoberto Ierusalimschy2014-07-181-4/+4
| | | | problems detected by this check)
* more precision between closure types ('LClosure' x 'CClosure')Roberto Ierusalimschy2014-06-191-5/+5
|
* first implementation of '<<', '>>', and '~' (bitwise not)Roberto Ierusalimschy2013-12-301-7/+11
|
* first implementation of bitwise operators '&' (band), '|' (bor),Roberto Ierusalimschy2013-12-181-7/+11
| | | | and '~' (bxor)
* new order for binary operations (grouping them by type of result)Roberto Ierusalimschy2013-12-161-9/+11
|
* bug (GC can collect long identifier during parser) + change (usingRoberto Ierusalimschy2013-08-301-28/+17
| | | | a single constant table for all functions in a chunk)
* added 'local' bit (true => object is only refered by local variables)Roberto Ierusalimschy2013-08-161-1/+2
|
* new operation '//' (integer division)Roberto Ierusalimschy2013-04-261-2/+4
|
* default increment for 'for' loop is an integer (1, not 1.0)Roberto Ierusalimschy2013-04-251-2/+2
|
* first implementation of literal integers (no constant folding yet)Roberto Ierusalimschy2013-04-161-4/+9
|
* commentsRoberto Ierusalimschy2013-02-061-3/+6
|
* detail (avoid being picky about conversion from 'unsigned char'Roberto Ierusalimschy2012-08-061-2/+2
| | | | to 'int')
* extend optimization of 'if a then break end' for the caseRoberto Ierusalimschy2012-05-201-4/+10
| | | | 'if a then break; end'
* no more 'Proto' objects on the stack. Protos are anchored on outerRoberto Ierusalimschy2012-05-081-45/+52
| | | | Protos or on a Closure, which must be created before the Proto.
* primaryexp -> suffixedexp; prefixexp -> primaryexp + more 'syntactical'Roberto Ierusalimschy2012-04-201-15/+17
| | | | way to distinguish between function calls and assignments
* 'eqstr' -> 'luaS_eqstr'Roberto Ierusalimschy2012-01-231-8/+8
|
* old error messages may be misleadingRoberto Ierusalimschy2011-12-021-4/+4
|
* more uses of 'l_noret'Roberto Ierusalimschy2011-11-301-7/+5
|
* detail (avoid applying macro 'getstr' with a function-call argument)Roberto Ierusalimschy2011-10-311-2/+3
|
* silly bug in 5.2 beta: assignment conflict code did not test to checkRoberto Ierusalimschy2011-10-241-17/+20
| | | | whether variable was a table element
* lint (unreachable code)Roberto Ierusalimschy2011-09-301-2/+2
|
* small bug in if-goto optimization: block must be closed ('leaveblock')Roberto Ierusalimschy2011-09-141-5/+8
| | | | *before* the jump out ('escapelist')
* optimization for |if cond then goto|Roberto Ierusalimschy2011-08-301-18/+37
|
* cleaner code for 'if' constructRoberto Ierusalimschy2011-08-251-20/+14
|
* 'nCcalls' should be local to each thread, as each thread may have itsRoberto Ierusalimschy2011-08-231-6/+6
| | | | own C stack (with LuaThreads or something similar)
* reducing even more use of C stack by the parser: struct 'FuncState'Roberto Ierusalimschy2011-07-271-12/+12
| | | | | does not need field 'L' + number of labels/gotos in a chunk may be limited to SHRT_MAX. (Also removed some non-needed 'unsigned's.)
* detail (cleaned whitespaces at end of lines)Roberto Ierusalimschy2011-07-151-3/+3
|
* small simplifications (and assert was wrongly written)Roberto Ierusalimschy2011-07-021-4/+2
|
* back to "one-label-per-block"Roberto Ierusalimschy2011-06-271-20/+13
|
* label syntax changed to '::label::'Roberto Ierusalimschy2011-06-201-6/+6
|
* label names must be unique inside a functionRoberto Ierusalimschy2011-06-161-12/+27
|
* commentRoberto Ierusalimschy2011-05-021-2/+2
|
* local function name only visible to debug info after being initializedRoberto Ierusalimschy2011-04-181-1/+6
|
* no need of lookahead in ZioRoberto Ierusalimschy2011-02-231-3/+3
|
* error for repeated label + jumps allowed to labels followed byRoberto Ierusalimschy2011-02-141-24/+34
| | | | 'no-op' statements
* 'break' does not need to be last statement in a block +Roberto Ierusalimschy2011-02-141-81/+84
| | | | 'explist1' -> 'explist' + moving a few functions around
* 'break' coded as 'goto' + small bug when closing multiple gotosRoberto Ierusalimschy2011-02-101-59/+52
| | | | to the same label
* simpler code for repeat-untilRoberto Ierusalimschy2011-02-091-11/+5
|
* corrected 'follow' for checking whether label is last statementRoberto Ierusalimschy2011-02-091-14/+21
| | | | in a block
* small changes in goto-related error messagesRoberto Ierusalimschy2011-02-091-8/+15
|
* ensures that all local variables are declared inside some block,Roberto Ierusalimschy2011-02-071-45/+39
| | | | opening a new block at 'open_func'
* some reorganization of dynamic data structures used by the parserRoberto Ierusalimschy2011-02-071-64/+65
|
* no more 'OP_CLOSE' instructions (use jumps to close upvalues)Roberto Ierusalimschy2011-02-071-3/+7
|
* first implementation of 'goto'Roberto Ierusalimschy2011-02-041-14/+174
|
* new scheme to close upvalues in 'break'; jump instructions mayRoberto Ierusalimschy2011-02-011-4/+4
| | | | do the close, avoiding the need for a OP_CLOSE instruction
* detail (cleaning trailing spaces)Roberto Ierusalimschy2011-01-261-2/+2
|
* new closures are always created on "next" register (so that GC knowsRoberto Ierusalimschy2010-12-171-9/+6
| | | | stack limit)
* commentRoberto Ierusalimschy2010-12-151-2/+2
|