File tree Expand file tree Collapse file tree 2 files changed +28
-0
lines changed Expand file tree Collapse file tree 2 files changed +28
-0
lines changed Original file line number Diff line number Diff line change @@ -14,6 +14,7 @@ use feature_gate::GatedCfgAttr;
1414use fold:: Folder ;
1515use { ast, fold, attr} ;
1616use codemap:: { Spanned , respan} ;
17+ use parse:: token;
1718use ptr:: P ;
1819
1920use util:: small_vector:: SmallVector ;
@@ -247,6 +248,12 @@ impl<T: CfgFolder> fold::Folder for T {
247248 self . configure ( item) . map ( |item| fold:: noop_fold_trait_item ( item, self ) )
248249 . unwrap_or ( SmallVector :: zero ( ) )
249250 }
251+
252+ fn fold_interpolated ( & mut self , nt : token:: Nonterminal ) -> token:: Nonterminal {
253+ // Don't configure interpolated AST (c.f. #34171).
254+ // Interpolated AST will get configured once the surrounding tokens are parsed.
255+ nt
256+ }
250257}
251258
252259fn fold_expr < F : CfgFolder > ( folder : & mut F , expr : P < ast:: Expr > ) -> P < ast:: Expr > {
Original file line number Diff line number Diff line change 1+ // Copyright 2016 The Rust Project Developers. See the COPYRIGHT
2+ // file at the top-level directory of this distribution and at
3+ // http://rust-lang.org/COPYRIGHT.
4+ //
5+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+ // option. This file may not be copied, modified, or distributed
9+ // except according to those terms.
10+
11+ #![ feature( rustc_attrs) ]
12+
13+ macro_rules! null { ( $i: tt) => { } }
14+ macro_rules! apply_null {
15+ ( $i: item) => { null! { $i } }
16+ }
17+
18+ #[ rustc_error]
19+ fn main ( ) { //~ ERROR compilation successful
20+ apply_null ! ( #[ cfg( all( ) ) ] fn f( ) { } ) ;
21+ }
You can’t perform that action at this time.
0 commit comments