@@ -2259,32 +2259,32 @@ pub fn get_features(span_handler: &Handler, krate_attrs: &[ast::Attribute],
22592259 continue ;
22602260 }
22612261
2262- if let Some ( ( .., set) ) = ACTIVE_FEATURES . iter ( ) . find ( |f| name == f. 0 ) {
2263- if let Some ( allowed) = allow_features. as_ref ( ) {
2264- if allowed. iter ( ) . find ( |f| * f == name. as_str ( ) ) . is_none ( ) {
2265- span_err ! ( span_handler, mi. span( ) , E0725 ,
2266- "the feature `{}` is not in the list of allowed features" ,
2267- name) ;
2268- continue ;
2269- }
2270- }
2271-
2272- set ( & mut features, mi. span ( ) ) ;
2273- features. declared_lang_features . push ( ( name, mi. span ( ) , None ) ) ;
2274- continue
2275- }
2276-
22772262 let removed = REMOVED_FEATURES . iter ( ) . find ( |f| name == f. 0 ) ;
22782263 let stable_removed = STABLE_REMOVED_FEATURES . iter ( ) . find ( |f| name == f. 0 ) ;
22792264 if let Some ( ( .., reason) ) = removed. or ( stable_removed) {
22802265 feature_removed ( span_handler, mi. span ( ) , * reason) ;
2281- continue
2266+ continue ;
22822267 }
22832268
22842269 if let Some ( ( _, since, ..) ) = ACCEPTED_FEATURES . iter ( ) . find ( |f| name == f. 0 ) {
22852270 let since = Some ( Symbol :: intern ( since) ) ;
22862271 features. declared_lang_features . push ( ( name, mi. span ( ) , since) ) ;
2287- continue
2272+ continue ;
2273+ }
2274+
2275+ if let Some ( allowed) = allow_features. as_ref ( ) {
2276+ if allowed. iter ( ) . find ( |f| * f == name. as_str ( ) ) . is_none ( ) {
2277+ span_err ! ( span_handler, mi. span( ) , E0725 ,
2278+ "the feature `{}` is not in the list of allowed features" ,
2279+ name) ;
2280+ continue ;
2281+ }
2282+ }
2283+
2284+ if let Some ( ( .., set) ) = ACTIVE_FEATURES . iter ( ) . find ( |f| name == f. 0 ) {
2285+ set ( & mut features, mi. span ( ) ) ;
2286+ features. declared_lang_features . push ( ( name, mi. span ( ) , None ) ) ;
2287+ continue ;
22882288 }
22892289
22902290 features. declared_lib_features . push ( ( name, mi. span ( ) ) ) ;
0 commit comments