pub fn perform_orphan_check<I: Interner>(
    db: &dyn RustIrDatabase<I>,
    solver: &mut dyn Solver<I>,
    impl_id: ImplId<I>
) -> Result<(), CoherenceError<I>>