diff --git a/components/salsa-macro-rules/src/setup_input_struct.rs b/components/salsa-macro-rules/src/setup_input_struct.rs index 92c4bcb6..c9e94df6 100644 --- a/components/salsa-macro-rules/src/setup_input_struct.rs +++ b/components/salsa-macro-rules/src/setup_input_struct.rs @@ -137,8 +137,11 @@ macro_rules! setup_input_struct { // FIXME(rust-lang/rust#65991): The `db` argument *should* have the type `dyn Database` $Db: ?Sized + $zalsa::Database, { - let runtime = db.runtime(); - let fields = $Configuration::ingredient(db.as_salsa_database()).field(runtime, self, $field_index); + let fields = $Configuration::ingredient(db.as_salsa_database()).field( + db.as_salsa_database(), + self, + $field_index, + ); $zalsa::maybe_clone!( $field_option, $field_ty, diff --git a/src/input.rs b/src/input.rs index e3246d7c..cd6e5083 100644 --- a/src/input.rs +++ b/src/input.rs @@ -150,7 +150,7 @@ impl IngredientImpl { /// The caller is responible for selecting the appropriate element. pub fn field<'db>( &'db self, - runtime: &'db Runtime, + db: &'db dyn crate::Database, id: C::Struct, field_index: usize, ) -> &'db C::Fields { @@ -158,7 +158,7 @@ impl IngredientImpl { let id = id.as_id(); let value = self.struct_map.get(id); let stamp = &value.stamps[field_index]; - runtime.report_tracked_read( + db.runtime().report_tracked_read( DependencyIndex { ingredient_index: field_ingredient_index, key_index: Some(id),