From a1c12b9fb9bd2452a90d3cf504574b3605c09702 Mon Sep 17 00:00:00 2001 From: grischka Date: Sun, 18 Dec 2016 22:05:42 +0100 Subject: tests: add memory leak test Also ... tcctest.c: - exclude stuff that gcc doesn't compile on windows. libtcc.c/tccpp.c: - use unsigned for memory sizes to avoid printf format warnings - use "file:line: message" to make IDE error parsers happy. tccgen.c: fix typo --- tccgen.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'tccgen.c') diff --git a/tccgen.c b/tccgen.c index a4a40f3..dddeea1 100644 --- a/tccgen.c +++ b/tccgen.c @@ -5288,8 +5288,8 @@ static void expr_cond(void) /* this is horrible, but we must also convert first operand */ - vpushv(&sv); - if (c != 2) { + if (c != 0) { + *vtop = sv; gen_cast(&type); if (islv) { mk_pointer(&vtop->type); @@ -5298,17 +5298,14 @@ static void expr_cond(void) gaddrof(); } - if (c != 0) - vswap(); - vtop--; if (c < 0) { r1 = gv(rc); move_reg(r2, r1, type.t); vtop->r = r2; + gsym(tt); + if (islv) + indir(); } - gsym(tt); - if (islv) - indir(); } } } -- cgit v1.3.1