about summary refs log tree commit diff
path: root/compiler/rustc_builtin_macros/src/lib.rs
diff options
context:
space:
mode:
authorTrevor Gross <tmgross@umich.edu>2025-06-19 06:12:28 +0000
committerTrevor Gross <tmgross@umich.edu>2025-06-24 11:07:16 +0000
commit0e4de4ceb0086b7befab6736e45ac3efbc560cea (patch)
treec8a821b0095be52479016b0827422d6462048a03 /compiler/rustc_builtin_macros/src/lib.rs
parentc978c8986f700bc8fa83b5f98cc96f41772fa281 (diff)
downloadrust-0e4de4ceb0086b7befab6736e45ac3efbc560cea.tar.gz
rust-0e4de4ceb0086b7befab6736e45ac3efbc560cea.zip
Remove the deprecated `concat_idents!` macro
In [137653], the lang and libs-API teams did a joint FCP to deprecate
and eventually remove the long-unstable `concat_idents!` macro. The
deprecation is landing in 1.88, so do the removal here (target version
1.90).

This macro has been superseded by the more recent `${concat(...)}`
metavariable expression language feature, which avoids some of the
limitations of `concat_idents!`. The metavar expression is unstably
available under the [`macro_metavar_expr_concat`] feature.

History is mildly interesting here: `concat_idents!` goes back to 2011
when it was introduced with 513276e595f8 ("Add #concat_idents[] and
about the same:

    let asdf_fdsa = "<.<";
    assert(#concat_idents[asd,f_f,dsa] == "<.<");

    assert(#ident_to_str[use_mention_distinction]
           == "use_mention_distinction");

(That test existed from introduction until its removal here.)

Closes: https://www.github.com/rust-lang/rust/issues/29599

[137653]: https://www.github.com/rust-lang/rust/pull/137653
[`macro_metavar_expr_concat`]: https://www.github.com/rust-lang/rust/issues/124225
Diffstat (limited to 'compiler/rustc_builtin_macros/src/lib.rs')
-rw-r--r--compiler/rustc_builtin_macros/src/lib.rs2
1 files changed, 0 insertions, 2 deletions
diff --git a/compiler/rustc_builtin_macros/src/lib.rs b/compiler/rustc_builtin_macros/src/lib.rs
index 9e7d0ec9e81..9b6dea21438 100644
--- a/compiler/rustc_builtin_macros/src/lib.rs
+++ b/compiler/rustc_builtin_macros/src/lib.rs
@@ -36,7 +36,6 @@ mod cfg_eval;
 mod compile_error;
 mod concat;
 mod concat_bytes;
-mod concat_idents;
 mod define_opaque;
 mod derive;
 mod deriving;
@@ -84,7 +83,6 @@ pub fn register_builtin_macros(resolver: &mut dyn ResolverExpand) {
         compile_error: compile_error::expand_compile_error,
         concat: concat::expand_concat,
         concat_bytes: concat_bytes::expand_concat_bytes,
-        concat_idents: concat_idents::expand_concat_idents,
         const_format_args: format::expand_format_args,
         core_panic: edition_panic::expand_panic,
         env: env::expand_env,