@@ -239,6 +239,9 @@ const KNOWN_FEATURES: &'static [(&'static str, &'static str, Option<u32>, Status
239239
240240 // Allows cfg(target_thread_local)
241241 ( "cfg_target_thread_local" , "1.7.0" , Some ( 29594 ) , Active ) ,
242+
243+ // rustc internal
244+ ( "abi_vectorcall" , "1.7.0" , None , Active )
242245] ;
243246// (changing above list without updating src/doc/reference.md makes @cmr sad)
244247
@@ -872,6 +875,11 @@ impl<'a, 'v> Visitor<'v> for PostExpansionVisitor<'a> {
872875 Abi :: PlatformIntrinsic => {
873876 Some ( ( "platform_intrinsics" ,
874877 "platform intrinsics are experimental and possibly buggy" ) )
878+ } ,
879+ Abi :: Vectorcall => {
880+ Some ( ( "abi_vectorcall" ,
881+ "vectorcall is experimental and subject to change"
882+ ) )
875883 }
876884 _ => None
877885 } ;
@@ -1045,11 +1053,17 @@ impl<'a, 'v> Visitor<'v> for PostExpansionVisitor<'a> {
10451053 "intrinsics are subject to change" )
10461054 }
10471055 FnKind :: ItemFn ( _, _, _, _, abi, _) |
1048- FnKind :: Method ( _, & ast:: MethodSig { abi, .. } , _) if abi == Abi :: RustCall => {
1049- self . gate_feature ( "unboxed_closures" ,
1050- span,
1051- "rust-call ABI is subject to change" )
1052- }
1056+ FnKind :: Method ( _, & ast:: MethodSig { abi, .. } , _) => match abi {
1057+ Abi :: RustCall => {
1058+ self . gate_feature ( "unboxed_closures" , span,
1059+ "rust-call ABI is subject to change" ) ;
1060+ } ,
1061+ Abi :: Vectorcall => {
1062+ self . gate_feature ( "abi_vectorcall" , span,
1063+ "vectorcall is experimental and subject to change" ) ;
1064+ } ,
1065+ _ => { }
1066+ } ,
10531067 _ => { }
10541068 }
10551069 visit:: walk_fn ( self , fn_kind, fn_decl, block, span) ;
0 commit comments