Unnamed repository; edit this file 'description' to name the repository.
| -rw-r--r-- | crates/proc-macro-api/src/legacy_protocol/msg/flat.rs | 69 | ||||
| -rw-r--r-- | crates/proc-macro-srv-cli/Cargo.toml | 2 | ||||
| -rw-r--r-- | crates/proc-macro-srv-cli/build.rs | 1 | ||||
| -rw-r--r-- | crates/proc-macro-srv-cli/src/main.rs | 6 | ||||
| -rw-r--r-- | crates/proc-macro-srv/Cargo.toml | 2 | ||||
| -rw-r--r-- | crates/proc-macro-srv/build.rs | 2 | ||||
| -rw-r--r-- | crates/proc-macro-srv/src/bridge.rs | 2 | ||||
| -rw-r--r-- | crates/proc-macro-srv/src/lib.rs | 11 | ||||
| -rw-r--r-- | crates/proc-macro-srv/src/tests/mod.rs | 188 | ||||
| -rw-r--r-- | crates/proc-macro-srv/src/token_stream.rs | 4 | ||||
| -rw-r--r-- | crates/rust-analyzer/build.rs | 1 |
11 files changed, 149 insertions, 139 deletions
diff --git a/crates/proc-macro-api/src/legacy_protocol/msg/flat.rs b/crates/proc-macro-api/src/legacy_protocol/msg/flat.rs index af3ea76861..7f19506048 100644 --- a/crates/proc-macro-api/src/legacy_protocol/msg/flat.rs +++ b/crates/proc-macro-api/src/legacy_protocol/msg/flat.rs @@ -34,10 +34,12 @@ //! as we don't have bincode in Cargo.toml yet, lets stick with serde_json for //! the time being. +#[cfg(feature = "sysroot-abi")] +use proc_macro_srv::TokenStream; + use std::collections::VecDeque; use intern::Symbol; -use proc_macro_srv::TokenStream; use rustc_hash::FxHashMap; use serde_derive::{Deserialize, Serialize}; use span::{EditionedFileId, ErasedFileAstId, Span, SpanAnchor, SyntaxContext, TextRange}; @@ -162,6 +164,39 @@ impl FlatTree { } } + pub fn to_subtree_resolved( + self, + version: u32, + span_data_table: &SpanDataIndexMap, + ) -> tt::TopSubtree<Span> { + Reader::<Span> { + subtree: if version >= ENCODE_CLOSE_SPAN_VERSION { + read_vec(self.subtree, SubtreeRepr::read_with_close_span) + } else { + read_vec(self.subtree, SubtreeRepr::read) + }, + literal: if version >= EXTENDED_LEAF_DATA { + read_vec(self.literal, LiteralRepr::read_with_kind) + } else { + read_vec(self.literal, LiteralRepr::read) + }, + punct: read_vec(self.punct, PunctRepr::read), + ident: if version >= EXTENDED_LEAF_DATA { + read_vec(self.ident, IdentRepr::read_with_rawness) + } else { + read_vec(self.ident, IdentRepr::read) + }, + token_tree: self.token_tree, + text: self.text, + span_data_table, + version, + } + .read_subtree() + } +} + +#[cfg(feature = "sysroot-abi")] +impl FlatTree { pub fn from_tokenstream( tokenstream: proc_macro_srv::TokenStream<Span>, version: u32, @@ -265,37 +300,6 @@ impl FlatTree { } } - pub fn to_subtree_resolved( - self, - version: u32, - span_data_table: &SpanDataIndexMap, - ) -> tt::TopSubtree<Span> { - Reader::<Span> { - subtree: if version >= ENCODE_CLOSE_SPAN_VERSION { - read_vec(self.subtree, SubtreeRepr::read_with_close_span) - } else { - read_vec(self.subtree, SubtreeRepr::read) - }, - literal: if version >= EXTENDED_LEAF_DATA { - read_vec(self.literal, LiteralRepr::read_with_kind) - } else { - read_vec(self.literal, LiteralRepr::read) - }, - punct: read_vec(self.punct, PunctRepr::read), - ident: if version >= EXTENDED_LEAF_DATA { - read_vec(self.ident, IdentRepr::read_with_rawness) - } else { - read_vec(self.ident, IdentRepr::read) - }, - token_tree: self.token_tree, - text: self.text, - span_data_table, - version, - } - .read_subtree() - } -} -impl FlatTree { pub fn to_tokenstream_unresolved<T: SpanTransformer<Table = ()>>( self, version: u32, @@ -836,6 +840,7 @@ impl<T: SpanTransformer> Reader<'_, T> { } } +#[cfg(feature = "sysroot-abi")] impl<T: SpanTransformer> Reader<'_, T> { pub(crate) fn read_tokenstream(self) -> proc_macro_srv::TokenStream<T::Span> { let mut res: Vec<Option<proc_macro_srv::Group<T::Span>>> = vec![None; self.subtree.len()]; diff --git a/crates/proc-macro-srv-cli/Cargo.toml b/crates/proc-macro-srv-cli/Cargo.toml index 38c42729d6..dd31e74915 100644 --- a/crates/proc-macro-srv-cli/Cargo.toml +++ b/crates/proc-macro-srv-cli/Cargo.toml @@ -18,7 +18,7 @@ clap = {version = "4.5.42", default-features = false, features = ["std"]} postcard = { version = "1.1.3", optional = true } [features] -default = ["postcard", "sysroot-abi"] +default = ["postcard"] sysroot-abi = ["proc-macro-srv/sysroot-abi", "proc-macro-api/sysroot-abi"] in-rust-tree = ["proc-macro-srv/in-rust-tree", "sysroot-abi"] postcard = ["dep:postcard"] diff --git a/crates/proc-macro-srv-cli/build.rs b/crates/proc-macro-srv-cli/build.rs index 12e7c8b05b..bcf639fefc 100644 --- a/crates/proc-macro-srv-cli/build.rs +++ b/crates/proc-macro-srv-cli/build.rs @@ -5,7 +5,6 @@ use std::{env, path::PathBuf, process::Command}; fn main() { set_rerun(); set_commit_info(); - println!("cargo::rustc-check-cfg=cfg(rust_analyzer)"); } fn set_rerun() { diff --git a/crates/proc-macro-srv-cli/src/main.rs b/crates/proc-macro-srv-cli/src/main.rs index 662d34865e..9d74fa637a 100644 --- a/crates/proc-macro-srv-cli/src/main.rs +++ b/crates/proc-macro-srv-cli/src/main.rs @@ -9,10 +9,10 @@ extern crate rustc_driver as _; mod version; -#[cfg(any(feature = "sysroot-abi", rust_analyzer))] +#[cfg(feature = "sysroot-abi")] mod main_loop; use clap::{Command, ValueEnum}; -#[cfg(any(feature = "sysroot-abi", rust_analyzer))] +#[cfg(feature = "sysroot-abi")] use main_loop::run; fn main() -> std::io::Result<()> { @@ -77,7 +77,7 @@ impl ValueEnum for ProtocolFormat { } } -#[cfg(not(any(feature = "sysroot-abi", rust_analyzer)))] +#[cfg(not(feature = "sysroot-abi"))] fn run(_: ProtocolFormat) -> std::io::Result<()> { Err(std::io::Error::new( std::io::ErrorKind::Unsupported, diff --git a/crates/proc-macro-srv/Cargo.toml b/crates/proc-macro-srv/Cargo.toml index 23734b5bbd..3610171784 100644 --- a/crates/proc-macro-srv/Cargo.toml +++ b/crates/proc-macro-srv/Cargo.toml @@ -36,7 +36,7 @@ expect-test.workspace = true proc-macro-test.path = "./proc-macro-test" [features] -default = ["sysroot-abi"] +default = [] sysroot-abi = [] in-rust-tree = ["sysroot-abi"] diff --git a/crates/proc-macro-srv/build.rs b/crates/proc-macro-srv/build.rs index 97c0c4bda7..4cf1820e7b 100644 --- a/crates/proc-macro-srv/build.rs +++ b/crates/proc-macro-srv/build.rs @@ -4,8 +4,6 @@ use std::{env, process::Command}; fn main() { - println!("cargo::rustc-check-cfg=cfg(rust_analyzer)"); - let rustc = env::var("RUSTC").expect("proc-macro-srv's build script expects RUSTC to be set"); #[allow(clippy::disallowed_methods)] let output = Command::new(rustc).arg("--version").output().expect("rustc --version must run"); diff --git a/crates/proc-macro-srv/src/bridge.rs b/crates/proc-macro-srv/src/bridge.rs index 71739f3f36..fc063a07b5 100644 --- a/crates/proc-macro-srv/src/bridge.rs +++ b/crates/proc-macro-srv/src/bridge.rs @@ -1,3 +1,5 @@ +//! `proc_macro::bridge` newtypes.
+
use proc_macro::bridge as pm_bridge;
pub use pm_bridge::{DelimSpan, Diagnostic, ExpnGlobals, LitKind};
diff --git a/crates/proc-macro-srv/src/lib.rs b/crates/proc-macro-srv/src/lib.rs index 1f80e93db6..aff4dc5037 100644 --- a/crates/proc-macro-srv/src/lib.rs +++ b/crates/proc-macro-srv/src/lib.rs @@ -10,11 +10,16 @@ //! * By **copying** the whole rustc `lib_proc_macro` code, we are able to build this with `stable` //! rustc rather than `unstable`. (Although in general ABI compatibility is still an issue)… -#![cfg(any(feature = "sysroot-abi", rust_analyzer))] -#![cfg_attr(not(feature = "sysroot-abi"), allow(unused_crate_dependencies))] +#![cfg(feature = "sysroot-abi")] #![cfg_attr(feature = "in-rust-tree", feature(rustc_private))] #![feature(proc_macro_internals, proc_macro_diagnostic, proc_macro_span)] -#![allow(unreachable_pub, internal_features, clippy::disallowed_types, clippy::print_stderr)] +#![allow( + unreachable_pub, + internal_features, + clippy::disallowed_types, + clippy::print_stderr, + unused_crate_dependencies +)] #![deny(deprecated_safe, clippy::undocumented_unsafe_blocks)] extern crate proc_macro; diff --git a/crates/proc-macro-srv/src/tests/mod.rs b/crates/proc-macro-srv/src/tests/mod.rs index cfc1d86bb6..968e887000 100644 --- a/crates/proc-macro-srv/src/tests/mod.rs +++ b/crates/proc-macro-srv/src/tests/mod.rs @@ -41,7 +41,7 @@ fn test_derive_error() { IDENT 1 compile_error PUNCT 1 ! [joint] GROUP () 1 1 1 - LITER 1 Str #[derive(DeriveError)] struct S {field 58 u32 } + LITER 1 Str #[derive(DeriveError)] struct S {field 58 u32 } PUNCT 1 ; [alone] "#]], expect![[r#" @@ -56,7 +56,7 @@ fn test_derive_error() { IDENT 42:Root[0000, 0]@0..13#ROOT2024 compile_error PUNCT 42:Root[0000, 0]@13..14#ROOT2024 ! [joint] GROUP () 42:Root[0000, 0]@14..15#ROOT2024 42:Root[0000, 0]@64..65#ROOT2024 42:Root[0000, 0]@14..65#ROOT2024 - LITER 42:Root[0000, 0]@15..64#ROOT2024 Str #[derive(DeriveError)] struct S {field 58 u32 } + LITER 42:Root[0000, 0]@15..64#ROOT2024 Str #[derive(DeriveError)] struct S {field 58 u32 } PUNCT 42:Root[0000, 0]@65..66#ROOT2024 ; [alone] "#]], ); @@ -70,36 +70,36 @@ fn test_fn_like_macro_noop() { expect![[r#" IDENT 1 ident PUNCT 1 , [alone] - LITER 1 Integer 0 + LITER 1 Integer 0 PUNCT 1 , [alone] - LITER 1 Integer 1 + LITER 1 Integer 1 PUNCT 1 , [alone] GROUP [] 1 1 1 IDENT 1 ident PUNCT 1 , [alone] - LITER 1 Integer 0 + LITER 1 Integer 0 PUNCT 1 , [alone] - LITER 1 Integer 1 + LITER 1 Integer 1 PUNCT 1 , [alone] GROUP [] 1 1 1 "#]], expect![[r#" IDENT 42:Root[0000, 0]@0..5#ROOT2024 ident PUNCT 42:Root[0000, 0]@5..6#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@7..8#ROOT2024 Integer 0 + LITER 42:Root[0000, 0]@7..8#ROOT2024 Integer 0 PUNCT 42:Root[0000, 0]@8..9#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@10..11#ROOT2024 Integer 1 + LITER 42:Root[0000, 0]@10..11#ROOT2024 Integer 1 PUNCT 42:Root[0000, 0]@11..12#ROOT2024 , [alone] GROUP [] 42:Root[0000, 0]@13..14#ROOT2024 42:Root[0000, 0]@14..15#ROOT2024 42:Root[0000, 0]@13..15#ROOT2024 IDENT 42:Root[0000, 0]@0..5#ROOT2024 ident PUNCT 42:Root[0000, 0]@5..6#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@7..8#ROOT2024 Integer 0 + LITER 42:Root[0000, 0]@7..8#ROOT2024 Integer 0 PUNCT 42:Root[0000, 0]@8..9#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@10..11#ROOT2024 Integer 1 + LITER 42:Root[0000, 0]@10..11#ROOT2024 Integer 1 PUNCT 42:Root[0000, 0]@11..12#ROOT2024 , [alone] GROUP [] 42:Root[0000, 0]@13..14#ROOT2024 42:Root[0000, 0]@14..15#ROOT2024 42:Root[0000, 0]@13..15#ROOT2024 "#]], @@ -212,36 +212,36 @@ fn test_fn_like_mk_literals() { expect![[r#" - LITER 1 ByteStr byte_string - LITER 1 Char c - LITER 1 Str string - LITER 1 Str -string - LITER 1 CStr cstring - LITER 1 Float 3.14f64 - LITER 1 Float -3.14f64 - LITER 1 Float 3.14 - LITER 1 Float -3.14 - LITER 1 Integer 123i64 - LITER 1 Integer -123i64 - LITER 1 Integer 123 - LITER 1 Integer -123 + LITER 1 ByteStr byte_string + LITER 1 Char c + LITER 1 Str string + LITER 1 Str -string + LITER 1 CStr cstring + LITER 1 Float 3.14f64 + LITER 1 Float -3.14f64 + LITER 1 Float 3.14 + LITER 1 Float -3.14 + LITER 1 Integer 123i64 + LITER 1 Integer -123i64 + LITER 1 Integer 123 + LITER 1 Integer -123 "#]], expect![[r#" - LITER 42:Root[0000, 0]@0..100#ROOT2024 ByteStr byte_string - LITER 42:Root[0000, 0]@0..100#ROOT2024 Char c - LITER 42:Root[0000, 0]@0..100#ROOT2024 Str string - LITER 42:Root[0000, 0]@0..100#ROOT2024 Str -string - LITER 42:Root[0000, 0]@0..100#ROOT2024 CStr cstring - LITER 42:Root[0000, 0]@0..100#ROOT2024 Float 3.14f64 - LITER 42:Root[0000, 0]@0..100#ROOT2024 Float -3.14f64 - LITER 42:Root[0000, 0]@0..100#ROOT2024 Float 3.14 - LITER 42:Root[0000, 0]@0..100#ROOT2024 Float -3.14 - LITER 42:Root[0000, 0]@0..100#ROOT2024 Integer 123i64 - LITER 42:Root[0000, 0]@0..100#ROOT2024 Integer -123i64 - LITER 42:Root[0000, 0]@0..100#ROOT2024 Integer 123 - LITER 42:Root[0000, 0]@0..100#ROOT2024 Integer -123 + LITER 42:Root[0000, 0]@0..100#ROOT2024 ByteStr byte_string + LITER 42:Root[0000, 0]@0..100#ROOT2024 Char c + LITER 42:Root[0000, 0]@0..100#ROOT2024 Str string + LITER 42:Root[0000, 0]@0..100#ROOT2024 Str -string + LITER 42:Root[0000, 0]@0..100#ROOT2024 CStr cstring + LITER 42:Root[0000, 0]@0..100#ROOT2024 Float 3.14f64 + LITER 42:Root[0000, 0]@0..100#ROOT2024 Float -3.14f64 + LITER 42:Root[0000, 0]@0..100#ROOT2024 Float 3.14 + LITER 42:Root[0000, 0]@0..100#ROOT2024 Float -3.14 + LITER 42:Root[0000, 0]@0..100#ROOT2024 Integer 123i64 + LITER 42:Root[0000, 0]@0..100#ROOT2024 Integer -123i64 + LITER 42:Root[0000, 0]@0..100#ROOT2024 Integer 123 + LITER 42:Root[0000, 0]@0..100#ROOT2024 Integer -123 "#]], ); } @@ -272,92 +272,92 @@ fn test_fn_like_macro_clone_literals() { "fn_like_clone_tokens", r###"1u16, 2_u32, -4i64, 3.14f32, "hello bridge", "suffixed"suffix, r##"raw"##, 'a', b'b', c"null""###, expect![[r#" - LITER 1 Integer 1u16 + LITER 1 Integer 1u16 PUNCT 1 , [alone] - LITER 1 Integer 2_u32 + LITER 1 Integer 2_u32 PUNCT 1 , [alone] PUNCT 1 - [alone] - LITER 1 Integer 4i64 + LITER 1 Integer 4i64 PUNCT 1 , [alone] - LITER 1 Float 3.14f32 + LITER 1 Float 3.14f32 PUNCT 1 , [alone] - LITER 1 Str hello bridge + LITER 1 Str hello bridge PUNCT 1 , [alone] - LITER 1 Str suffixedsuffix + LITER 1 Str suffixedsuffix PUNCT 1 , [alone] - LITER 1 StrRaw(2) raw + LITER 1 StrRaw(2) raw PUNCT 1 , [alone] - LITER 1 Char a + LITER 1 Char a PUNCT 1 , [alone] - LITER 1 Byte b + LITER 1 Byte b PUNCT 1 , [alone] - LITER 1 CStr null + LITER 1 CStr null - LITER 1 Integer 1u16 + LITER 1 Integer 1u16 PUNCT 1 , [alone] - LITER 1 Integer 2_u32 + LITER 1 Integer 2_u32 PUNCT 1 , [alone] PUNCT 1 - [alone] - LITER 1 Integer 4i64 + LITER 1 Integer 4i64 PUNCT 1 , [alone] - LITER 1 Float 3.14f32 + LITER 1 Float 3.14f32 PUNCT 1 , [alone] - LITER 1 Str hello bridge + LITER 1 Str hello bridge PUNCT 1 , [alone] - LITER 1 Str suffixedsuffix + LITER 1 Str suffixedsuffix PUNCT 1 , [alone] - LITER 1 StrRaw(2) raw + LITER 1 StrRaw(2) raw PUNCT 1 , [alone] - LITER 1 Char a + LITER 1 Char a PUNCT 1 , [alone] - LITER 1 Byte b + LITER 1 Byte b PUNCT 1 , [alone] - LITER 1 CStr null + LITER 1 CStr null "#]], expect![[r#" - LITER 42:Root[0000, 0]@0..4#ROOT2024 Integer 1u16 + LITER 42:Root[0000, 0]@0..4#ROOT2024 Integer 1u16 PUNCT 42:Root[0000, 0]@4..5#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@6..11#ROOT2024 Integer 2_u32 + LITER 42:Root[0000, 0]@6..11#ROOT2024 Integer 2_u32 PUNCT 42:Root[0000, 0]@11..12#ROOT2024 , [alone] PUNCT 42:Root[0000, 0]@13..14#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@14..18#ROOT2024 Integer 4i64 + LITER 42:Root[0000, 0]@14..18#ROOT2024 Integer 4i64 PUNCT 42:Root[0000, 0]@18..19#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@20..27#ROOT2024 Float 3.14f32 + LITER 42:Root[0000, 0]@20..27#ROOT2024 Float 3.14f32 PUNCT 42:Root[0000, 0]@27..28#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@29..43#ROOT2024 Str hello bridge + LITER 42:Root[0000, 0]@29..43#ROOT2024 Str hello bridge PUNCT 42:Root[0000, 0]@43..44#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@45..61#ROOT2024 Str suffixedsuffix + LITER 42:Root[0000, 0]@45..61#ROOT2024 Str suffixedsuffix PUNCT 42:Root[0000, 0]@61..62#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@63..73#ROOT2024 StrRaw(2) raw + LITER 42:Root[0000, 0]@63..73#ROOT2024 StrRaw(2) raw PUNCT 42:Root[0000, 0]@73..74#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@75..78#ROOT2024 Char a + LITER 42:Root[0000, 0]@75..78#ROOT2024 Char a PUNCT 42:Root[0000, 0]@78..79#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@80..84#ROOT2024 Byte b + LITER 42:Root[0000, 0]@80..84#ROOT2024 Byte b PUNCT 42:Root[0000, 0]@84..85#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@86..93#ROOT2024 CStr null + LITER 42:Root[0000, 0]@86..93#ROOT2024 CStr null - LITER 42:Root[0000, 0]@0..4#ROOT2024 Integer 1u16 + LITER 42:Root[0000, 0]@0..4#ROOT2024 Integer 1u16 PUNCT 42:Root[0000, 0]@4..5#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@6..11#ROOT2024 Integer 2_u32 + LITER 42:Root[0000, 0]@6..11#ROOT2024 Integer 2_u32 PUNCT 42:Root[0000, 0]@11..12#ROOT2024 , [alone] PUNCT 42:Root[0000, 0]@13..14#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@14..18#ROOT2024 Integer 4i64 + LITER 42:Root[0000, 0]@14..18#ROOT2024 Integer 4i64 PUNCT 42:Root[0000, 0]@18..19#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@20..27#ROOT2024 Float 3.14f32 + LITER 42:Root[0000, 0]@20..27#ROOT2024 Float 3.14f32 PUNCT 42:Root[0000, 0]@27..28#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@29..43#ROOT2024 Str hello bridge + LITER 42:Root[0000, 0]@29..43#ROOT2024 Str hello bridge PUNCT 42:Root[0000, 0]@43..44#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@45..61#ROOT2024 Str suffixedsuffix + LITER 42:Root[0000, 0]@45..61#ROOT2024 Str suffixedsuffix PUNCT 42:Root[0000, 0]@61..62#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@63..73#ROOT2024 StrRaw(2) raw + LITER 42:Root[0000, 0]@63..73#ROOT2024 StrRaw(2) raw PUNCT 42:Root[0000, 0]@73..74#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@75..78#ROOT2024 Char a + LITER 42:Root[0000, 0]@75..78#ROOT2024 Char a PUNCT 42:Root[0000, 0]@78..79#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@80..84#ROOT2024 Byte b + LITER 42:Root[0000, 0]@80..84#ROOT2024 Byte b PUNCT 42:Root[0000, 0]@84..85#ROOT2024 , [alone] - LITER 42:Root[0000, 0]@86..93#ROOT2024 CStr null + LITER 42:Root[0000, 0]@86..93#ROOT2024 CStr null "#]], ); } @@ -369,55 +369,55 @@ fn test_fn_like_macro_negative_literals() { r###"-1u16, - 2_u32, -3.14f32, - 2.7"###, expect![[r#" PUNCT 1 - [alone] - LITER 1 Integer 1u16 + LITER 1 Integer 1u16 PUNCT 1 , [alone] PUNCT 1 - [alone] - LITER 1 Integer 2_u32 + LITER 1 Integer 2_u32 PUNCT 1 , [alone] PUNCT 1 - [alone] - LITER 1 Float 3.14f32 + LITER 1 Float 3.14f32 PUNCT 1 , [alone] PUNCT 1 - [alone] - LITER 1 Float 2.7 + LITER 1 Float 2.7 PUNCT 1 - [alone] - LITER 1 Integer 1u16 + LITER 1 Integer 1u16 PUNCT 1 , [alone] PUNCT 1 - [alone] - LITER 1 Integer 2_u32 + LITER 1 Integer 2_u32 PUNCT 1 , [alone] PUNCT 1 - [alone] - LITER 1 Float 3.14f32 + LITER 1 Float 3.14f32 PUNCT 1 , [alone] PUNCT 1 - [alone] - LITER 1 Float 2.7 + LITER 1 Float 2.7 "#]], expect![[r#" PUNCT 42:Root[0000, 0]@0..1#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@1..5#ROOT2024 Integer 1u16 + LITER 42:Root[0000, 0]@1..5#ROOT2024 Integer 1u16 PUNCT 42:Root[0000, 0]@5..6#ROOT2024 , [alone] PUNCT 42:Root[0000, 0]@7..8#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@9..14#ROOT2024 Integer 2_u32 + LITER 42:Root[0000, 0]@9..14#ROOT2024 Integer 2_u32 PUNCT 42:Root[0000, 0]@14..15#ROOT2024 , [alone] PUNCT 42:Root[0000, 0]@16..17#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@17..24#ROOT2024 Float 3.14f32 + LITER 42:Root[0000, 0]@17..24#ROOT2024 Float 3.14f32 PUNCT 42:Root[0000, 0]@24..25#ROOT2024 , [alone] PUNCT 42:Root[0000, 0]@26..27#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@28..31#ROOT2024 Float 2.7 + LITER 42:Root[0000, 0]@28..31#ROOT2024 Float 2.7 PUNCT 42:Root[0000, 0]@0..1#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@1..5#ROOT2024 Integer 1u16 + LITER 42:Root[0000, 0]@1..5#ROOT2024 Integer 1u16 PUNCT 42:Root[0000, 0]@5..6#ROOT2024 , [alone] PUNCT 42:Root[0000, 0]@7..8#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@9..14#ROOT2024 Integer 2_u32 + LITER 42:Root[0000, 0]@9..14#ROOT2024 Integer 2_u32 PUNCT 42:Root[0000, 0]@14..15#ROOT2024 , [alone] PUNCT 42:Root[0000, 0]@16..17#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@17..24#ROOT2024 Float 3.14f32 + LITER 42:Root[0000, 0]@17..24#ROOT2024 Float 3.14f32 PUNCT 42:Root[0000, 0]@24..25#ROOT2024 , [alone] PUNCT 42:Root[0000, 0]@26..27#ROOT2024 - [alone] - LITER 42:Root[0000, 0]@28..31#ROOT2024 Float 2.7 + LITER 42:Root[0000, 0]@28..31#ROOT2024 Float 2.7 "#]], ); } @@ -444,7 +444,7 @@ fn test_attr_macro() { IDENT 1 compile_error PUNCT 1 ! [joint] GROUP () 1 1 1 - LITER 1 Str #[attr_error(some arguments )] mod m {} + LITER 1 Str #[attr_error(some arguments )] mod m {} PUNCT 1 ; [alone] "#]], expect![[r#" @@ -460,7 +460,7 @@ fn test_attr_macro() { IDENT 42:Root[0000, 0]@0..13#ROOT2024 compile_error PUNCT 42:Root[0000, 0]@13..14#ROOT2024 ! [joint] GROUP () 42:Root[0000, 0]@14..15#ROOT2024 42:Root[0000, 0]@56..57#ROOT2024 42:Root[0000, 0]@14..57#ROOT2024 - LITER 42:Root[0000, 0]@15..56#ROOT2024 Str #[attr_error(some arguments )] mod m {} + LITER 42:Root[0000, 0]@15..56#ROOT2024 Str #[attr_error(some arguments )] mod m {} PUNCT 42:Root[0000, 0]@57..58#ROOT2024 ; [alone] "#]], ); diff --git a/crates/proc-macro-srv/src/token_stream.rs b/crates/proc-macro-srv/src/token_stream.rs index e337f08ce4..cfdf0da903 100644 --- a/crates/proc-macro-srv/src/token_stream.rs +++ b/crates/proc-macro-srv/src/token_stream.rs @@ -1,3 +1,5 @@ +//! The proc-macro server token stream implementation.
+
use core::fmt;
use std::sync::Arc;
@@ -587,7 +589,7 @@ fn debug_token_tree<S: fmt::Debug>( }
TokenTree::Literal(Literal { kind, symbol, suffix, span }) => write!(
f,
- "LITER {span:#?} {kind:?} {symbol}{} ",
+ "LITER {span:#?} {kind:?} {symbol}{}",
match suffix {
Some(suffix) => suffix.clone(),
None => Symbol::intern(""),
diff --git a/crates/rust-analyzer/build.rs b/crates/rust-analyzer/build.rs index 0fd381d612..cc7f112599 100644 --- a/crates/rust-analyzer/build.rs +++ b/crates/rust-analyzer/build.rs @@ -5,7 +5,6 @@ use std::{env, path::PathBuf, process::Command}; fn main() { set_rerun(); set_commit_info(); - println!("cargo::rustc-check-cfg=cfg(rust_analyzer)"); if option_env!("CFG_RELEASE").is_none() { println!("cargo:rustc-env=POKE_RA_DEVS=1"); } |