about summary refs log tree commit diff
path: root/src/tools
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2019-04-24 00:20:56 +0000
committerbors <bors@rust-lang.org>2019-04-24 00:20:56 +0000
commit0928511d3a11ecc9703c3c34f0fe36282dd9b171 (patch)
tree7ffcda6bed2a5a21e5abede82682bc1110e6b50c /src/tools
parente938c2b9aae7e0c37c382e4e22bdc360e9a4f0b6 (diff)
parente7f162fdd8a5f45ee0c2869ee6a8afe7dba69248 (diff)
downloadrust-0928511d3a11ecc9703c3c34f0fe36282dd9b171.tar.gz
rust-0928511d3a11ecc9703c3c34f0fe36282dd9b171.zip
Auto merge of #58623 - Amanieu:hashbrown3, r=alexcrichton
Replace HashMap implementation with SwissTable (as an external crate)

This is the same as #56241 except that it imports `hashbrown` as an external crate instead of copying the implementation into libstd.

This includes a few API changes (all unstable):
- `try_reserve` is added to `HashSet`.
- Some trait bounds have been changed in the `raw_entry` API.
- `search_bucket` has been removed from the `raw_entry` API (doesn't work with SwissTable).
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/rustc-std-workspace-alloc/Cargo.toml14
-rw-r--r--src/tools/rustc-std-workspace-alloc/lib.rs9
2 files changed, 23 insertions, 0 deletions
diff --git a/src/tools/rustc-std-workspace-alloc/Cargo.toml b/src/tools/rustc-std-workspace-alloc/Cargo.toml
new file mode 100644
index 00000000000..98578914963
--- /dev/null
+++ b/src/tools/rustc-std-workspace-alloc/Cargo.toml
@@ -0,0 +1,14 @@
+[package]
+name = "rustc-std-workspace-alloc"
+version = "1.0.0"
+authors = ["Alex Crichton <alex@alexcrichton.com>"]
+license = 'MIT/Apache-2.0'
+description = """
+Hack for the compiler's own build system
+"""
+
+[lib]
+path = "lib.rs"
+
+[dependencies]
+alloc = { path = "../../liballoc" }
diff --git a/src/tools/rustc-std-workspace-alloc/lib.rs b/src/tools/rustc-std-workspace-alloc/lib.rs
new file mode 100644
index 00000000000..c38a8d2f204
--- /dev/null
+++ b/src/tools/rustc-std-workspace-alloc/lib.rs
@@ -0,0 +1,9 @@
+#![feature(no_core)]
+#![no_core]
+
+// See rustc-std-workspace-core for why this crate is needed.
+
+// Rename the crate to avoid conflicting with the alloc module in liballoc.
+extern crate alloc as foo;
+
+pub use foo::*;