diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8b2dda7f07f3bfc73b997eeb26b04684880cc8a3..972dbfb7d9df0205c30b3e0795d242cd7f554085 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-07-25 Rask Ingemann Lambertsen <rask@sygehus.dk> + + * gcc.dg/torture/pr30313.c (struct S): Make sure the bit-field is + exactly as wide as an int. + 2007-07-25 Danny Smith <dannysmith@users.sourceforge.net> * gcc.dg/compat/struct-layout-1_generate.c (COMPAT_PRLL): diff --git a/gcc/testsuite/gcc.dg/torture/pr30313.c b/gcc/testsuite/gcc.dg/torture/pr30313.c index 1df85f7edc2bccfff9e9fb91ead201d30a7b973b..aefeb7866f91bd6d367531673dbf1582bb2326b4 100644 --- a/gcc/testsuite/gcc.dg/torture/pr30313.c +++ b/gcc/testsuite/gcc.dg/torture/pr30313.c @@ -4,7 +4,15 @@ static inline void bar(){} struct S { +#if __INT_MAX__ == 32767 + signed int i: 16; +#elif __INT_MAX__ == 2147483647 signed int i: 32; +#elif __INT_MAX__ == 9223372036854775807 + signed int i: 64; +#else +#error Please add support for your target here +#endif }; int main()