Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 8460ca8

Browse files
committed
Auto merge of #109335 - Mark-Simulacrum:stable-next, r=Mark-Simulacrum
[stable] 1.68.1 release This packages up a set of release notes, version bump, and backports of: * Don't eagerly convert principal to string #108162 * Revert "enable ThinLTO for rustc on x86_64-pc-windows-msvc dist builds" #109094 * Create dirs for build_triple #109111 * Fix linker detection for clang with prefix #109156 * ci: use apt install --download-only for solaris debs #108951 The last of those is not yet stable-accepted but I expect it to be, we will drop it and rebuild artifacts if we don't actually approve it. r? `@Mark-Simulacrum`
2 parents 2c8cc34 + 51bdb0f commit 8460ca8

File tree

11 files changed

+46
-14
lines changed

11 files changed

+46
-14
lines changed

‎.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -438,7 +438,7 @@ jobs:
438438
os: windows-latest-xl
439439
- name: dist-x86_64-msvc
440440
env:
441-
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --host=x86_64-pc-windows-msvc --target=x86_64-pc-windows-msvc --enable-full-tools --enable-profiler --set rust.lto=thin"
441+
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --host=x86_64-pc-windows-msvc --target=x86_64-pc-windows-msvc --enable-full-tools --enable-profiler"
442442
SCRIPT: PGO_HOST=x86_64-pc-windows-msvc src/ci/pgo.sh python x.py dist bootstrap --include-default-paths
443443
DIST_REQUIRE_ALL_TOOLS: 1
444444
os: windows-latest-xl

‎RELEASES.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
Version 1.68.1 (2023年03月23日)
2+
===========================
3+
4+
- [Fix miscompilation in produced Windows MSVC artifacts](https://github.com/rust-lang/rust/pull/109094)
5+
This was introduced by enabling ThinLTO for the distributed rustc which led
6+
to miscompilations in the resulting binary. Currently this is believed to be
7+
limited to the -Zdylib-lto flag used for rustc compilation, rather than a
8+
general bug in ThinLTO, so only rustc artifacts should be affected.
9+
- [Fix --enable-local-rust builds](https://github.com/rust-lang/rust/pull/109111/)
10+
- [Treat `$prefix-clang` as `clang` in linker detection code](https://github.com/rust-lang/rust/pull/109156)
11+
- [Fix panic in compiler code](https://github.com/rust-lang/rust/pull/108162)
12+
113
Version 1.68.0 (2023年03月09日)
214
==========================
315

‎compiler/rustc_codegen_ssa/src/back/link.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1237,15 +1237,17 @@ pub fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
12371237
.and_then(|(lhs, rhs)| rhs.chars().all(char::is_numeric).then_some(lhs))
12381238
.unwrap_or(stem);
12391239

1240-
// GCC can have an optional target prefix.
1240+
// GCC/Clang can have an optional target prefix.
12411241
let flavor = if stem == "emcc" {
12421242
LinkerFlavor::EmCc
12431243
} else if stem == "gcc"
12441244
|| stem.ends_with("-gcc")
12451245
|| stem == "g++"
12461246
|| stem.ends_with("-g++")
12471247
|| stem == "clang"
1248+
|| stem.ends_with("-clang")
12481249
|| stem == "clang++"
1250+
|| stem.ends_with("-clang++")
12491251
{
12501252
LinkerFlavor::from_cli(LinkerFlavorCli::Gcc, &sess.target)
12511253
} else if stem == "wasm-ld" || stem.ends_with("-wasm-ld") {

‎compiler/rustc_lint/src/deref_into_dyn_supertrait.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ impl<'tcx> LateLintPass<'tcx> for DerefIntoDynSupertrait {
7878
});
7979
cx.emit_spanned_lint(DEREF_INTO_DYN_SUPERTRAIT, cx.tcx.def_span(item.owner_id.def_id), SupertraitAsDerefTarget {
8080
t,
81-
target_principal: target_principal.to_string(),
81+
target_principal,
8282
label,
8383
});
8484
}

‎compiler/rustc_lint/src/lints.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use rustc_errors::{
88
};
99
use rustc_hir::def_id::DefId;
1010
use rustc_macros::{LintDiagnostic, Subdiagnostic};
11-
use rustc_middle::ty::{Predicate, Ty, TyCtxt};
11+
use rustc_middle::ty::{PolyExistentialTraitRef,Predicate, Ty, TyCtxt};
1212
use rustc_session::parse::ParseSess;
1313
use rustc_span::{edition::Edition, sym, symbol::Ident, Span, Symbol};
1414

@@ -556,8 +556,7 @@ pub struct BuiltinUnexpectedCliConfigValue {
556556
#[diag(lint_supertrait_as_deref_target)]
557557
pub struct SupertraitAsDerefTarget<'a> {
558558
pub t: Ty<'a>,
559-
pub target_principal: String,
560-
// pub target_principal: Binder<'a, ExistentialTraitRef<'b>>,
559+
pub target_principal: PolyExistentialTraitRef<'a>,
561560
#[subdiagnostic]
562561
pub label: Option<SupertraitAsDerefTargetLabel>,
563562
}

‎compiler/rustc_middle/src/ty/sty.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -931,6 +931,12 @@ impl<'tcx> PolyExistentialTraitRef<'tcx> {
931931
}
932932
}
933933

934+
impl rustc_errors::IntoDiagnosticArg for PolyExistentialTraitRef<'_> {
935+
fn into_diagnostic_arg(self) -> rustc_errors::DiagnosticArgValue<'static> {
936+
self.to_string().into_diagnostic_arg()
937+
}
938+
}
939+
934940
#[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Debug, TyEncodable, TyDecodable)]
935941
#[derive(HashStable)]
936942
pub enum BoundVariableKind {

‎src/bootstrap/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -593,6 +593,7 @@ impl Build {
593593

594594
// Make a symbolic link so we can use a consistent directory in the documentation.
595595
let build_triple = build.out.join(&build.build.triple);
596+
t!(fs::create_dir_all(&build_triple));
596597
let host = build.out.join("host");
597598
if let Err(e) = symlink_dir(&build.config, &build_triple, &host) {
598599
if e.kind() != ErrorKind::AlreadyExists {

‎src/ci/docker/host-x86_64/dist-various-2/build-solaris-toolchain.sh

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,24 +32,22 @@ cd solaris
3232

3333
dpkg --add-architecture $APT_ARCH
3434
apt-get update
35-
apt-get download $(apt-cache depends --recurse --no-replaces \
35+
apt-get install -y --download-only \
3636
libc:$APT_ARCH \
37-
liblgrp-dev:$APT_ARCH \
3837
liblgrp:$APT_ARCH \
3938
libm-dev:$APT_ARCH \
4039
libpthread:$APT_ARCH \
4140
libresolv:$APT_ARCH \
4241
librt:$APT_ARCH \
43-
libsendfile-dev:$APT_ARCH \
4442
libsendfile:$APT_ARCH \
4543
libsocket:$APT_ARCH \
4644
system-crt:$APT_ARCH \
47-
system-header:$APT_ARCH \
48-
| grep "^\w")
45+
system-header:$APT_ARCH
4946

50-
for deb in *$APT_ARCH.deb; do
47+
for deb in /var/cache/apt/archives/*$APT_ARCH.deb; do
5148
dpkg -x $deb .
5249
done
50+
apt-get clean
5351

5452
# The -dev packages are not available from the apt repository we're using.
5553
# However, those packages are just symlinks from *.so to *.so.<version>.

‎src/ci/github-actions/ci.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -675,7 +675,6 @@ jobs:
675675
--target=x86_64-pc-windows-msvc
676676
--enable-full-tools
677677
--enable-profiler
678-
--set rust.lto=thin
679678
SCRIPT: PGO_HOST=x86_64-pc-windows-msvc src/ci/pgo.sh python x.py dist bootstrap --include-default-paths
680679
DIST_REQUIRE_ALL_TOOLS: 1
681680
<<: *job-windows-xl

‎src/version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.68.0
1+
1.68.1

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /