diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2019-10-28 21:35:59 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-10-28 21:35:59 +0100 |
| commit | 216e50d904deab0ecf1fa112096e70bc309c3f16 (patch) | |
| tree | 7d8a6d8ade04c030ea09237e3beb8093862cd305 | |
| parent | 2fe6f22dea25dd7498b2acb0f0156563644a13f2 (diff) | |
| parent | 6661db006a85bdb1530716da26fb5b2829643f2a (diff) | |
| download | rust-216e50d904deab0ecf1fa112096e70bc309c3f16.tar.gz rust-216e50d904deab0ecf1fa112096e70bc309c3f16.zip | |
Rollup merge of #65643 - varkor:remove-free-regions-from-const-placeholder, r=eddyb
Correct handling of type flags with `ConstValue::Placeholder` This fixes a mistake, but not https://github.com/rust-lang/rust/issues/65623. r? @eddyb
| -rw-r--r-- | src/librustc/ty/flags.rs | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/librustc/ty/flags.rs b/src/librustc/ty/flags.rs index cb1fb4f685d..d4b7f37b120 100644 --- a/src/librustc/ty/flags.rs +++ b/src/librustc/ty/flags.rs @@ -114,6 +114,7 @@ impl FlagComputation { } &ty::Placeholder(..) => { + self.add_flags(TypeFlags::HAS_FREE_LOCAL_NAMES); self.add_flags(TypeFlags::HAS_TY_PLACEHOLDER); } @@ -123,8 +124,7 @@ impl FlagComputation { match infer { ty::FreshTy(_) | ty::FreshIntTy(_) | - ty::FreshFloatTy(_) => { - } + ty::FreshFloatTy(_) => {} ty::TyVar(_) | ty::IntVar(_) | @@ -245,14 +245,16 @@ impl FlagComputation { } ConstValue::Bound(debruijn, _) => self.add_binder(debruijn), ConstValue::Param(_) => { - self.add_flags(TypeFlags::HAS_FREE_LOCAL_NAMES | TypeFlags::HAS_PARAMS); + self.add_flags(TypeFlags::HAS_FREE_LOCAL_NAMES); + self.add_flags(TypeFlags::HAS_PARAMS); } ConstValue::Placeholder(_) => { - self.add_flags(TypeFlags::HAS_FREE_REGIONS | TypeFlags::HAS_CT_PLACEHOLDER); + self.add_flags(TypeFlags::HAS_FREE_LOCAL_NAMES); + self.add_flags(TypeFlags::HAS_CT_PLACEHOLDER); } - ConstValue::Scalar(_) => { } - ConstValue::Slice { data: _, start: _, end: _ } => { } - ConstValue::ByRef { alloc: _, offset: _ } => { } + ConstValue::Scalar(_) => {} + ConstValue::Slice { .. } => {} + ConstValue::ByRef { .. } => {} } } |
