The struct alignment of (unsigned) long long on 32 bit Darwin is 4 bytes.
authorChristoph Mallon <christoph.mallon@gmx.de>
Sat, 3 Sep 2011 08:51:53 +0000 (10:51 +0200)
committerChristoph Mallon <christoph.mallon@gmx.de>
Sat, 3 Sep 2011 08:51:53 +0000 (10:51 +0200)
main.c

diff --git a/main.c b/main.c
index 9d989ad..0bd1ec9 100644 (file)
--- a/main.c
+++ b/main.c
@@ -957,9 +957,11 @@ static void init_types_and_adjust(void)
        const char *os = target_machine->operating_system;
        if (is_darwin_os(os)) {
                if (machine_size == 32) {
-                       props[ATOMIC_TYPE_DOUBLE].struct_alignment = 4;
-                       props[ATOMIC_TYPE_LONG_DOUBLE].size        = 16;
-                       props[ATOMIC_TYPE_LONG_DOUBLE].alignment   = 16;
+                       props[ATOMIC_TYPE_LONGLONG].struct_alignment  =  4;
+                       props[ATOMIC_TYPE_ULONGLONG].struct_alignment =  4;
+                       props[ATOMIC_TYPE_DOUBLE].struct_alignment    =  4;
+                       props[ATOMIC_TYPE_LONG_DOUBLE].size           = 16;
+                       props[ATOMIC_TYPE_LONG_DOUBLE].alignment      = 16;
                }
        } else if (is_windows_os(os)) {
                if (machine_size == 64) {