@@ -21,6 +21,12 @@ int main()
21
21
typedef std::aligned_storage<10 , 1 >::type T1;
22
22
#if TEST_STD_VER > 11
23
23
static_assert (std::is_same<std::aligned_storage_t <10 , 1 >, T1>::value, " " );
24
+ #endif
25
+ #if TEST_STD_VER > 17
26
+ // P0767
27
+ static_assert (std::is_trivial<T1>::value, " " );
28
+ #else
29
+ static_assert (std::is_pod<T1>::value, " " );
24
30
#endif
25
31
static_assert (std::alignment_of<T1>::value == 1 , " " );
26
32
static_assert (sizeof (T1) == 10 , " " );
@@ -29,6 +35,12 @@ int main()
29
35
typedef std::aligned_storage<10 , 2 >::type T1;
30
36
#if TEST_STD_VER > 11
31
37
static_assert (std::is_same<std::aligned_storage_t <10 , 2 >, T1>::value, " " );
38
+ #endif
39
+ #if TEST_STD_VER > 17
40
+ // P0767
41
+ static_assert (std::is_trivial<T1>::value, " " );
42
+ #else
43
+ static_assert (std::is_pod<T1>::value, " " );
32
44
#endif
33
45
static_assert (std::alignment_of<T1>::value == 2 , " " );
34
46
static_assert (sizeof (T1) == 10 , " " );
@@ -37,6 +49,12 @@ int main()
37
49
typedef std::aligned_storage<10 , 4 >::type T1;
38
50
#if TEST_STD_VER > 11
39
51
static_assert (std::is_same<std::aligned_storage_t <10 , 4 >, T1>::value, " " );
52
+ #endif
53
+ #if TEST_STD_VER > 17
54
+ // P0767
55
+ static_assert (std::is_trivial<T1>::value, " " );
56
+ #else
57
+ static_assert (std::is_pod<T1>::value, " " );
40
58
#endif
41
59
static_assert (std::alignment_of<T1>::value == 4 , " " );
42
60
static_assert (sizeof (T1) == 12 , " " );
@@ -45,6 +63,12 @@ int main()
45
63
typedef std::aligned_storage<10 , 8 >::type T1;
46
64
#if TEST_STD_VER > 11
47
65
static_assert (std::is_same<std::aligned_storage_t <10 , 8 >, T1>::value, " " );
66
+ #endif
67
+ #if TEST_STD_VER > 17
68
+ // P0767
69
+ static_assert (std::is_trivial<T1>::value, " " );
70
+ #else
71
+ static_assert (std::is_pod<T1>::value, " " );
48
72
#endif
49
73
static_assert (std::alignment_of<T1>::value == 8 , " " );
50
74
static_assert (sizeof (T1) == 16 , " " );
@@ -53,6 +77,12 @@ int main()
53
77
typedef std::aligned_storage<10 , 16 >::type T1;
54
78
#if TEST_STD_VER > 11
55
79
static_assert (std::is_same<std::aligned_storage_t <10 , 16 >, T1>::value, " " );
80
+ #endif
81
+ #if TEST_STD_VER > 17
82
+ // P0767
83
+ static_assert (std::is_trivial<T1>::value, " " );
84
+ #else
85
+ static_assert (std::is_pod<T1>::value, " " );
56
86
#endif
57
87
static_assert (std::alignment_of<T1>::value == 16 , " " );
58
88
static_assert (sizeof (T1) == 16 , " " );
@@ -61,6 +91,12 @@ int main()
61
91
typedef std::aligned_storage<10 , 32 >::type T1;
62
92
#if TEST_STD_VER > 11
63
93
static_assert (std::is_same<std::aligned_storage_t <10 , 32 >, T1>::value, " " );
94
+ #endif
95
+ #if TEST_STD_VER > 17
96
+ // P0767
97
+ static_assert (std::is_trivial<T1>::value, " " );
98
+ #else
99
+ static_assert (std::is_pod<T1>::value, " " );
64
100
#endif
65
101
static_assert (std::alignment_of<T1>::value == 32 , " " );
66
102
static_assert (sizeof (T1) == 32 , " " );
@@ -69,6 +105,12 @@ int main()
69
105
typedef std::aligned_storage<20 , 32 >::type T1;
70
106
#if TEST_STD_VER > 11
71
107
static_assert (std::is_same<std::aligned_storage_t <20 , 32 >, T1>::value, " " );
108
+ #endif
109
+ #if TEST_STD_VER > 17
110
+ // P0767
111
+ static_assert (std::is_trivial<T1>::value, " " );
112
+ #else
113
+ static_assert (std::is_pod<T1>::value, " " );
72
114
#endif
73
115
static_assert (std::alignment_of<T1>::value == 32 , " " );
74
116
static_assert (sizeof (T1) == 32 , " " );
@@ -77,6 +119,12 @@ int main()
77
119
typedef std::aligned_storage<40 , 32 >::type T1;
78
120
#if TEST_STD_VER > 11
79
121
static_assert (std::is_same<std::aligned_storage_t <40 , 32 >, T1>::value, " " );
122
+ #endif
123
+ #if TEST_STD_VER > 17
124
+ // P0767
125
+ static_assert (std::is_trivial<T1>::value, " " );
126
+ #else
127
+ static_assert (std::is_pod<T1>::value, " " );
80
128
#endif
81
129
static_assert (std::alignment_of<T1>::value == 32 , " " );
82
130
static_assert (sizeof (T1) == 64 , " " );
@@ -85,6 +133,12 @@ int main()
85
133
typedef std::aligned_storage<12 , 16 >::type T1;
86
134
#if TEST_STD_VER > 11
87
135
static_assert (std::is_same<std::aligned_storage_t <12 , 16 >, T1>::value, " " );
136
+ #endif
137
+ #if TEST_STD_VER > 17
138
+ // P0767
139
+ static_assert (std::is_trivial<T1>::value, " " );
140
+ #else
141
+ static_assert (std::is_pod<T1>::value, " " );
88
142
#endif
89
143
static_assert (std::alignment_of<T1>::value == 16 , " " );
90
144
static_assert (sizeof (T1) == 16 , " " );
@@ -93,6 +147,12 @@ int main()
93
147
typedef std::aligned_storage<1 >::type T1;
94
148
#if TEST_STD_VER > 11
95
149
static_assert (std::is_same<std::aligned_storage_t <1 >, T1>::value, " " );
150
+ #endif
151
+ #if TEST_STD_VER > 17
152
+ // P0767
153
+ static_assert (std::is_trivial<T1>::value, " " );
154
+ #else
155
+ static_assert (std::is_pod<T1>::value, " " );
96
156
#endif
97
157
static_assert (std::alignment_of<T1>::value == 1 , " " );
98
158
static_assert (sizeof (T1) == 1 , " " );
@@ -101,6 +161,12 @@ int main()
101
161
typedef std::aligned_storage<2 >::type T1;
102
162
#if TEST_STD_VER > 11
103
163
static_assert (std::is_same<std::aligned_storage_t <2 >, T1>::value, " " );
164
+ #endif
165
+ #if TEST_STD_VER > 17
166
+ // P0767
167
+ static_assert (std::is_trivial<T1>::value, " " );
168
+ #else
169
+ static_assert (std::is_pod<T1>::value, " " );
104
170
#endif
105
171
static_assert (std::alignment_of<T1>::value == 2 , " " );
106
172
static_assert (sizeof (T1) == 2 , " " );
@@ -109,6 +175,12 @@ int main()
109
175
typedef std::aligned_storage<3 >::type T1;
110
176
#if TEST_STD_VER > 11
111
177
static_assert (std::is_same<std::aligned_storage_t <3 >, T1>::value, " " );
178
+ #endif
179
+ #if TEST_STD_VER > 17
180
+ // P0767
181
+ static_assert (std::is_trivial<T1>::value, " " );
182
+ #else
183
+ static_assert (std::is_pod<T1>::value, " " );
112
184
#endif
113
185
static_assert (std::alignment_of<T1>::value == 2 , " " );
114
186
static_assert (sizeof (T1) == 4 , " " );
@@ -117,6 +189,12 @@ int main()
117
189
typedef std::aligned_storage<4 >::type T1;
118
190
#if TEST_STD_VER > 11
119
191
static_assert (std::is_same<std::aligned_storage_t <4 >, T1>::value, " " );
192
+ #endif
193
+ #if TEST_STD_VER > 17
194
+ // P0767
195
+ static_assert (std::is_trivial<T1>::value, " " );
196
+ #else
197
+ static_assert (std::is_pod<T1>::value, " " );
120
198
#endif
121
199
static_assert (std::alignment_of<T1>::value == 4 , " " );
122
200
static_assert (sizeof (T1) == 4 , " " );
@@ -125,6 +203,12 @@ int main()
125
203
typedef std::aligned_storage<5 >::type T1;
126
204
#if TEST_STD_VER > 11
127
205
static_assert (std::is_same<std::aligned_storage_t <5 >, T1>::value, " " );
206
+ #endif
207
+ #if TEST_STD_VER > 17
208
+ // P0767
209
+ static_assert (std::is_trivial<T1>::value, " " );
210
+ #else
211
+ static_assert (std::is_pod<T1>::value, " " );
128
212
#endif
129
213
static_assert (std::alignment_of<T1>::value == 4 , " " );
130
214
static_assert (sizeof (T1) == 8 , " " );
@@ -141,6 +225,12 @@ int main()
141
225
typedef std::aligned_storage<8 >::type T1;
142
226
#if TEST_STD_VER > 11
143
227
static_assert (std::is_same<std::aligned_storage_t <8 >, T1>::value, " " );
228
+ #endif
229
+ #if TEST_STD_VER > 17
230
+ // P0767
231
+ static_assert (std::is_trivial<T1>::value, " " );
232
+ #else
233
+ static_assert (std::is_pod<T1>::value, " " );
144
234
#endif
145
235
static_assert (std::alignment_of<T1>::value == 8 , " " );
146
236
static_assert (sizeof (T1) == 8 , " " );
@@ -149,6 +239,12 @@ int main()
149
239
typedef std::aligned_storage<9 >::type T1;
150
240
#if TEST_STD_VER > 11
151
241
static_assert (std::is_same<std::aligned_storage_t <9 >, T1>::value, " " );
242
+ #endif
243
+ #if TEST_STD_VER > 17
244
+ // P0767
245
+ static_assert (std::is_trivial<T1>::value, " " );
246
+ #else
247
+ static_assert (std::is_pod<T1>::value, " " );
152
248
#endif
153
249
static_assert (std::alignment_of<T1>::value == 8 , " " );
154
250
static_assert (sizeof (T1) == 16 , " " );
@@ -157,6 +253,12 @@ int main()
157
253
typedef std::aligned_storage<15 >::type T1;
158
254
#if TEST_STD_VER > 11
159
255
static_assert (std::is_same<std::aligned_storage_t <15 >, T1>::value, " " );
256
+ #endif
257
+ #if TEST_STD_VER > 17
258
+ // P0767
259
+ static_assert (std::is_trivial<T1>::value, " " );
260
+ #else
261
+ static_assert (std::is_pod<T1>::value, " " );
160
262
#endif
161
263
static_assert (std::alignment_of<T1>::value == 8 , " " );
162
264
static_assert (sizeof (T1) == 16 , " " );
0 commit comments