File tree 2 files changed +28
-0
lines changed
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;
14
14
use fold:: Folder ;
15
15
use { ast, fold, attr} ;
16
16
use codemap:: { Spanned , respan} ;
17
+ use parse:: token;
17
18
use ptr:: P ;
18
19
19
20
use util:: small_vector:: SmallVector ;
@@ -247,6 +248,12 @@ impl<T: CfgFolder> fold::Folder for T {
247
248
self . configure ( item) . map ( |item| fold:: noop_fold_trait_item ( item, self ) )
248
249
. unwrap_or ( SmallVector :: zero ( ) )
249
250
}
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
+ }
250
257
}
251
258
252
259
fn 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