Denys Vlasenko
|
266aa00012
bc: store only index in p->exits, it's the only thing used there
|
vor 6 Jahren |
Denys Vlasenko
|
8e7686e457
bc: p->exits.func is never zero, do not check for that
|
vor 6 Jahren |
Denys Vlasenko
|
de24e9d366
bc: remove redundant JUMP generation when parsing 'while'
|
vor 6 Jahren |
Denys Vlasenko
|
06ade77002
bc: simplify use of "ip" in loop parsing functions
|
vor 6 Jahren |
Denys Vlasenko
|
146a79d19c
bc: shring bc_lib[]
|
vor 6 Jahren |
Denys Vlasenko
|
15850832be
bc: shrink zbc_parse_if() a bit more
|
vor 6 Jahren |
Denys Vlasenko
|
6b5b46f817
bc: stop using p->exits when parsing if()
|
vor 6 Jahren |
Denys Vlasenko
|
7415633128
bc: preparation to stop using p->exits when parsing if()
|
vor 6 Jahren |
Denys Vlasenko
|
5d18f6be90
bc: fix "print 1,2,3" parsing
|
vor 6 Jahren |
Denys Vlasenko
|
cb18b546f7
bc: disallow empty statement as function body
|
vor 6 Jahren |
Denys Vlasenko
|
2e8be023cb
bc: allow only one <newline> between if() and stmt
|
vor 6 Jahren |
Denys Vlasenko
|
e6c40c48d9
bc: simplify bc_parse_pushName(), do not free name in it - avoids one strdup
|
vor 6 Jahren |
Denys Vlasenko
|
563d93c9a4
bc: simplify zbc_parse_break_or_continue(), logic is the same
|
vor 6 Jahren |
Denys Vlasenko
|
a50576a415
bc: fold zbc_parse_else() into its only caller
|
vor 6 Jahren |
Denys Vlasenko
|
6d29879c67
bc: fold bc_parse_noElse() into its only caller
|
vor 6 Jahren |
Denys Vlasenko
|
9dc5d08baa
bc: delete unused (write-only) BcParse::nbraces member
|
vor 6 Jahren |
Denys Vlasenko
|
202dd1943c
bc: fixes for multi-line if/while/for
|
vor 6 Jahren |
Denys Vlasenko
|
e9519e44a6
bc: fix handling of 'return' not in functions, and 'define f()<newline>{...}'
|
vor 6 Jahren |
Denys Vlasenko
|
d1d29b4245
bc: partially rewrite parser, tests pass, ^C might be broken now
|
vor 6 Jahren |
Denys Vlasenko
|
99b3762335
bc: lexer debugging, added some failing test cases
|
vor 6 Jahren |
Denys Vlasenko
|
fd51e0c4d2
bc: simplify BC_INST_JUMP[_ZERO] handling
|
vor 6 Jahren |
Denys Vlasenko
|
7db384338a
bc: rewrite "block flag stack" using simple realloc'ed byte array
|
vor 6 Jahren |
Denys Vlasenko
|
f10f17f8d3
bc: drop zbc_parse_endBody() bool parameter, move its code to caller which uses it
|
vor 6 Jahren |
Denys Vlasenko
|
0154d78738
bc: shorten one message, make defines more readable
|
vor 6 Jahren |
Denys Vlasenko
|
7b1df3db97
bc: pull zbc_lex_next() call out of zbc_parse_operator() into one caller that uses it
|
vor 6 Jahren |
Denys Vlasenko
|
17df882a57
bx: add more debug scaffolding
|
vor 6 Jahren |
Denys Vlasenko
|
2ea53a45b7
bc: convert macro bc_parse_push() to function, add debug infrastructure
|
vor 6 Jahren |
Denys Vlasenko
|
f86e960e7c
bc: rename zbc_parse_text() to ..._init(), reuse existing code for library parsing
|
vor 6 Jahren |
Denys Vlasenko
|
0a23814e98
bc: compress two constant arguments of bc_lex_assign() to one
|
vor 6 Jahren |
Denys Vlasenko
|
8226912b2c
bc: remove stale comment, empty lines, regularize comment style
|
vor 6 Jahren |