From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id E478815800F for ; Sat, 28 Jan 2023 19:34:33 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E781DE0903; Sat, 28 Jan 2023 19:34:32 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id CF561E0903 for ; Sat, 28 Jan 2023 19:34:32 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id E0B72340EAF for ; Sat, 28 Jan 2023 19:34:31 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 6DEF188C for ; Sat, 28 Jan 2023 19:34:30 +0000 (UTC) From: "Georgy Yakovlev" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Georgy Yakovlev" Message-ID: <1674934433.f666b359a91dfc9af71e72482a22619c0d726c14.gyakovlev@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/rust/, dev-lang/rust/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-lang/rust/files/1.67.0-bootstrap.patch dev-lang/rust/rust-1.67.0.ebuild X-VCS-Directories: dev-lang/rust/ dev-lang/rust/files/ X-VCS-Committer: gyakovlev X-VCS-Committer-Name: Georgy Yakovlev X-VCS-Revision: f666b359a91dfc9af71e72482a22619c0d726c14 X-VCS-Branch: master Date: Sat, 28 Jan 2023 19:34:30 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 43dc4382-dee7-45a8-926d-918982311fe5 X-Archives-Hash: 7b9f05d12111029d00acc2ee99534873 commit: f666b359a91dfc9af71e72482a22619c0d726c14 Author: Georgy Yakovlev gentoo org> AuthorDate: Sat Jan 28 19:29:26 2023 +0000 Commit: Georgy Yakovlev gentoo org> CommitDate: Sat Jan 28 19:33:53 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f666b359 dev-lang/rust: fix 1.67.0 selfbootstrap Closes: https://bugs.gentoo.org/892369 Signed-off-by: Georgy Yakovlev gentoo.org> dev-lang/rust/files/1.67.0-bootstrap.patch | 38 ++++++++++++++++++++++++++++++ dev-lang/rust/rust-1.67.0.ebuild | 1 + 2 files changed, 39 insertions(+) diff --git a/dev-lang/rust/files/1.67.0-bootstrap.patch b/dev-lang/rust/files/1.67.0-bootstrap.patch new file mode 100644 index 000000000000..eb160661a2c2 --- /dev/null +++ b/dev-lang/rust/files/1.67.0-bootstrap.patch @@ -0,0 +1,38 @@ +From 675fa0b3dd5fe14b43ad5b7862f4528df7322468 Mon Sep 17 00:00:00 2001 +From: Michael Goulet +Date: Mon, 12 Dec 2022 18:29:33 +0000 +Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=A8=20fix=20unsoundness=20in=20bootstr?= + =?UTF-8?q?ap=20cache=20code?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +--- + src/bootstrap/cache.rs | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/bootstrap/cache.rs b/src/bootstrap/cache.rs +index be5c9bb078808..05f25af68ea8f 100644 +--- a/src/bootstrap/cache.rs ++++ b/src/bootstrap/cache.rs +@@ -89,16 +89,16 @@ impl Hash for Interned { + + impl Deref for Interned { + type Target = T::Target; +- fn deref(&self) -> &'static Self::Target { ++ fn deref(&self) -> &Self::Target { + let l = T::intern_cache().lock().unwrap(); +- unsafe { mem::transmute::<&Self::Target, &'static Self::Target>(l.get(*self)) } ++ unsafe { mem::transmute::<&Self::Target, &Self::Target>(l.get(*self)) } + } + } + + impl, U: ?Sized> AsRef for Interned { +- fn as_ref(&self) -> &'static U { ++ fn as_ref(&self) -> &U { + let l = T::intern_cache().lock().unwrap(); +- unsafe { mem::transmute::<&U, &'static U>(l.get(*self).as_ref()) } ++ unsafe { mem::transmute::<&U, &U>(l.get(*self).as_ref()) } + } + } + diff --git a/dev-lang/rust/rust-1.67.0.ebuild b/dev-lang/rust/rust-1.67.0.ebuild index c534fb40bb83..095c3d5689e0 100644 --- a/dev-lang/rust/rust-1.67.0.ebuild +++ b/dev-lang/rust/rust-1.67.0.ebuild @@ -163,6 +163,7 @@ VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/rust.asc PATCHES=( "${FILESDIR}"/1.65.0-ignore-broken-and-non-applicable-tests.patch "${FILESDIR}"/1.62.1-musl-dynamic-linking.patch + "${FILESDIR}"/1.67.0-bootstrap.patch ) S="${WORKDIR}/${MY_P}-src"