Only expand types that contain projections

This commit is contained in:
Tyler Mandry 2019-10-10 16:38:53 -07:00
parent fe09bb518d
commit 802554f427

View file

@ -745,8 +745,10 @@ impl<'tcx> TyCtxt<'tcx> {
fn fold_ty(&mut self, t: Ty<'tcx>) -> Ty<'tcx> {
if let ty::Opaque(def_id, substs) = t.kind {
self.expand_opaque_ty(def_id, substs).unwrap_or(t)
} else {
} else if t.has_projections() {
t.super_fold_with(self)
} else {
t
}
}
}