Assert that sysroot ABI version matches exactly

Otherwise, fall back to the multi ABI scheme, except in testing, where
it becomes a hard error.

This should make it possible to use a rustup-provided rust-analyzer with
proc macro dylibs compiled by older rustcs, and it'll also catch changes
to the format of `rustc --version` or the `.rustc` section that would
make them impossible to compare for equality.
This commit is contained in:
Amos Wenger 2022-07-21 13:13:24 +02:00
parent 480f555334
commit fdddd83224
5 changed files with 62 additions and 9 deletions

View file

@ -26,7 +26,7 @@ use crate::{
process::ProcMacroProcessSrv,
};
pub use version::{read_dylib_info, RustCInfo};
pub use version::{read_dylib_info, read_version, RustCInfo};
#[derive(Copy, Clone, Eq, PartialEq, Debug, Serialize, Deserialize)]
pub enum ProcMacroKind {