diff options
| author | Michael Matz <matz@suse.de> | 2016-10-17 05:20:20 +0200 |
|---|---|---|
| committer | Michael Matz <matz@suse.de> | 2016-12-15 17:47:06 +0100 |
| commit | 21d2b71b5c1ad1c51866ff8d7a1376f132b1cafa (patch) | |
| tree | 3e0159e338f8e89c35b5e97b6aa55d189fbf0f17 /libtcc.c | |
| parent | 38e5cf0983e02b2fc77d77adfd9b937768dfcfd5 (diff) | |
| download | tinycc-21d2b71b5c1ad1c51866ff8d7a1376f132b1cafa.tar.gz tinycc-21d2b71b5c1ad1c51866ff8d7a1376f132b1cafa.tar.bz2 | |
Free defines before gen_inline_functions
gen_inline_functions uses the macro facilities of the preprocessor,
which would interact when macros would still be defined in a
different pre-processor implementation I'm working on.
So always free defines before generating inline functions, they
are all macro expanded already.
Diffstat (limited to 'libtcc.c')
| -rw-r--r-- | libtcc.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -670,13 +670,13 @@ static int tcc_compile(TCCState *s1) decl(VT_CONST); if (tok != TOK_EOF) expect("declaration"); + /* reset define stack, but keep -D and built-ins */ + free_defines(define_start); tccgen_end(s1); } s1->error_set_jmp_enabled = 0; free_inline_functions(s1); - /* reset define stack, but keep -D and built-ins */ - free_defines(define_start); sym_pop(&global_stack, NULL); sym_pop(&local_stack, NULL); return s1->nb_errors != 0 ? -1 : 0; |
