diff options
| author | mark <markm@cs.wisc.edu> | 2020-04-06 21:22:36 -0500 |
|---|---|---|
| committer | mark <markm@cs.wisc.edu> | 2020-04-07 22:47:26 -0500 |
| commit | a38eae59424c235178e11e880452af178ecbc6bd (patch) | |
| tree | 7a749abb462d26a74b1f695258c51b65c234bc69 | |
| parent | 4fe09f282b3f75e95346374434af78bf50ed13b6 (diff) | |
| download | rust-a38eae59424c235178e11e880452af178ecbc6bd.tar.gz rust-a38eae59424c235178e11e880452af178ecbc6bd.zip | |
fix ice with trait obj dummy self
| -rw-r--r-- | src/librustc_typeck/variance/constraints.rs | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/librustc_typeck/variance/constraints.rs b/src/librustc_typeck/variance/constraints.rs index 9df1311b2b5..afa6e49a05c 100644 --- a/src/librustc_typeck/variance/constraints.rs +++ b/src/librustc_typeck/variance/constraints.rs @@ -315,11 +315,9 @@ impl<'a, 'tcx> ConstraintContext<'a, 'tcx> { self.add_constraints_from_region(current, r, contra); if let Some(poly_trait_ref) = data.principal() { - let poly_trait_ref = poly_trait_ref - .with_self_ty(self.tcx(), self.tcx().types.trait_object_dummy_self); - self.add_constraints_from_trait_ref( + self.add_constraints_from_invariant_substs( current, - *poly_trait_ref.skip_binder(), + poly_trait_ref.skip_binder().substs, variance, ); } |
