]> git.lizzy.rs Git - rust.git/blobdiff - compiler/rustc_builtin_macros/src/cfg_eval.rs
Rollup merge of #96539 - tmandry:relnotes-1.61, r=Mark-Simulacrum
[rust.git] / compiler / rustc_builtin_macros / src / cfg_eval.rs
index 7637bf7edc825cbd571d29d5b2056155eef2a6cc..4278fedfee9927cd282cb1b2245490e220ac7ce8 100644 (file)
@@ -7,7 +7,7 @@
 use rustc_ast::visit::Visitor;
 use rustc_ast::NodeId;
 use rustc_ast::{mut_visit, visit};
-use rustc_ast::{AstLike, Attribute};
+use rustc_ast::{Attribute, HasAttrs, HasTokens};
 use rustc_expand::base::{Annotatable, ExtCtxt};
 use rustc_expand::config::StripUnconfigured;
 use rustc_expand::configure;
@@ -125,7 +125,7 @@ fn visit_attribute(&mut self, attr: &'ast Attribute) {
 }
 
 impl CfgEval<'_, '_> {
-    fn configure<T: AstLike>(&mut self, node: T) -> Option<T> {
+    fn configure<T: HasAttrs + HasTokens>(&mut self, node: T) -> Option<T> {
         self.cfg.configure(node)
     }
 
@@ -173,13 +173,8 @@ fn configure_annotatable(&mut self, mut annotatable: Annotatable) -> Option<Anno
             }
             _ => unreachable!(),
         };
-        let nt = annotatable.into_nonterminal();
 
-        let mut orig_tokens = rustc_parse::nt_to_tokenstream(
-            &nt,
-            &self.cfg.sess.parse_sess,
-            CanSynthesizeMissingTokens::No,
-        );
+        let mut orig_tokens = annotatable.to_tokens(&self.cfg.sess.parse_sess);
 
         // 'Flatten' all nonterminals (i.e. `TokenKind::Interpolated`)
         // to `None`-delimited groups containing the corresponding tokens. This