Skip to content

Commit 1b53c12

Browse files
authored
Merge pull request rust-lang#2358 from rust-lang/rustc-pull
Rustc pull update
2 parents d91ffb6 + aa15830 commit 1b53c12

File tree

416 files changed

+5191
-3044
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

416 files changed

+5191
-3044
lines changed

.github/workflows/ci.yml

+13
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,17 @@ jobs:
9191
# Check the `calculate_matrix` job to see how is the matrix defined.
9292
include: ${{ fromJSON(needs.calculate_matrix.outputs.jobs) }}
9393
steps:
94+
- name: Install cargo in AWS CodeBuild
95+
if: matrix.codebuild
96+
run: |
97+
# Check if cargo is installed
98+
if ! command -v cargo &> /dev/null; then
99+
echo "Cargo not found, installing Rust..."
100+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile=minimal
101+
# Make cargo available in PATH
102+
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
103+
fi
104+
94105
- name: disable git crlf conversion
95106
run: git config --global core.autocrlf false
96107

@@ -165,6 +176,8 @@ jobs:
165176
run: src/ci/scripts/install-ninja.sh
166177

167178
- name: enable ipv6 on Docker
179+
# Don't run on codebuild because systemctl is not available
180+
if: ${{ !matrix.codebuild }}
168181
run: src/ci/scripts/enable-docker-ipv6.sh
169182

170183
# Disable automatic line ending conversion (again). On Windows, when we're

Cargo.lock

+30-63
Original file line numberDiff line numberDiff line change
@@ -737,6 +737,7 @@ dependencies = [
737737
"libc",
738738
"miow",
739739
"miropt-test-tools",
740+
"rayon",
740741
"regex",
741742
"rustfix",
742743
"semver",
@@ -3699,6 +3700,9 @@ dependencies = [
36993700
[[package]]
37003701
name = "rustc_fs_util"
37013702
version = "0.0.0"
3703+
dependencies = [
3704+
"tempfile",
3705+
]
37023706

37033707
[[package]]
37043708
name = "rustc_graphviz"
@@ -4011,7 +4015,6 @@ dependencies = [
40114015
"rustc_session",
40124016
"rustc_span",
40134017
"rustc_target",
4014-
"tempfile",
40154018
"tracing",
40164019
]
40174020

@@ -4158,7 +4161,6 @@ dependencies = [
41584161
"rustc_data_structures",
41594162
"rustc_index",
41604163
"rustc_macros",
4161-
"rustc_serialize",
41624164
"rustc_type_ir",
41634165
"rustc_type_ir_macros",
41644166
"tracing",
@@ -4916,15 +4918,6 @@ dependencies = [
49164918
"color-eyre",
49174919
]
49184920

4919-
[[package]]
4920-
name = "spdx"
4921-
version = "0.10.8"
4922-
source = "registry+https://github.com/rust-lang/crates.io-index"
4923-
checksum = "58b69356da67e2fc1f542c71ea7e654a361a79c938e4424392ecf4fa065d2193"
4924-
dependencies = [
4925-
"smallvec",
4926-
]
4927-
49284921
[[package]]
49294922
name = "spdx-expression"
49304923
version = "0.5.2"
@@ -5744,9 +5737,9 @@ dependencies = [
57445737

57455738
[[package]]
57465739
name = "wasi-preview1-component-adapter-provider"
5747-
version = "29.0.1"
5740+
version = "31.0.0"
57485741
source = "registry+https://github.com/rust-lang/crates.io-index"
5749-
checksum = "dcd9f21bbde82ba59e415a8725e6ad0d0d7e9e460b1a3ccbca5bdee952c1a324"
5742+
checksum = "86fabda09a0d89ffd1615b297b4a5d4b4d99df9598aeb24685837e63019e927b"
57505743

57515744
[[package]]
57525745
name = "wasm-bindgen"
@@ -5808,17 +5801,17 @@ dependencies = [
58085801

58095802
[[package]]
58105803
name = "wasm-component-ld"
5811-
version = "0.5.12"
5804+
version = "0.5.13"
58125805
source = "registry+https://github.com/rust-lang/crates.io-index"
5813-
checksum = "580305a8e3f1b7a79859a8db897de643533b2851c5eb080fe5800233f16dec88"
5806+
checksum = "a60a07a994a3538b57d8c5f8caba19f4793fb4c7156276e5e90e90acbb829e20"
58145807
dependencies = [
58155808
"anyhow",
58165809
"clap",
58175810
"lexopt",
58185811
"libc",
58195812
"tempfile",
58205813
"wasi-preview1-component-adapter-provider",
5821-
"wasmparser 0.223.1",
5814+
"wasmparser 0.229.0",
58225815
"wat",
58235816
"windows-sys 0.59.0",
58245817
"winsplit",
@@ -5845,39 +5838,24 @@ dependencies = [
58455838

58465839
[[package]]
58475840
name = "wasm-encoder"
5848-
version = "0.223.1"
5841+
version = "0.229.0"
58495842
source = "registry+https://github.com/rust-lang/crates.io-index"
5850-
checksum = "7a0a96fdeaee8fbeb4bd917fb8157d48c0d61c3b1f4ee4c363c8e8d68b2f4fe8"
5851-
dependencies = [
5852-
"leb128",
5853-
"wasmparser 0.223.1",
5854-
]
5855-
5856-
[[package]]
5857-
name = "wasm-encoder"
5858-
version = "0.228.0"
5859-
source = "registry+https://github.com/rust-lang/crates.io-index"
5860-
checksum = "05d30290541f2d4242a162bbda76b8f2d8b1ac59eab3568ed6f2327d52c9b2c4"
5843+
checksum = "38ba1d491ecacb085a2552025c10a675a6fddcbd03b1fc9b36c536010ce265d2"
58615844
dependencies = [
58625845
"leb128fmt",
5863-
"wasmparser 0.228.0",
5846+
"wasmparser 0.229.0",
58645847
]
58655848

58665849
[[package]]
58675850
name = "wasm-metadata"
5868-
version = "0.223.1"
5851+
version = "0.229.0"
58695852
source = "registry+https://github.com/rust-lang/crates.io-index"
5870-
checksum = "e2e7e37883181704d96b89dbd8f1291be13694c71cd0663aebb94b46d235a377"
5853+
checksum = "78fdb7d29a79191ab363dc90c1ddd3a1e880ffd5348d92d48482393a9e6c5f4d"
58715854
dependencies = [
58725855
"anyhow",
58735856
"indexmap",
5874-
"serde",
5875-
"serde_derive",
5876-
"serde_json",
5877-
"spdx",
5878-
"url",
5879-
"wasm-encoder 0.223.1",
5880-
"wasmparser 0.223.1",
5857+
"wasm-encoder 0.229.0",
5858+
"wasmparser 0.229.0",
58815859
]
58825860

58835861
[[package]]
@@ -5901,9 +5879,9 @@ dependencies = [
59015879

59025880
[[package]]
59035881
name = "wasmparser"
5904-
version = "0.223.1"
5882+
version = "0.229.0"
59055883
source = "registry+https://github.com/rust-lang/crates.io-index"
5906-
checksum = "664b980991ed9a8c834eb528a8979ab1109edcf52dc05dd5751e2cc3fb31035d"
5884+
checksum = "0cc3b1f053f5d41aa55640a1fa9b6d1b8a9e4418d118ce308d20e24ff3575a8c"
59075885
dependencies = [
59085886
"bitflags",
59095887
"hashbrown",
@@ -5912,35 +5890,24 @@ dependencies = [
59125890
"serde",
59135891
]
59145892

5915-
[[package]]
5916-
name = "wasmparser"
5917-
version = "0.228.0"
5918-
source = "registry+https://github.com/rust-lang/crates.io-index"
5919-
checksum = "4abf1132c1fdf747d56bbc1bb52152400c70f336870f968b85e89ea422198ae3"
5920-
dependencies = [
5921-
"bitflags",
5922-
"indexmap",
5923-
"semver",
5924-
]
5925-
59265893
[[package]]
59275894
name = "wast"
5928-
version = "228.0.0"
5895+
version = "229.0.0"
59295896
source = "registry+https://github.com/rust-lang/crates.io-index"
5930-
checksum = "9e5aae124478cb51439f6587f074a3a5e835afd22751c59a87b2e2a882727c97"
5897+
checksum = "63fcaff613c12225696bb163f79ca38ffb40e9300eff0ff4b8aa8b2f7eadf0d9"
59315898
dependencies = [
59325899
"bumpalo",
59335900
"leb128fmt",
59345901
"memchr",
59355902
"unicode-width 0.2.0",
5936-
"wasm-encoder 0.228.0",
5903+
"wasm-encoder 0.229.0",
59375904
]
59385905

59395906
[[package]]
59405907
name = "wat"
5941-
version = "1.228.0"
5908+
version = "1.229.0"
59425909
source = "registry+https://github.com/rust-lang/crates.io-index"
5943-
checksum = "7ec29c89a8d055df988de7236483bf569988ac3d6905899f6af5ef920f9385ad"
5910+
checksum = "4189bad08b70455a9e9e67dc126d2dcf91fac143a80f1046747a5dde6d4c33e0"
59445911
dependencies = [
59455912
"wast",
59465913
]
@@ -6399,9 +6366,9 @@ dependencies = [
63996366

64006367
[[package]]
64016368
name = "wit-component"
6402-
version = "0.223.1"
6369+
version = "0.229.0"
64036370
source = "registry+https://github.com/rust-lang/crates.io-index"
6404-
checksum = "3fc2fcc52a79f6f010a89c867e53e06d4227f86c58984add3e37f32b8e7af5f0"
6371+
checksum = "7f550067740e223bfe6c4878998e81cdbe2529dd9a793dc49248dd6613394e8b"
64056372
dependencies = [
64066373
"anyhow",
64076374
"bitflags",
@@ -6410,17 +6377,17 @@ dependencies = [
64106377
"serde",
64116378
"serde_derive",
64126379
"serde_json",
6413-
"wasm-encoder 0.223.1",
6380+
"wasm-encoder 0.229.0",
64146381
"wasm-metadata",
6415-
"wasmparser 0.223.1",
6382+
"wasmparser 0.229.0",
64166383
"wit-parser",
64176384
]
64186385

64196386
[[package]]
64206387
name = "wit-parser"
6421-
version = "0.223.1"
6388+
version = "0.229.0"
64226389
source = "registry+https://github.com/rust-lang/crates.io-index"
6423-
checksum = "263fde17f1fbe55a413f16eb59094bf751795c6da469a05c3d45ea6c77df6b40"
6390+
checksum = "459c6ba62bf511d6b5f2a845a2a736822e38059c1cfa0b644b467bbbfae4efa6"
64246391
dependencies = [
64256392
"anyhow",
64266393
"id-arena",
@@ -6431,7 +6398,7 @@ dependencies = [
64316398
"serde_derive",
64326399
"serde_json",
64336400
"unicode-xid",
6434-
"wasmparser 0.223.1",
6401+
"wasmparser 0.229.0",
64356402
]
64366403

64376404
[[package]]

INSTALL.md

+24-1
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,31 @@ See [the rustc-dev-guide for more info][sysllvm].
7575

7676
2. Configure the build settings:
7777

78+
If you're unsure which build configurations to use and need a good default, you
79+
can run the interactive `x.py setup` command. This will guide you through selecting
80+
a config profile, setting up the LSP, configuring a Git hook, etc.
81+
82+
With `configure` script, you can handle multiple configurations in a single
83+
command which is useful to create complex/advanced config files. For example:
84+
7885
```sh
79-
./configure
86+
./configure --build=aarch64-unknown-linux-gnu \
87+
--enable-full-tools \
88+
--enable-profiler \
89+
--enable-sanitizers \
90+
--enable-compiler-docs \
91+
--set target.aarch64-unknown-linux-gnu.linker=clang \
92+
--set target.aarch64-unknown-linux-gnu.ar=/rustroot/bin/llvm-ar \
93+
--set target.aarch64-unknown-linux-gnu.ranlib=/rustroot/bin/llvm-ranlib \
94+
--set llvm.link-shared=true \
95+
--set llvm.thin-lto=true \
96+
--set llvm.libzstd=true \
97+
--set llvm.ninja=false \
98+
--set rust.debug-assertions=false \
99+
--set rust.jemalloc \
100+
--set rust.use-lld=true \
101+
--set rust.lto=thin \
102+
--set rust.codegen-units=1
80103
```
81104

82105
If you plan to use `x.py install` to create an installation, you can either

bootstrap.example.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,7 @@
500500
# building without optimizations takes much longer than optimizing. Further, some platforms
501501
# fail to build without this optimization (c.f. #65352).
502502
# The valid options are:
503-
# true - Enable optimizations.
503+
# true - Enable optimizations (same as 3).
504504
# false - Disable optimizations.
505505
# 0 - Disable optimizations.
506506
# 1 - Basic optimizations.

compiler/rustc_ast/src/ast.rs

+1-13
Original file line numberDiff line numberDiff line change
@@ -1927,7 +1927,7 @@ impl AttrArgs {
19271927
}
19281928

19291929
/// Delimited arguments, as used in `#[attr()/[]/{}]` or `mac!()/[]/{}`.
1930-
#[derive(Clone, Encodable, Decodable, Debug)]
1930+
#[derive(Clone, Encodable, Decodable, Debug, HashStable_Generic)]
19311931
pub struct DelimArgs {
19321932
pub dspan: DelimSpan,
19331933
pub delim: Delimiter, // Note: `Delimiter::Invisible` never occurs
@@ -1942,18 +1942,6 @@ impl DelimArgs {
19421942
}
19431943
}
19441944

1945-
impl<CTX> HashStable<CTX> for DelimArgs
1946-
where
1947-
CTX: crate::HashStableContext,
1948-
{
1949-
fn hash_stable(&self, ctx: &mut CTX, hasher: &mut StableHasher) {
1950-
let DelimArgs { dspan, delim, tokens } = self;
1951-
dspan.hash_stable(ctx, hasher);
1952-
delim.hash_stable(ctx, hasher);
1953-
tokens.hash_stable(ctx, hasher);
1954-
}
1955-
}
1956-
19571945
/// Represents a macro definition.
19581946
#[derive(Clone, Encodable, Decodable, Debug, HashStable_Generic)]
19591947
pub struct MacroDef {

compiler/rustc_ast/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
77
// tidy-alphabetical-start
88
#![allow(internal_features)]
9+
#![cfg_attr(bootstrap, feature(let_chains))]
910
#![doc(
1011
html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/",
1112
test(attr(deny(warnings)))
@@ -14,7 +15,6 @@
1415
#![feature(associated_type_defaults)]
1516
#![feature(box_patterns)]
1617
#![feature(if_let_guard)]
17-
#![feature(let_chains)]
1818
#![feature(negative_impls)]
1919
#![feature(never_type)]
2020
#![feature(rustdoc_internals)]

compiler/rustc_ast_lowering/src/lib.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@
3232
3333
// tidy-alphabetical-start
3434
#![allow(internal_features)]
35+
#![cfg_attr(bootstrap, feature(let_chains))]
3536
#![doc(rust_logo)]
3637
#![feature(assert_matches)]
3738
#![feature(box_patterns)]
3839
#![feature(exact_size_is_empty)]
3940
#![feature(if_let_guard)]
40-
#![feature(let_chains)]
4141
#![feature(rustdoc_internals)]
4242
// tidy-alphabetical-end
4343

@@ -916,7 +916,7 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
916916
}
917917

918918
fn lower_delim_args(&self, args: &DelimArgs) -> DelimArgs {
919-
DelimArgs { dspan: args.dspan, delim: args.delim, tokens: args.tokens.clone() }
919+
args.clone()
920920
}
921921

922922
/// Lower an associated item constraint.

compiler/rustc_ast_passes/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
55
// tidy-alphabetical-start
66
#![allow(internal_features)]
7+
#![cfg_attr(bootstrap, feature(let_chains))]
78
#![doc(rust_logo)]
89
#![feature(box_patterns)]
910
#![feature(if_let_guard)]
1011
#![feature(iter_is_partitioned)]
11-
#![feature(let_chains)]
1212
#![feature(rustdoc_internals)]
1313
// tidy-alphabetical-end
1414

compiler/rustc_ast_pretty/src/pprust/state/expr.rs

+1
Original file line numberDiff line numberDiff line change
@@ -878,6 +878,7 @@ impl<'a> State<'a> {
878878
}
879879
}
880880
} else {
881+
self.end(); // Close the ibox for the pattern.
881882
self.word(",");
882883
}
883884
self.end(); // Close enclosing cbox.

compiler/rustc_attr_data_structures/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// tidy-alphabetical-start
22
#![allow(internal_features)]
3+
#![cfg_attr(bootstrap, feature(let_chains))]
34
#![doc(rust_logo)]
4-
#![feature(let_chains)]
55
#![feature(rustdoc_internals)]
66
// tidy-alphabetical-end
77

0 commit comments

Comments
 (0)