From: Jason Merrill Date: Mon, 20 Oct 2003 22:01:58 +0000 (-0400) Subject: re PR c/11446 ([3.4][3.4 regression?] Incompatibilty with alignment of structures... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=73f079427dd45f8731a9b064932cf8f7cea7d311;p=gcc.git re PR c/11446 ([3.4][3.4 regression?] Incompatibilty with alignment of structures between 3.3 and 3.4 CVS) PR c/11446 * stor-layout.c (layout_decl): Fix alignment handling. From-SVN: r72725 --- diff --git a/gcc/testsuite/gcc.dg/pack-test-5.c b/gcc/testsuite/gcc.dg/pack-test-5.c new file mode 100644 index 00000000000..e95030c089e --- /dev/null +++ b/gcc/testsuite/gcc.dg/pack-test-5.c @@ -0,0 +1,19 @@ +/* PR c/11446: packed on a struct takes precedence over aligned on the type + of a field. */ +/* { dg-do run } */ + +struct A { + double d; +} __attribute__ ((aligned)); + +struct B { + char c; + struct A a; +} __attribute__ ((packed)); + +int main () +{ + if (sizeof (struct B) != sizeof (char) + sizeof (struct A)) + abort (); + return 0; +}