@@ -51,53 +51,59 @@ const KNOWN_FEATURES: &'static [(&'static str, &'static str, Option<u32>, Status
5151 ( "globs" , "1.0.0" , None , Accepted ) ,
5252 ( "macro_rules" , "1.0.0" , None , Accepted ) ,
5353 ( "struct_variant" , "1.0.0" , None , Accepted ) ,
54- ( "asm" , "1.0.0" , None , Active ) ,
54+ ( "asm" , "1.0.0" , Some ( 29722 ) , Active ) ,
5555 ( "managed_boxes" , "1.0.0" , None , Removed ) ,
56- ( "non_ascii_idents" , "1.0.0" , None , Active ) ,
57- ( "thread_local" , "1.0.0" , None , Active ) ,
58- ( "link_args" , "1.0.0" , None , Active ) ,
59- ( "plugin_registrar" , "1.0.0" , None , Active ) ,
60- ( "log_syntax" , "1.0.0" , None , Active ) ,
61- ( "trace_macros" , "1.0.0" , None , Active ) ,
62- ( "concat_idents" , "1.0.0" , None , Active ) ,
56+ ( "non_ascii_idents" , "1.0.0" , Some ( 28979 ) , Active ) ,
57+ ( "thread_local" , "1.0.0" , Some ( 29594 ) , Active ) ,
58+ ( "link_args" , "1.0.0" , Some ( 29596 ) , Active ) ,
59+ ( "plugin_registrar" , "1.0.0" , Some ( 29597 ) , Active ) ,
60+ ( "log_syntax" , "1.0.0" , Some ( 29598 ) , Active ) ,
61+ ( "trace_macros" , "1.0.0" , Some ( 29598 ) , Active ) ,
62+ ( "concat_idents" , "1.0.0" , Some ( 29599 ) , Active ) ,
63+
64+ // rustc internal, for now:
6365 ( "intrinsics" , "1.0.0" , None , Active ) ,
6466 ( "lang_items" , "1.0.0" , None , Active ) ,
6567
6668 ( "simd" , "1.0.0" , Some ( 27731 ) , Active ) ,
6769 ( "default_type_params" , "1.0.0" , None , Accepted ) ,
68- ( "quote" , "1.0.0" , None , Active ) ,
69- ( "link_llvm_intrinsics" , "1.0.0" , None , Active ) ,
70- ( "linkage" , "1.0.0" , None , Active ) ,
70+ ( "quote" , "1.0.0" , Some ( 29601 ) , Active ) ,
71+ ( "link_llvm_intrinsics" , "1.0.0" , Some ( 29602 ) , Active ) ,
72+ ( "linkage" , "1.0.0" , Some ( 29603 ) , Active ) ,
7173 ( "struct_inherit" , "1.0.0" , None , Removed ) ,
7274
7375 ( "quad_precision_float" , "1.0.0" , None , Removed ) ,
7476
77+ // rustc internal
7578 ( "rustc_diagnostic_macros" , "1.0.0" , None , Active ) ,
76- ( "unboxed_closures" , "1.0.0" , None , Active ) ,
77- ( "reflect" , "1.0.0" , None , Active ) ,
79+ ( "unboxed_closures" , "1.0.0" , Some ( 29625 ) , Active ) ,
80+ ( "reflect" , "1.0.0" , Some ( 27749 ) , Active ) ,
7881 ( "import_shadowing" , "1.0.0" , None , Removed ) ,
79- ( "advanced_slice_patterns" , "1.0.0" , None , Active ) ,
82+ ( "advanced_slice_patterns" , "1.0.0" , Some ( 23121 ) , Active ) ,
8083 ( "tuple_indexing" , "1.0.0" , None , Accepted ) ,
8184 ( "associated_types" , "1.0.0" , None , Accepted ) ,
82- ( "visible_private_types" , "1.0.0" , None , Active ) ,
85+ ( "visible_private_types" , "1.0.0" , Some ( 29627 ) , Active ) ,
8386 ( "slicing_syntax" , "1.0.0" , None , Accepted ) ,
8487 ( "box_syntax" , "1.0.0" , Some ( 27779 ) , Active ) ,
8588 ( "placement_in_syntax" , "1.0.0" , Some ( 27779 ) , Active ) ,
89+
90+ // rustc internal.
8691 ( "pushpop_unsafe" , "1.2.0" , None , Active ) ,
87- ( "on_unimplemented" , "1.0.0" , None , Active ) ,
88- ( "simd_ffi" , "1.0.0" , None , Active ) ,
89- ( "allocator" , "1.0.0" , None , Active ) ,
90- ( "needs_allocator" , "1.4.0" , None , Active ) ,
91- ( "linked_from" , "1.3.0" , None , Active ) ,
92+
93+ ( "on_unimplemented" , "1.0.0" , Some ( 29628 ) , Active ) ,
94+ ( "simd_ffi" , "1.0.0" , Some ( 27731 ) , Active ) ,
95+ ( "allocator" , "1.0.0" , Some ( 27389 ) , Active ) ,
96+ ( "needs_allocator" , "1.4.0" , Some ( 27389 ) , Active ) ,
97+ ( "linked_from" , "1.3.0" , Some ( 29629 ) , Active ) ,
9298
9399 ( "if_let" , "1.0.0" , None , Accepted ) ,
94100 ( "while_let" , "1.0.0" , None , Accepted ) ,
95101
96- ( "plugin" , "1.0.0" , None , Active ) ,
97- ( "start" , "1.0.0" , None , Active ) ,
98- ( "main" , "1.0.0" , None , Active ) ,
102+ ( "plugin" , "1.0.0" , Some ( 29597 ) , Active ) ,
103+ ( "start" , "1.0.0" , Some ( 29633 ) , Active ) ,
104+ ( "main" , "1.0.0" , Some ( 29634 ) , Active ) ,
99105
100- ( "fundamental" , "1.0.0" , None , Active ) ,
106+ ( "fundamental" , "1.0.0" , Some ( 29635 ) , Active ) ,
101107
102108 // A temporary feature gate used to enable parser extensions needed
103109 // to bootstrap fix for #5723.
@@ -107,30 +113,32 @@ const KNOWN_FEATURES: &'static [(&'static str, &'static str, Option<u32>, Status
107113 ( "opt_out_copy" , "1.0.0" , None , Removed ) ,
108114
109115 // OIBIT specific features
110- ( "optin_builtin_traits" , "1.0.0" , None , Active ) ,
116+ ( "optin_builtin_traits" , "1.0.0" , Some ( 13231 ) , Active ) ,
111117
112118 // macro reexport needs more discussion and stabilization
113- ( "macro_reexport" , "1.0.0" , None , Active ) ,
119+ ( "macro_reexport" , "1.0.0" , Some ( 29638 ) , Active ) ,
114120
115121 // These are used to test this portion of the compiler, they don't actually
116122 // mean anything
117123 ( "test_accepted_feature" , "1.0.0" , None , Accepted ) ,
118124 ( "test_removed_feature" , "1.0.0" , None , Removed ) ,
119125
120126 // Allows use of #[staged_api]
127+ // rustc internal
121128 ( "staged_api" , "1.0.0" , None , Active ) ,
122129
123130 // Allows using items which are missing stability attributes
131+ // rustc internal
124132 ( "unmarked_api" , "1.0.0" , None , Active ) ,
125133
126134 // Allows using #![no_std]
127- ( "no_std" , "1.0.0" , None , Active ) ,
135+ ( "no_std" , "1.0.0" , Some ( 27701 ) , Active ) ,
128136
129137 // Allows using #![no_core]
130- ( "no_core" , "1.3.0" , None , Active ) ,
138+ ( "no_core" , "1.3.0" , Some ( 29639 ) , Active ) ,
131139
132140 // Allows using `box` in patterns; RFC 469
133- ( "box_patterns" , "1.0.0" , None , Active ) ,
141+ ( "box_patterns" , "1.0.0" , Some ( 29641 ) , Active ) ,
134142
135143 // Allows using the unsafe_no_drop_flag attribute (unlikely to
136144 // switch to Accepted; see RFC 320)
@@ -141,75 +149,81 @@ const KNOWN_FEATURES: &'static [(&'static str, &'static str, Option<u32>, Status
141149 ( "dropck_parametricity" , "1.3.0" , Some ( 28498 ) , Active ) ,
142150
143151 // Allows the use of custom attributes; RFC 572
144- ( "custom_attribute" , "1.0.0" , None , Active ) ,
152+ ( "custom_attribute" , "1.0.0" , Some ( 29642 ) , Active ) ,
145153
146154 // Allows the use of #[derive(Anything)] as sugar for
147155 // #[derive_Anything].
148- ( "custom_derive" , "1.0.0" , None , Active ) ,
156+ ( "custom_derive" , "1.0.0" , Some ( 29644 ) , Active ) ,
149157
150158 // Allows the use of rustc_* attributes; RFC 572
151- ( "rustc_attrs" , "1.0.0" , None , Active ) ,
159+ ( "rustc_attrs" , "1.0.0" , Some ( 29642 ) , Active ) ,
152160
153161 // Allows the use of #[allow_internal_unstable]. This is an
154162 // attribute on macro_rules! and can't use the attribute handling
155163 // below (it has to be checked before expansion possibly makes
156164 // macros disappear).
165+ //
166+ // rustc internal
157167 ( "allow_internal_unstable" , "1.0.0" , None , Active ) ,
158168
159169 // #23121. Array patterns have some hazards yet.
160- ( "slice_patterns" , "1.0.0" , None , Active ) ,
170+ ( "slice_patterns" , "1.0.0" , Some ( 23121 ) , Active ) ,
161171
162172 // Allows use of unary negate on unsigned integers, e.g. -e for e: u8
163- ( "negate_unsigned" , "1.0.0" , None , Active ) ,
173+ ( "negate_unsigned" , "1.0.0" , Some ( 29645 ) , Active ) ,
164174
165175 // Allows the definition of associated constants in `trait` or `impl`
166176 // blocks.
167- ( "associated_consts" , "1.0.0" , None , Active ) ,
177+ ( "associated_consts" , "1.0.0" , Some ( 29646 ) , Active ) ,
168178
169179 // Allows the definition of `const fn` functions.
170- ( "const_fn" , "1.2.0" , None , Active ) ,
180+ ( "const_fn" , "1.2.0" , Some ( 24111 ) , Active ) ,
171181
172182 // Allows using #[prelude_import] on glob `use` items.
183+ //
184+ // rustc internal
173185 ( "prelude_import" , "1.2.0" , None , Active ) ,
174186
175187 // Allows the definition recursive static items.
176- ( "static_recursion" , "1.3.0" , None , Active ) ,
188+ ( "static_recursion" , "1.3.0" , Some ( 29719 ) , Active ) ,
177189
178190 // Allows default type parameters to influence type inference.
179- ( "default_type_parameter_fallback" , "1.3.0" , None , Active ) ,
191+ ( "default_type_parameter_fallback" , "1.3.0" , Some ( 27336 ) , Active ) ,
180192
181193 // Allows associated type defaults
182- ( "associated_type_defaults" , "1.2.0" , None , Active ) ,
183- // Allows macros to appear in the type position.
194+ ( "associated_type_defaults" , "1.2.0" , Some ( 29661 ) , Active ) ,
184195
196+ // Allows macros to appear in the type position.
185197 ( "type_macros" , "1.3.0" , Some ( 27336 ) , Active ) ,
186198
187199 // allow `repr(simd)`, and importing the various simd intrinsics
188200 ( "repr_simd" , "1.4.0" , Some ( 27731 ) , Active ) ,
189201
190202 // Allows cfg(target_feature = "...").
191- ( "cfg_target_feature" , "1.4.0" , None , Active ) ,
203+ ( "cfg_target_feature" , "1.4.0" , Some ( 29717 ) , Active ) ,
192204
193205 // allow `extern "platform-intrinsic" { ... }`
194206 ( "platform_intrinsics" , "1.4.0" , Some ( 27731 ) , Active ) ,
195207
196208 // allow `#[unwind]`
209+ // rust runtime internal
197210 ( "unwind_attributes" , "1.4.0" , None , Active ) ,
198211
199212 // allow empty structs and enum variants with braces
200- ( "braced_empty_structs" , "1.5.0" , None , Active ) ,
213+ ( "braced_empty_structs" , "1.5.0" , Some ( 29720 ) , Active ) ,
201214
202215 // allow overloading augmented assignment operations like `a += b`
203- ( "augmented_assignments" , "1.5.0" , None , Active ) ,
216+ ( "augmented_assignments" , "1.5.0" , Some ( 28235 ) , Active ) ,
204217
205218 // allow `#[no_debug]`
206- ( "no_debug" , "1.5.0" , None , Active ) ,
219+ ( "no_debug" , "1.5.0" , Some ( 29721 ) , Active ) ,
207220
208221 // allow `#[omit_gdb_pretty_printer_section]`
222+ // rustc internal.
209223 ( "omit_gdb_pretty_printer_section" , "1.5.0" , None , Active ) ,
210224
211225 // Allows cfg(target_vendor = "...").
212- ( "cfg_target_vendor" , "1.5.0" , None , Active ) ,
226+ ( "cfg_target_vendor" , "1.5.0" , Some ( 29718 ) , Active ) ,
213227] ;
214228// (changing above list without updating src/doc/reference.md makes @cmr sad)
215229
0 commit comments