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

diff --git a/main.c b/main.c
index 0bd1ec9..f4a6f03 100644 (file)
--- a/main.c
+++ b/main.c
@@ -957,11 +957,12 @@ 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_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;
+                       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;
+                       props[ATOMIC_TYPE_LONG_DOUBLE].struct_alignment = 16;
                }
        } else if (is_windows_os(os)) {
                if (machine_size == 64) {