mirror of https://github.com/rust-lang/rust.git
Pin memchr to 2.5.0 in the library rather than rustc_ast
The latest versions of `memchr` experience LTO-related issues when compiling for windows-gnu [1], so needs to be pinned. The issue is present in the standard library. `memchr` has been pinned in `rustc_ast`, but since the workspace was recently split, this pin no longer has any effect on library crates. Resolve this by adding `memchr` as an _unused_ dependency in `std`, pinned to 2.5. Additionally, remove the pin in `rustc_ast` to allow non-library crates to upgrade to the latest version. Link: https://github.com/rust-lang/rust/issues/127890 [1]
This commit is contained in:
parent
11e760b7f4
commit
e95d15a115
|
@ -2177,9 +2177,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "memchr"
|
name = "memchr"
|
||||||
version = "2.5.0"
|
version = "2.7.4"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
|
checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "memmap2"
|
name = "memmap2"
|
||||||
|
|
|
@ -4,10 +4,9 @@ version = "0.0.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
# FIXME: bumping memchr to 2.7.1 causes linker errors in MSVC thin-lto
|
|
||||||
# tidy-alphabetical-start
|
# tidy-alphabetical-start
|
||||||
bitflags = "2.4.1"
|
bitflags = "2.4.1"
|
||||||
memchr = "=2.5.0"
|
memchr = "2.7.4"
|
||||||
rustc_ast_ir = { path = "../rustc_ast_ir" }
|
rustc_ast_ir = { path = "../rustc_ast_ir" }
|
||||||
rustc_data_structures = { path = "../rustc_data_structures" }
|
rustc_data_structures = { path = "../rustc_data_structures" }
|
||||||
rustc_index = { path = "../rustc_index" }
|
rustc_index = { path = "../rustc_index" }
|
||||||
|
|
|
@ -326,6 +326,7 @@ dependencies = [
|
||||||
"hashbrown",
|
"hashbrown",
|
||||||
"hermit-abi",
|
"hermit-abi",
|
||||||
"libc",
|
"libc",
|
||||||
|
"memchr",
|
||||||
"miniz_oxide",
|
"miniz_oxide",
|
||||||
"object",
|
"object",
|
||||||
"panic_abort",
|
"panic_abort",
|
||||||
|
|
|
@ -23,6 +23,10 @@ unwind = { path = "../unwind" }
|
||||||
hashbrown = { version = "0.14", default-features = false, features = [
|
hashbrown = { version = "0.14", default-features = false, features = [
|
||||||
'rustc-dep-of-std',
|
'rustc-dep-of-std',
|
||||||
] }
|
] }
|
||||||
|
# FIXME(#127890): `object` depends on `memchr`, but `memchr` > v2.5 causes
|
||||||
|
# issues with LTO. This dependency is not used directly, but pin it here so
|
||||||
|
# it resolves to 2.5. To be removed once rust-lang/rust#127890 is fixed.
|
||||||
|
memchr = { version = "=2.5.0", default-features = false, features = ["rustc-dep-of-std"] }
|
||||||
std_detect = { path = "../stdarch/crates/std_detect", default-features = false, features = [
|
std_detect = { path = "../stdarch/crates/std_detect", default-features = false, features = [
|
||||||
'rustc-dep-of-std',
|
'rustc-dep-of-std',
|
||||||
] }
|
] }
|
||||||
|
|
Loading…
Reference in New Issue