From 70b446105cef76fd5da0a8d87890adbc9f00787a Mon Sep 17 00:00:00 2001 From: Brooks Prumo Date: Tue, 21 Jun 2022 10:39:10 -0500 Subject: [PATCH] Remove auto traits from ICE work-around --- runtime/src/builtins.rs | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/runtime/src/builtins.rs b/runtime/src/builtins.rs index dca956be84971c..b08c8a9edc42e5 100644 --- a/runtime/src/builtins.rs +++ b/runtime/src/builtins.rs @@ -91,24 +91,6 @@ impl AutoTraitBreakSendSync for InnerBuiltinFeatureTransition {} #[derive(AbiExample, Clone, Debug)] pub struct BuiltinFeatureTransition(InnerBuiltinFeatureTransition); -// https://github.com/solana-labs/solana/pull/23233 added `BuiltinFeatureTransition` -// to `Bank` which triggers https://github.com/rust-lang/rust/issues/92987 while -// attempting to resolve `Sync` on `BankRc` in `AccountsBackgroundService::new` ala, -// -// query stack during panic: -// #0 [evaluate_obligation] evaluating trait selection obligation `bank::BankRc: core::marker::Sync` -// #1 [typeck] type-checking `accounts_background_service::::new` -// #2 [typeck_item_bodies] type-checking all item bodies -// #3 [analysis] running analysis passes on this crate -// end of query stack -// -// Yoloing a `Sync` onto it avoids the auto trait evaluation and thus the ICE. -// -// We should remove this when upgrading to Rust 1.60.0, where the bug has been -// fixed by https://github.com/rust-lang/rust/pull/93064 -unsafe impl Send for BuiltinFeatureTransition {} -unsafe impl Sync for BuiltinFeatureTransition {} - impl BuiltinFeatureTransition { pub fn to_action( &self,