diff --git a/module/language/c99/compiler.mes b/module/language/c99/compiler.mes index 54eb31c5..28a4a80c 100644 --- a/module/language/c99/compiler.mes +++ b/module/language/c99/compiler.mes @@ -805,7 +805,8 @@ _))))) (list (lambda (f g ta t d) (i386:push-base))) (.text accu) - (i386:pop-accu) + (list (lambda (f g ta t d) + (i386:pop-base))) (list (lambda (f g ta t d) (i386:sub-base))))))) @@ -1619,7 +1620,8 @@ _))))) (list (lambda (f g ta t d) (i386:push-base))) (.text accu) - (i386:pop-accu) + (list (lambda (f g ta t d) + (i386:pop-base))) (list (lambda (f g ta t d) (i386:sub-base))))))) @@ -1680,6 +1682,8 @@ _))))) (list (lambda (f g ta t d) (i386:push-base))) (.text accu) + (list (lambda (f g ta t d) + (i386:pop-base))) (list (lambda (f g ta t d) (i386:base-sub))))))) @@ -1693,6 +1697,8 @@ _))))) (list (lambda (f g ta t d) (i386:push-base))) (.text accu) + (list (lambda (f g ta t d) + (i386:pop-base))) (list (lambda (f g ta t d) (i386:base-sub))))))) diff --git a/scaffold/t.c b/scaffold/t.c index 67843c68..7b2d95e4 100644 --- a/scaffold/t.c +++ b/scaffold/t.c @@ -228,6 +228,13 @@ make_tmps_test (struct scm* cells) int struct_test () { + g_cells[0].type = TNUMBER; + g_cells[1].type = TNUMBER; + puts ("t: TYPE (0) != TYPE (1)\n"); + if (TYPE (0) == TYPE (1)) goto ok; + return 1; + ok: + g_cells[0].car = 1; g_cells[1].car = 2;