summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2018-12-16bc: remove use of "BcInstPtr ip" object from loop parsingDenys Vlasenko
2018-12-16bc: store only index in p->exits, it's the only thing used thereDenys Vlasenko
2018-12-16bc: p->exits.func is never zero, do not check for thatDenys Vlasenko
2018-12-16bc: remove redundant JUMP generation when parsing 'while'Denys Vlasenko
2018-12-16bc: simplify use of "ip" in loop parsing functionsDenys Vlasenko
2018-12-16bc: shring bc_lib[]Denys Vlasenko
2018-12-16bc: shrink zbc_parse_if() a bit moreDenys Vlasenko
2018-12-16bc: stop using p->exits when parsing if()Denys Vlasenko
2018-12-16bc: preparation to stop using p->exits when parsing if()Denys Vlasenko
2018-12-16bc: fix "print 1,2,3" parsingDenys Vlasenko
2018-12-16bc: disallow empty statement as function bodyDenys Vlasenko
2018-12-16bc: allow only one <newline> between if() and stmtDenys Vlasenko
2018-12-16bc: simplify bc_parse_pushName(), do not free name in it - avoids one strdupDenys Vlasenko
2018-12-16bc: simplify zbc_parse_break_or_continue(), logic is the sameDenys Vlasenko
2018-12-16bc: fold zbc_parse_else() into its only callerDenys Vlasenko
2018-12-16bc: fold bc_parse_noElse() into its only callerDenys Vlasenko
2018-12-16bc: delete unused (write-only) BcParse::nbraces memberDenys Vlasenko
2018-12-16bc: fixes for multi-line if/while/forDenys Vlasenko
2018-12-16bc: fix handling of 'return' not in functions, and 'define f()<newline>{...}'Denys Vlasenko
2018-12-16bc: partially rewrite parser, tests pass, ^C might be broken nowDenys Vlasenko
2018-12-15bc: lexer debugging, added some failing test casesDenys Vlasenko
2018-12-15bc: simplify BC_INST_JUMP[_ZERO] handlingDenys Vlasenko
2018-12-15bc: rewrite "block flag stack" using simple realloc'ed byte arrayDenys Vlasenko
2018-12-14bc: drop zbc_parse_endBody() bool parameter, move its code to caller which us...Denys Vlasenko
2018-12-14bc: shorten one message, make defines more readableDenys Vlasenko
2018-12-14bc: pull zbc_lex_next() call out of zbc_parse_operator() into one caller that...Denys Vlasenko
2018-12-14bx: add more debug scaffoldingDenys Vlasenko
2018-12-14bc: convert macro bc_parse_push() to function, add debug infrastructureDenys Vlasenko
2018-12-14bc: rename zbc_parse_text() to ..._init(), reuse existing code for library pa...Denys Vlasenko
2018-12-14bc: compress two constant arguments of bc_lex_assign() to oneDenys Vlasenko
2018-12-14bc: remove stale comment, empty lines, regularize comment styleDenys Vlasenko
2018-12-14bc: tweak bc_num_parseDecimal() for readability, logic is not changedDenys Vlasenko
2018-12-14bc: shrink s() in library againDenys Vlasenko
2018-12-14bc: yet another library shrinkDenys Vlasenko
2018-12-14bc: shrink internal library yet moreDenys Vlasenko
2018-12-14bc: shrink internal library moreDenys Vlasenko
2018-12-14bc: shrink internal libraryDenys Vlasenko
2018-12-14bc: group ENABLE_BC code a bit better, no logic changesDenys Vlasenko
2018-12-13bc: fix "dc only" bugDenys Vlasenko
2018-12-13bc: unbreak "only bc" and "only dc" configsDenys Vlasenko
2018-12-13bc: simplify bc_lex_whitespace()Denys Vlasenko
2018-12-13bc: G.sbgn and G.send are unused, remove themDenys Vlasenko
2018-12-13bc: simplify filename saving in zbc_vm_file()Denys Vlasenko
2018-12-13bc: do not append duplicate NUL, reduce indentation in bc_read_line()Denys Vlasenko
2018-12-13bc: change bc_read_line() and zbc_vm_stdin() to avoid double buffersDenys Vlasenko
2018-12-13bc: further simplification in zbc_vm_stdin()Denys Vlasenko
2018-12-13bc: fix another thinkoDenys Vlasenko
2018-12-13bc: fix a thinko: dc uses [] string delimiters, bot bc!Denys Vlasenko
2018-12-13bc: fix comment handlingDenys Vlasenko
2018-12-13bc: further zbc_vm_stdin() optimizationsDenys Vlasenko