diff options
| author | Joshua Nelson <jnelson@cloudflare.com> | 2022-08-24 00:02:37 -0500 |
|---|---|---|
| committer | Joshua Nelson <jnelson@cloudflare.com> | 2022-08-24 00:37:49 -0500 |
| commit | 7b8e2a52ff29d400b4d869fad1d917ffa9bdce59 (patch) | |
| tree | 636f16eae4d3f7948678fcf7449770f8e23e6588 | |
| parent | e188868014da60bc266024e60c914b532445c743 (diff) | |
| download | rust-7b8e2a52ff29d400b4d869fad1d917ffa9bdce59.tar.gz rust-7b8e2a52ff29d400b4d869fad1d917ffa9bdce59.zip | |
Simplify the syntax for macros generated by `rustc_queries`
- Disallow multiple macros callbacks in the same invocation. In practice, this was never used. - Remove the `[]` brackets around the macro name - Require an `ident`, not an arbitrary `tt`
| -rw-r--r-- | compiler/rustc_macros/src/query.rs | 12 | ||||
| -rw-r--r-- | compiler/rustc_middle/src/dep_graph/dep_node.rs | 2 | ||||
| -rw-r--r-- | compiler/rustc_middle/src/ty/query.rs | 2 | ||||
| -rw-r--r-- | compiler/rustc_query_impl/src/lib.rs | 2 | ||||
| -rw-r--r-- | compiler/rustc_query_impl/src/profiling_support.rs | 2 |
5 files changed, 10 insertions, 10 deletions
diff --git a/compiler/rustc_macros/src/query.rs b/compiler/rustc_macros/src/query.rs index 32a15413c6f..d80d35cb1fa 100644 --- a/compiler/rustc_macros/src/query.rs +++ b/compiler/rustc_macros/src/query.rs @@ -400,15 +400,15 @@ pub fn rustc_queries(input: TokenStream) -> TokenStream { TokenStream::from(quote! { #[macro_export] macro_rules! rustc_query_append { - ([$($macro:tt)*]) => { - $($macro)* { + ($macro:ident !) => { + $macro! { #query_stream } } } macro_rules! rustc_dep_node_append { - ([$($macro:tt)*][$($other:tt)*]) => { - $($macro)*( + ($macro:ident! [$($other:tt)*]) => { + $macro!( $($other)* #dep_node_def_stream @@ -417,8 +417,8 @@ pub fn rustc_queries(input: TokenStream) -> TokenStream { } #[macro_export] macro_rules! rustc_cached_queries { - ($($macro:tt)*) => { - $($macro)*(#cached_queries); + ( $macro:ident! ) => { + $macro!(#cached_queries); } } #[macro_export] diff --git a/compiler/rustc_middle/src/dep_graph/dep_node.rs b/compiler/rustc_middle/src/dep_graph/dep_node.rs index 156a9641272..65fc8a2e9cf 100644 --- a/compiler/rustc_middle/src/dep_graph/dep_node.rs +++ b/compiler/rustc_middle/src/dep_graph/dep_node.rs @@ -179,7 +179,7 @@ macro_rules! define_dep_nodes { ); } -rustc_dep_node_append!([define_dep_nodes!][ +rustc_dep_node_append!(define_dep_nodes![ // We use this for most things when incr. comp. is turned off. [] Null, diff --git a/compiler/rustc_middle/src/ty/query.rs b/compiler/rustc_middle/src/ty/query.rs index 736ab69c812..5665bb866d4 100644 --- a/compiler/rustc_middle/src/ty/query.rs +++ b/compiler/rustc_middle/src/ty/query.rs @@ -332,7 +332,7 @@ macro_rules! define_callbacks { // Queries marked with `fatal_cycle` do not need the latter implementation, // as they will raise an fatal error on query cycles instead. -rustc_query_append! { [define_callbacks!] } +rustc_query_append! { define_callbacks! } mod sealed { use super::{DefId, LocalDefId}; diff --git a/compiler/rustc_query_impl/src/lib.rs b/compiler/rustc_query_impl/src/lib.rs index 946bc34fea1..8ea09880694 100644 --- a/compiler/rustc_query_impl/src/lib.rs +++ b/compiler/rustc_query_impl/src/lib.rs @@ -54,7 +54,7 @@ fn describe_as_module(def_id: LocalDefId, tcx: TyCtxt<'_>) -> String { } } -rustc_query_append! { [define_queries!] } +rustc_query_append! { define_queries! } impl<'tcx> Queries<'tcx> { // Force codegen in the dyn-trait transformation in this crate. diff --git a/compiler/rustc_query_impl/src/profiling_support.rs b/compiler/rustc_query_impl/src/profiling_support.rs index 34586750947..260af0d5408 100644 --- a/compiler/rustc_query_impl/src/profiling_support.rs +++ b/compiler/rustc_query_impl/src/profiling_support.rs @@ -320,5 +320,5 @@ pub fn alloc_self_profile_query_strings(tcx: TyCtxt<'_>) { } } - rustc_query_append! { [alloc_once!] } + rustc_query_append! { alloc_once! } } |
