summaryrefslogtreecommitdiff
path: root/patches/gcc/3.3.2/empty6.patch
blob: 1b0715cebb632aee991596140f2f2dc6f953e527 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
From 3.4 branch.  Fixes test failure
FAIL: g++.dg/abi/empty6.C  (test for warnings, line 6)

===================================================================
RCS file: /cvs/gcc/gcc/gcc/testsuite/g++.dg/abi/empty6.C,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- gcc/gcc/testsuite/g++.dg/abi/empty6.C	2002/09/25 19:07:35	1.1
+++ gcc/gcc/testsuite/g++.dg/abi/empty6.C	2003/06/03 19:10:09	1.2
@@ -5,4 +5,9 @@
 struct B {
   A a; // { dg-warning "empty" }
   virtual void f () {}
-};
+} __attribute__((aligned(8)));
+/* The preceding attribute is necessary on targets with
+   BIGGEST_ALIGNMENT <= 32 to trigger the warning, as otherwise a 32 bit
+   offset is split into DECL_FIELD_OFFSET 4 and DECL_FIELD_BIT_OFFSET 0,
+   and then there is no discrepancy between DECL_FIELD_OFFSET and
+   byte_position to warn about.  */