fn validate_coerce_shared_fields<'tcx>(
infcx: &InferCtxt<'tcx>,
impl_did: LocalDefId,
param_env: ParamEnv<'tcx>,
coerce_shared_trait: DefId,
trait_name: &'static str,
span: Span,
diagnostic_context: CoerceSharedDiagnosticContext,
source_def: AdtDef<'tcx>,
source_args: GenericArgsRef<'tcx>,
target_def: AdtDef<'tcx>,
target_args: GenericArgsRef<'tcx>,
) -> Result<(), ErrorGuaranteed>