pub(crate) fn emit_to_writer<'files, F: Files<'files> + ?Sized>( writer: &mut impl ErrorWrite, config: &Config, files: &'files F, diagnostic: &Diagnostic<F::FileId>, ) -> Result<(), Error>