summary refs log tree commit diff
path: root/compiler/rustc_expand/src/lib.rs
diff options
context:
space:
mode:
authorNicholas Nethercote <n.nethercote@gmail.com>2022-03-19 08:56:24 +1100
committerNicholas Nethercote <n.nethercote@gmail.com>2022-03-21 10:08:29 +1100
commitcedb787f6e92fb079be75a9f2c00a808195543a9 (patch)
treef17811b81d3d8f033da7f4f000b8aa52a5e5d97e /compiler/rustc_expand/src/lib.rs
parent10644e0789a3c722e11f74968f24c1382f9ccb11 (diff)
downloadrust-cedb787f6e92fb079be75a9f2c00a808195543a9.tar.gz
rust-cedb787f6e92fb079be75a9f2c00a808195543a9.zip
Remove `MatcherPosHandle`.
This type was a small performance win for `html5ever`, which uses a
macro with hundreds of very simple rules that don't contain any
metavariables. But this type is complicated (extra lifetimes) and
perf-neutral for macros that do have metavariables.

This commit removes `MatcherPosHandle`, simplifying things a lot. This
increases the allocation rate for `html5ever` and similar cases a bit,
but makes things easier for follow-up changes that will improve
performance more than what we lost here.
Diffstat (limited to 'compiler/rustc_expand/src/lib.rs')
-rw-r--r--compiler/rustc_expand/src/lib.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/rustc_expand/src/lib.rs b/compiler/rustc_expand/src/lib.rs
index 8a9efe01368..14b3f720f83 100644
--- a/compiler/rustc_expand/src/lib.rs
+++ b/compiler/rustc_expand/src/lib.rs
@@ -1,5 +1,6 @@
 #![feature(associated_type_bounds)]
 #![feature(associated_type_defaults)]
+#![feature(box_syntax)]
 #![feature(crate_visibility_modifier)]
 #![feature(decl_macro)]
 #![feature(if_let_guard)]