Skip to content

Commit 58a98a4

Browse files
committed
Upgrade Rust toolchain to 2025-07-04
Relevant upstream PRs: - rust-lang/rust#143214 (Remove let_chains unstable feature) - rust-lang/rust#143036 (Remove support for `dyn*` from the compiler) The latter was tracked as an unsupported feature in Kani, whereby we can resolve one of our own issues as well. Resolves: model-checking#4196 Resolves: model-checking#1784
1 parent 173594b commit 58a98a4

File tree

6 files changed

+1
-23
lines changed

6 files changed

+1
-23
lines changed

kani-compiler/src/codegen_cprover_gotoc/codegen/rvalue.rs

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -791,15 +791,6 @@ impl GotocCtx<'_> {
791791
e,
792792
t,
793793
) => self.codegen_misc_cast(e, *t),
794-
Rvalue::Cast(CastKind::DynStar, _, _) => {
795-
let ty = self.codegen_ty_stable(res_ty);
796-
self.codegen_unimplemented_expr(
797-
"CastKind::DynStar",
798-
ty,
799-
loc,
800-
"https://github.com/model-checking/kani/issues/1784",
801-
)
802-
}
803794
Rvalue::Cast(CastKind::PointerCoercion(k), e, t) => {
804795
self.codegen_pointer_cast(k, e, *t, loc)
805796
}

kani-compiler/src/kani_middle/transform/check_values.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ use crate::args::ExtraChecks;
1717
use crate::kani_middle::transform::body::{
1818
CheckType, InsertPosition, MutableBody, SourceInstruction,
1919
};
20-
use crate::kani_middle::transform::check_values::SourceOp::UnsupportedCheck;
2120
use crate::kani_middle::transform::{TransformPass, TransformationType};
2221
use crate::kani_queries::QueryDb;
2322
use rustc_middle::ty::{Const, TyCtxt};
@@ -640,12 +639,6 @@ impl MirVisitor for CheckValueVisitor<'_, '_> {
640639
})
641640
}
642641
}
643-
// `DynStar` is not currently supported in Kani.
644-
// TODO: https://github.com/model-checking/kani/issues/1784
645-
CastKind::DynStar => self.push_target(UnsupportedCheck {
646-
check: "Dyn*".to_string(),
647-
ty: (rvalue.ty(self.locals).unwrap()),
648-
}),
649642
CastKind::PointerExposeAddress
650643
| CastKind::PointerWithExposedProvenance
651644
| CastKind::PointerCoercion(_)

kani-compiler/src/kani_middle/transform/internal_mir.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,10 +139,6 @@ impl RustcInternalMir for CastKind {
139139
CoercionSource::Implicit,
140140
)
141141
}
142-
CastKind::DynStar => rustc_middle::mir::CastKind::PointerCoercion(
143-
rustc_ty::adjustment::PointerCoercion::DynStar,
144-
CoercionSource::Implicit,
145-
),
146142
CastKind::IntToInt => rustc_middle::mir::CastKind::IntToInt,
147143
CastKind::FloatToInt => rustc_middle::mir::CastKind::FloatToInt,
148144
CastKind::FloatToFloat => rustc_middle::mir::CastKind::FloatToFloat,

kani-compiler/src/main.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
#![feature(rustc_private)]
1313
#![feature(more_qualified_paths)]
1414
#![feature(iter_intersperse)]
15-
#![feature(let_chains)]
1615
#![feature(f128)]
1716
#![feature(f16)]
1817
#![feature(non_exhaustive_omitted_patterns_lint)]

kani-driver/src/main.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// Copyright Kani Contributors
22
// SPDX-License-Identifier: Apache-2.0 OR MIT
3-
#![feature(let_chains)]
43
use std::ffi::OsString;
54
use std::process::ExitCode;
65

rust-toolchain.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
# SPDX-License-Identifier: Apache-2.0 OR MIT
33

44
[toolchain]
5-
channel = "nightly-2025-07-02"
5+
channel = "nightly-2025-07-04"
66
components = ["llvm-tools", "rustc-dev", "rust-src", "rustfmt"]

0 commit comments

Comments
 (0)