about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorkennytm <kennytm@gmail.com>2018-12-01 01:06:08 +0800
committerkennytm <kennytm@gmail.com>2018-12-01 02:03:54 +0800
commit42bac05d7201243dcca5b31b38d75f5150f36364 (patch)
tree4a5b9ddf74b073f285107bc3f4af66ac7363084c /src
parentddc7ef2d07f20f5bfabb8464f116802ef5ebde58 (diff)
parenta0fec9488ed6f1d7b751f7e45b9919f908b560a1 (diff)
downloadrust-42bac05d7201243dcca5b31b38d75f5150f36364.tar.gz
rust-42bac05d7201243dcca5b31b38d75f5150f36364.zip
Rollup merge of #56364 - dlrobertson:fix_55903, r=oli-obk
Fix panic with outlives in existential type

Don't panic in determining the privacy of a type if a lifetime outlives
generic exists in an existential type.

r? @oli-obk

Fixes: #55903
Diffstat (limited to 'src')
-rw-r--r--src/librustc_privacy/lib.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/librustc_privacy/lib.rs b/src/librustc_privacy/lib.rs
index fbd6f6edd31..6d9abbf5af2 100644
--- a/src/librustc_privacy/lib.rs
+++ b/src/librustc_privacy/lib.rs
@@ -969,7 +969,7 @@ impl<'a, 'tcx> TypeVisitor<'tcx> for TypePrivacyVisitor<'a, 'tcx> {
                             Some(poly_projection_predicate.skip_binder()
                                                           .projection_ty.trait_ref(self.tcx))
                         }
-                        ty::Predicate::TypeOutlives(..) => None,
+                        ty::Predicate::TypeOutlives(..) | ty::Predicate::RegionOutlives(..) => None,
                         _ => bug!("unexpected predicate: {:?}", predicate),
                     };
                     if let Some(trait_ref) = trait_ref {