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