@@ -24,12 +24,6 @@ use crate::ops::{Deref, DerefMut};
24
24
windows,
25
25
) ) ]
26
26
#[ cfg_attr( not( doc) , repr( transparent) ) ] // work around https://github.com/rust-lang/rust/issues/90435
27
- #[ unstable(
28
- feature = "c_variadic" ,
29
- reason = "the `c_variadic` feature has not been properly tested on \
30
- all supported platforms",
31
- issue = "44930"
32
- ) ]
33
27
#[ lang = "va_list" ]
34
28
pub struct VaListImpl < ' f > {
35
29
ptr : * mut c_void ,
@@ -51,12 +45,6 @@ pub struct VaListImpl<'f> {
51
45
target_os = "uefi" ,
52
46
windows,
53
47
) ) ]
54
- #[ unstable(
55
- feature = "c_variadic" ,
56
- reason = "the `c_variadic` feature has not been properly tested on \
57
- all supported platforms",
58
- issue = "44930"
59
- ) ]
60
48
impl < ' f > fmt:: Debug for VaListImpl < ' f > {
61
49
fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
62
50
write ! ( f, "va_list* {:p}" , self . ptr)
@@ -76,12 +64,6 @@ impl<'f> fmt::Debug for VaListImpl<'f> {
76
64
) ) ]
77
65
#[ cfg_attr( not( doc) , repr( C ) ) ] // work around https://github.com/rust-lang/rust/issues/66401
78
66
#[ derive( Debug ) ]
79
- #[ unstable(
80
- feature = "c_variadic" ,
81
- reason = "the `c_variadic` feature has not been properly tested on \
82
- all supported platforms",
83
- issue = "44930"
84
- ) ]
85
67
#[ lang = "va_list" ]
86
68
pub struct VaListImpl < ' f > {
87
69
stack : * mut c_void ,
@@ -96,12 +78,6 @@ pub struct VaListImpl<'f> {
96
78
#[ cfg( all( target_arch = "powerpc" , not( target_os = "uefi" ) , not( windows) ) ) ]
97
79
#[ cfg_attr( not( doc) , repr( C ) ) ] // work around https://github.com/rust-lang/rust/issues/66401
98
80
#[ derive( Debug ) ]
99
- #[ unstable(
100
- feature = "c_variadic" ,
101
- reason = "the `c_variadic` feature has not been properly tested on \
102
- all supported platforms",
103
- issue = "44930"
104
- ) ]
105
81
#[ lang = "va_list" ]
106
82
pub struct VaListImpl < ' f > {
107
83
gpr : u8 ,
@@ -116,12 +92,6 @@ pub struct VaListImpl<'f> {
116
92
#[ cfg( target_arch = "s390x" ) ]
117
93
#[ cfg_attr( not( doc) , repr( C ) ) ] // work around https://github.com/rust-lang/rust/issues/66401
118
94
#[ derive( Debug ) ]
119
- #[ unstable(
120
- feature = "c_variadic" ,
121
- reason = "the `c_variadic` feature has not been properly tested on \
122
- all supported platforms",
123
- issue = "44930"
124
- ) ]
125
95
#[ lang = "va_list" ]
126
96
pub struct VaListImpl < ' f > {
127
97
gpr : i64 ,
@@ -135,12 +105,6 @@ pub struct VaListImpl<'f> {
135
105
#[ cfg( all( target_arch = "x86_64" , not( target_os = "uefi" ) , not( windows) ) ) ]
136
106
#[ cfg_attr( not( doc) , repr( C ) ) ] // work around https://github.com/rust-lang/rust/issues/66401
137
107
#[ derive( Debug ) ]
138
- #[ unstable(
139
- feature = "c_variadic" ,
140
- reason = "the `c_variadic` feature has not been properly tested on \
141
- all supported platforms",
142
- issue = "44930"
143
- ) ]
144
108
#[ lang = "va_list" ]
145
109
pub struct VaListImpl < ' f > {
146
110
gp_offset : i32 ,
@@ -153,12 +117,6 @@ pub struct VaListImpl<'f> {
153
117
/// A wrapper for a `va_list`
154
118
#[ cfg_attr( not( doc) , repr( transparent) ) ] // work around https://github.com/rust-lang/rust/issues/90435
155
119
#[ derive( Debug ) ]
156
- #[ unstable(
157
- feature = "c_variadic" ,
158
- reason = "the `c_variadic` feature has not been properly tested on \
159
- all supported platforms",
160
- issue = "44930"
161
- ) ]
162
120
pub struct VaList < ' a , ' f : ' a > {
163
121
#[ cfg( any(
164
122
all(
@@ -203,12 +161,6 @@ pub struct VaList<'a, 'f: 'a> {
203
161
target_os = "uefi" ,
204
162
windows,
205
163
) ) ]
206
- #[ unstable(
207
- feature = "c_variadic" ,
208
- reason = "the `c_variadic` feature has not been properly tested on \
209
- all supported platforms",
210
- issue = "44930"
211
- ) ]
212
164
impl < ' f > VaListImpl < ' f > {
213
165
/// Convert a `VaListImpl` into a `VaList` that is binary-compatible with C's `va_list`.
214
166
#[ inline]
@@ -229,12 +181,6 @@ impl<'f> VaListImpl<'f> {
229
181
not( target_os = "uefi" ) ,
230
182
not( windows) ,
231
183
) ) ]
232
- #[ unstable(
233
- feature = "c_variadic" ,
234
- reason = "the `c_variadic` feature has not been properly tested on \
235
- all supported platforms",
236
- issue = "44930"
237
- ) ]
238
184
impl < ' f > VaListImpl < ' f > {
239
185
/// Convert a `VaListImpl` into a `VaList` that is binary-compatible with C's `va_list`.
240
186
#[ inline]
@@ -243,12 +189,6 @@ impl<'f> VaListImpl<'f> {
243
189
}
244
190
}
245
191
246
- #[ unstable(
247
- feature = "c_variadic" ,
248
- reason = "the `c_variadic` feature has not been properly tested on \
249
- all supported platforms",
250
- issue = "44930"
251
- ) ]
252
192
impl < ' a , ' f : ' a > Deref for VaList < ' a , ' f > {
253
193
type Target = VaListImpl < ' f > ;
254
194
@@ -258,12 +198,6 @@ impl<'a, 'f: 'a> Deref for VaList<'a, 'f> {
258
198
}
259
199
}
260
200
261
- #[ unstable(
262
- feature = "c_variadic" ,
263
- reason = "the `c_variadic` feature has not been properly tested on \
264
- all supported platforms",
265
- issue = "44930"
266
- ) ]
267
201
impl < ' a , ' f : ' a > DerefMut for VaList < ' a , ' f > {
268
202
#[ inline]
269
203
fn deref_mut ( & mut self ) -> & mut VaListImpl < ' f > {
@@ -282,22 +216,12 @@ impl<'a, 'f: 'a> DerefMut for VaList<'a, 'f> {
282
216
// improving this.
283
217
mod sealed_trait {
284
218
/// Trait which permits the allowed types to be used with [super::VaListImpl::arg].
285
- #[ unstable(
286
- feature = "c_variadic" ,
287
- reason = "the `c_variadic` feature has not been properly tested on \
288
- all supported platforms",
289
- issue = "44930"
290
- ) ]
291
219
pub trait VaArgSafe { }
292
220
}
293
221
294
222
macro_rules! impl_va_arg_safe {
295
223
( $( $t: ty) ,+) => {
296
224
$(
297
- #[ unstable( feature = "c_variadic" ,
298
- reason = "the `c_variadic` feature has not been properly tested on \
299
- all supported platforms",
300
- issue = "44930" ) ]
301
225
impl sealed_trait:: VaArgSafe for $t { }
302
226
) +
303
227
}
@@ -307,27 +231,9 @@ impl_va_arg_safe! {i8, i16, i32, i64, usize}
307
231
impl_va_arg_safe ! { u8 , u16 , u32 , u64 , isize }
308
232
impl_va_arg_safe ! { f64 }
309
233
310
- #[ unstable(
311
- feature = "c_variadic" ,
312
- reason = "the `c_variadic` feature has not been properly tested on \
313
- all supported platforms",
314
- issue = "44930"
315
- ) ]
316
234
impl < T > sealed_trait:: VaArgSafe for * mut T { }
317
- #[ unstable(
318
- feature = "c_variadic" ,
319
- reason = "the `c_variadic` feature has not been properly tested on \
320
- all supported platforms",
321
- issue = "44930"
322
- ) ]
323
235
impl < T > sealed_trait:: VaArgSafe for * const T { }
324
236
325
- #[ unstable(
326
- feature = "c_variadic" ,
327
- reason = "the `c_variadic` feature has not been properly tested on \
328
- all supported platforms",
329
- issue = "44930"
330
- ) ]
331
237
impl < ' f > VaListImpl < ' f > {
332
238
/// Advance to the next arg.
333
239
#[ inline]
@@ -351,12 +257,6 @@ impl<'f> VaListImpl<'f> {
351
257
}
352
258
}
353
259
354
- #[ unstable(
355
- feature = "c_variadic" ,
356
- reason = "the `c_variadic` feature has not been properly tested on \
357
- all supported platforms",
358
- issue = "44930"
359
- ) ]
360
260
impl < ' f > Clone for VaListImpl < ' f > {
361
261
#[ inline]
362
262
fn clone ( & self ) -> Self {
@@ -369,12 +269,6 @@ impl<'f> Clone for VaListImpl<'f> {
369
269
}
370
270
}
371
271
372
- #[ unstable(
373
- feature = "c_variadic" ,
374
- reason = "the `c_variadic` feature has not been properly tested on \
375
- all supported platforms",
376
- issue = "44930"
377
- ) ]
378
272
impl < ' f > Drop for VaListImpl < ' f > {
379
273
fn drop ( & mut self ) {
380
274
// FIXME: this should call `va_end`, but there's no clean way to
0 commit comments