Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / g++.dg / compat / struct-layout-1_y1.h
blob9a5d2468a6ae78351505f97c1875c9839ff84430
1 #include "struct-layout-1.h"
3 #define F(n, x, v, w) \
4 if (info.flds[i] != &s##n.x) \
5 FAIL (n, 50); \
6 if (info.sizes[i] != sizeof (s##n.x)) \
7 FAIL (n, 51); \
8 if (info.aligns[i] != __alignof__ (s##n.x)) \
9 FAIL (n, 52); \
10 if (s##n.x != (__typeof__ (s##n.x)) v) \
11 FAIL (n, 53); \
12 if (a##n[2].x != (__typeof__ (s##n.x)) w) \
13 FAIL (n, 54); \
14 if (arg0.x != s##n.x) \
15 FAIL (n, 55); \
16 if (arg2.x != a##n[2].x) \
17 FAIL (n, 56); \
18 ret.x = s##n.x; \
19 ++i;
20 #define N(n, x) \
21 if (info.flds[i] != &s##n.x) \
22 FAIL (n, 50); \
23 if (info.sizes[i] != sizeof (s##n.x)) \
24 FAIL (n, 51); \
25 if (info.aligns[i] != __alignof__ (s##n.x)) \
26 FAIL (n, 52); \
27 ++i;
28 #define B(n, x, v, w) \
29 b1.x = v; b2.x = w; \
30 if (s##n.x != b1.x) \
31 FAIL (n, 53); \
32 if (a##n[2].x != b2.x) \
33 FAIL (n, 54); \
34 if (arg0.x != s##n.x) \
35 FAIL (n, 55); \
36 if (arg2.x != a##n[2].x) \
37 FAIL (n, 56); \
38 ret.x = s##n.x; \
39 ++j;
40 #define TX(n, type, attrs, fields, ops) \
41 type S##n { fields } attrs; \
42 extern type S##n s##n; \
43 type S##n a##n[5]; \
44 type S##n \
45 check##n (type S##n arg0, type S##n *arg1, type S##n arg2) \
46 { \
47 type S##n ret; \
48 type S##n b1, b2; \
49 int i, j; \
51 memset (&ret, 0, sizeof (ret)); \
52 memset (&b1, 0, sizeof (b1)); \
53 memset (&b2, 0, sizeof (b2)); \
54 if (info.sp != &s##n) \
55 FAIL (n, 10); \
56 if (info.a0p != &a##n[0]) \
57 FAIL (n, 11); \
58 if (info.a3p != &a##n[3]) \
59 FAIL (n, 12); \
60 if (info.sz != sizeof (s##n)) \
61 FAIL (n, 13); \
62 if (info.als != __alignof__ (s##n)) \
63 FAIL (n, 14); \
64 if (info.ala0 != __alignof__ (a##n[0])) \
65 FAIL (n, 15); \
66 if (info.ala3 != __alignof__ (a##n[3])) \
67 FAIL (n, 16); \
68 if (arg1 != &a##n[1]) \
69 FAIL (n, 17); \
70 i = 0; j = 0; \
71 ops \
72 if (i != info.nfields || j != info.nbitfields) \
73 FAIL (n, 18); \
75 return ret; \