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 @@ -2151,11 +2151,23 @@ impl<'a> Visitor<'a> for PostExpansionVisitor<'a> {
2151
2151
}
2152
2152
2153
2153
fn visit_pat ( & mut self , pattern : & ' a ast:: Pat ) {
2154
- match pattern. node {
2155
- PatKind :: Slice ( _, Some ( ref subslice) , _) => {
2156
- gate_feature_post ! ( & self , slice_patterns,
2157
- subslice. span,
2158
- "syntax for subslices in slice patterns is not yet stabilized" ) ;
2154
+ match & pattern. node {
2155
+ PatKind :: Slice ( pats) => {
2156
+ for pat in & * pats {
2157
+ let span = pat. span ;
2158
+ let inner_pat = match & pat. node {
2159
+ PatKind :: Ident ( .., Some ( pat) ) => pat,
2160
+ _ => pat,
2161
+ } ;
2162
+ if inner_pat. is_rest ( ) {
2163
+ gate_feature_post ! (
2164
+ & self ,
2165
+ slice_patterns,
2166
+ span,
2167
+ "subslice patterns are unstable"
2168
+ ) ;
2169
+ }
2170
+ }
2159
2171
}
2160
2172
PatKind :: Box ( ..) => {
2161
2173
gate_feature_post ! ( & self , box_patterns,
You can’t perform that action at this time.
0 commit comments