aboutsummaryrefslogtreecommitdiff
path: root/tcc.h
diff options
context:
space:
mode:
authorMichael Matz <matz@suse.de>2017-07-10 22:25:11 +0200
committerMichael Matz <matz@suse.de>2017-07-10 22:25:11 +0200
commit9bea88d61611dc12eeb211e342461f9157177464 (patch)
treed8a3c666fce163dd132c7bf01e6c13c1396676c4 /tcc.h
parent2240422da9b55b71cfb32220bb0246ec92bfc432 (diff)
downloadtinycc-9bea88d61611dc12eeb211e342461f9157177464.tar.gz
tinycc-9bea88d61611dc12eeb211e342461f9157177464.tar.bz2
Fix statement exprs returning a local label
Like returned local variables also labels local to a statement expression can be returned, and so their symbols must not be immediately freed (though they need to be removed from the symbol table).
Diffstat (limited to 'tcc.h')
-rw-r--r--tcc.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/tcc.h b/tcc.h
index 47c3c5f..8b56516 100644
--- a/tcc.h
+++ b/tcc.h
@@ -1234,7 +1234,7 @@ ST_INLN Sym *define_find(int v);
ST_FUNC void free_defines(Sym *b);
ST_FUNC Sym *label_find(int v);
ST_FUNC Sym *label_push(Sym **ptop, int v, int flags);
-ST_FUNC void label_pop(Sym **ptop, Sym *slast);
+ST_FUNC void label_pop(Sym **ptop, Sym *slast, int keep);
ST_FUNC void parse_define(void);
ST_FUNC void preprocess(int is_bof);
ST_FUNC void next_nomacro(void);