Tidy new support for cleanups

encode most things in Syms, do only as much work as necessary
(e.g. pending cleanups), don't track scopes in a large
structure (instead encode the scopes with cleanups directly
in the cleanups tree).  Removes ca. 120 lines of code.
This commit is contained in:
Michael Matz
2019-01-28 01:21:38 +01:00
parent 5d805a90e3
commit 4cc802a88e
3 changed files with 96 additions and 222 deletions

View File

@@ -1366,7 +1366,6 @@ ST_FUNC Sym *label_push(Sym **ptop, int v, int flags)
Sym *s, **ps;
s = sym_push2(ptop, v, 0, 0);
s->r = flags;
s->scope = scope_tracker;
ps = &table_ident[v - TOK_IDENT]->sym_label;
if (ptop == &global_label_stack) {
/* modify the top most local identifier, so that