Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-ty/src/mir/eval/shim.rs')
-rw-r--r--crates/hir-ty/src/mir/eval/shim.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/crates/hir-ty/src/mir/eval/shim.rs b/crates/hir-ty/src/mir/eval/shim.rs
index 26ef95d264..90c52ee96f 100644
--- a/crates/hir-ty/src/mir/eval/shim.rs
+++ b/crates/hir-ty/src/mir/eval/shim.rs
@@ -5,6 +5,7 @@ use std::cmp::{self, Ordering};
use chalk_ir::TyKind;
use hir_def::{
+ CrateRootModuleId,
builtin_type::{BuiltinInt, BuiltinUint},
resolver::HasResolver,
};
@@ -153,7 +154,7 @@ impl Evaluator<'_> {
) -> Result<Option<FunctionId>> {
// `PanicFmt` is redirected to `ConstPanicFmt`
if let Some(LangItem::PanicFmt) = self.db.lang_attr(def.into()) {
- let resolver = self.db.crate_def_map(self.crate_id).crate_root().resolver(self.db);
+ let resolver = CrateRootModuleId::from(self.crate_id).resolver(self.db);
let Some(const_panic_fmt) =
LangItem::ConstPanicFmt.resolve_function(self.db, resolver.krate())
@@ -1120,7 +1121,7 @@ impl Evaluator<'_> {
// We don't call any drop glue yet, so there is nothing here
Ok(())
}
- "transmute" => {
+ "transmute" | "transmute_unchecked" => {
let [arg] = args else {
return Err(MirEvalError::InternalError(
"transmute arg is not provided".into(),