diff options
| -rw-r--r-- | src/librustc/ty/util.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/librustc/ty/util.rs b/src/librustc/ty/util.rs index 35bd42fd744..6a94ca6b8c7 100644 --- a/src/librustc/ty/util.rs +++ b/src/librustc/ty/util.rs @@ -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 } } } |
