don't set HAS_INFER for fresh types

This commit is contained in:
Bastian Kauschke 2020-04-06 21:32:08 +02:00
parent 485c5fb6e1
commit 969c145f96
2 changed files with 6 additions and 3 deletions

1
src/doc/rustc-guide Submodule

@ -0,0 +1 @@
Subproject commit 5bd60bc51efaec04e69e2e18b59678e2af066433

View file

@ -109,12 +109,12 @@ impl FlagComputation {
}
&ty::Infer(infer) => {
self.add_flags(TypeFlags::HAS_TY_INFER);
self.add_flags(TypeFlags::STILL_FURTHER_SPECIALIZABLE);
match infer {
ty::FreshTy(_) | ty::FreshIntTy(_) | ty::FreshFloatTy(_) => {}
ty::TyVar(_) | ty::IntVar(_) | ty::FloatVar(_) => {
self.add_flags(TypeFlags::HAS_TY_INFER);
self.add_flags(TypeFlags::KEEP_IN_LOCAL_TCX)
}
}
@ -221,11 +221,13 @@ impl FlagComputation {
self.add_flags(TypeFlags::HAS_CT_PROJECTION);
}
ty::ConstKind::Infer(infer) => {
self.add_flags(TypeFlags::HAS_CT_INFER);
self.add_flags(TypeFlags::STILL_FURTHER_SPECIALIZABLE);
match infer {
InferConst::Fresh(_) => {}
InferConst::Var(_) => self.add_flags(TypeFlags::KEEP_IN_LOCAL_TCX),
InferConst::Var(_) => {
self.add_flags(TypeFlags::HAS_CT_INFER);
self.add_flags(TypeFlags::KEEP_IN_LOCAL_TCX)
}
}
}
ty::ConstKind::Bound(debruijn, _) => {