Skip to content

Commit 7981818

Browse files
committed
Auto merge of rust-lang#151076 - cuviper:compiler-hashbrown-0.16.1, r=Amanieu
compiler: upgrade to hashbrown 0.16.1 See also rust-lang#135634, rust-lang#149159, and rust-lang/hashbrown#662. This includes an in-tree upgrade of `indexmap` as well, which uses the new `HashTable` buckets API internally, hopefully impacting performance for the better. And finally, we can remove `#[rustc_unsafe_specialization_marker]` on `Copy`! cc @joboet r? @Amanieu
2 parents 058a763 + 03cc50f commit 7981818

File tree

6 files changed

+16
-15
lines changed

6 files changed

+16
-15
lines changed

Cargo.lock

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1670,9 +1670,12 @@ dependencies = [
16701670

16711671
[[package]]
16721672
name = "hashbrown"
1673-
version = "0.16.0"
1673+
version = "0.16.1"
16741674
source = "registry+https://github.com/rust-lang/crates.io-index"
1675-
checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d"
1675+
checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
1676+
dependencies = [
1677+
"foldhash 0.2.0",
1678+
]
16761679

16771680
[[package]]
16781681
name = "heck"
@@ -1950,12 +1953,12 @@ checksum = "964de6e86d545b246d84badc0fef527924ace5134f30641c203ef52ba83f58d5"
19501953

19511954
[[package]]
19521955
name = "indexmap"
1953-
version = "2.12.0"
1956+
version = "2.13.0"
19541957
source = "registry+https://github.com/rust-lang/crates.io-index"
1955-
checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f"
1958+
checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017"
19561959
dependencies = [
19571960
"equivalent",
1958-
"hashbrown 0.16.0",
1961+
"hashbrown 0.16.1",
19591962
"serde",
19601963
"serde_core",
19611964
]
@@ -3730,7 +3733,7 @@ dependencies = [
37303733
"either",
37313734
"elsa",
37323735
"ena",
3733-
"hashbrown 0.15.5",
3736+
"hashbrown 0.16.1",
37343737
"indexmap",
37353738
"jobserver",
37363739
"libc",
@@ -4350,7 +4353,7 @@ name = "rustc_mir_transform"
43504353
version = "0.0.0"
43514354
dependencies = [
43524355
"either",
4353-
"hashbrown 0.15.5",
4356+
"hashbrown 0.16.1",
43544357
"itertools",
43554358
"rustc_abi",
43564359
"rustc_arena",
@@ -4561,7 +4564,7 @@ dependencies = [
45614564
name = "rustc_query_system"
45624565
version = "0.0.0"
45634566
dependencies = [
4564-
"hashbrown 0.15.5",
4567+
"hashbrown 0.16.1",
45654568
"parking_lot",
45664569
"rustc_abi",
45674570
"rustc_ast",

compiler/rustc_data_structures/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ bitflags = "2.4.1"
1010
either = "1.0"
1111
elsa = "1.11.0"
1212
ena = "0.14.3"
13-
indexmap = "2.4.0"
13+
indexmap = "2.12.1"
1414
jobserver_crate = { version = "0.1.28", package = "jobserver" }
1515
measureme = "12.0.1"
1616
parking_lot = "0.12"
@@ -31,7 +31,7 @@ tracing = "0.1"
3131
# tidy-alphabetical-end
3232

3333
[dependencies.hashbrown]
34-
version = "0.15.2"
34+
version = "0.16.1"
3535
default-features = false
3636
features = ["nightly"] # for may_dangle
3737

compiler/rustc_mir_transform/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ edition = "2024"
66
[dependencies]
77
# tidy-alphabetical-start
88
either = "1"
9-
hashbrown = "0.15"
9+
hashbrown = { version = "0.16.1", default-features = false }
1010
itertools = "0.12"
1111
rustc_abi = { path = "../rustc_abi" }
1212
rustc_arena = { path = "../rustc_arena" }

compiler/rustc_query_system/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,6 @@ tracing = "0.1"
2525
# tidy-alphabetical-end
2626

2727
[dependencies.hashbrown]
28-
version = "0.15.2"
28+
version = "0.16.1"
2929
default-features = false
3030
features = ["nightly"] # for may_dangle

library/core/src/marker.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -455,9 +455,6 @@ marker_impls! {
455455
/// [impls]: #implementors
456456
#[stable(feature = "rust1", since = "1.0.0")]
457457
#[lang = "copy"]
458-
// This is unsound, but required by `hashbrown`
459-
// FIXME(joboet): change `hashbrown` to use `TrivialClone`
460-
#[rustc_unsafe_specialization_marker]
461458
#[rustc_diagnostic_item = "Copy"]
462459
pub trait Copy: Clone {
463460
// Empty.

src/bootstrap/src/utils/proc_macro_deps.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ pub static CRATES: &[&str] = &[
2222
"fluent-langneg",
2323
"fluent-syntax",
2424
"fnv",
25+
"foldhash",
2526
"generic-array",
2627
"hashbrown",
2728
"heck",

0 commit comments

Comments
 (0)