File tree Expand file tree Collapse file tree 1 file changed +17
-5
lines changed Expand file tree Collapse file tree 1 file changed +17
-5
lines changed Original file line number Diff line number Diff line change @@ -2235,11 +2235,23 @@ impl<'a> Visitor<'a> for PostExpansionVisitor<'a> {
2235
2235
}
2236
2236
2237
2237
fn visit_pat ( & mut self , pattern : & ' a ast:: Pat ) {
2238
- match pattern. node {
2239
- PatKind :: Slice ( _, Some ( ref subslice) , _) => {
2240
- gate_feature_post ! ( & self , slice_patterns,
2241
- subslice. span,
2242
- "syntax for subslices in slice patterns is not yet stabilized" ) ;
2238
+ match & pattern. node {
2239
+ PatKind :: Slice ( pats) => {
2240
+ for pat in & * pats {
2241
+ let span = pat. span ;
2242
+ let inner_pat = match & pat. node {
2243
+ PatKind :: Ident ( .., Some ( pat) ) => pat,
2244
+ _ => pat,
2245
+ } ;
2246
+ if inner_pat. is_rest ( ) {
2247
+ gate_feature_post ! (
2248
+ & self ,
2249
+ slice_patterns,
2250
+ span,
2251
+ "subslice patterns are unstable"
2252
+ ) ;
2253
+ }
2254
+ }
2243
2255
}
2244
2256
PatKind :: Box ( ..) => {
2245
2257
gate_feature_post ! ( & self , box_patterns,
You can’t perform that action at this time.
0 commit comments