mescc: Tinycc support: bugfix *foo = bar.
authorJan Nieuwenhuizen <janneke@gnu.org>
Fri, 28 Jul 2017 13:45:22 +0000 (15:45 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Fri, 28 Jul 2017 13:45:22 +0000 (15:45 +0200)
* module/language/c99/compiler.mes (base->ident-address): Typo, fixes (non-char*)*x = y.
* scaffold/tests/77-pointer-assign.c (test): Test it.

module/language/c99/compiler.mes
scaffold/tests/77-pointer-assign.c

index f410d3b884debe2a777465d4f33dcf4c46f50208..0fb8231a1186c8762480a2788b8175fab97a9938 100644 (file)
                            4)))
             (wrap-as (append (i386:local->accu (local:id local))
                              (if (= size 1) (i386:byte-base->accu-address)
-                                 (i386:byte-base->accu-address)))))
+                                 (i386:base->accu-address)))))
           (let ((size 4)) ;; FIXME
             (wrap-as (append (i386:label-mem->accu `(#:address ,o))
                              (if (= size 1) (i386:byte-base->accu-address)
index d8f063c9238ebf77d4c374420272649c7af121e0..dbc47f641377b3af9c6e75deefd613cc958b2b7b 100644 (file)
@@ -57,9 +57,8 @@ test ()
   eputs ("f.bar:"); eputs (itoa (f.bar)); eputs ("\n");
   if (f.bar != 0x11223344) return 1;
   add2 (&f.bar);
-  // FIXME
-  // eputs ("f.bar:"); eputs (itoa (f.bar)); eputs ("\n");
-  // if (f.bar != 0x22334455) return 2;
+  eputs ("f.bar:"); eputs (itoa (f.bar)); eputs ("\n");
+  if (f.bar != 0x22334455) return 2;
 
   return 0;
 }