@@ -241,22 +241,30 @@ bitflags! {
241
241
/// Basically anything but `ReLateBound` and `ReErased`.
242
242
const HAS_FREE_REGIONS = 1 << 14 ;
243
243
244
- /// Does this have any `ReLateBound` regions? Used to check
245
- /// if a global bound is safe to evaluate.
244
+ /// Does this have any `ReLateBound` regions?
246
245
const HAS_RE_LATE_BOUND = 1 << 15 ;
246
+ /// Does this have any `Bound` types?
247
+ const HAS_TY_LATE_BOUND = 1 << 16 ;
248
+ /// Does this have any `ConstKind::Bound` consts?
249
+ const HAS_CT_LATE_BOUND = 1 << 17 ;
250
+ /// Does this have any bound variables?
251
+ /// Used to check if a global bound is safe to evaluate.
252
+ const HAS_LATE_BOUND = TypeFlags :: HAS_RE_LATE_BOUND . bits
253
+ | TypeFlags :: HAS_TY_LATE_BOUND . bits
254
+ | TypeFlags :: HAS_CT_LATE_BOUND . bits;
247
255
248
256
/// Does this have any `ReErased` regions?
249
- const HAS_RE_ERASED = 1 << 16 ;
257
+ const HAS_RE_ERASED = 1 << 18 ;
250
258
251
259
/// Does this value have parameters/placeholders/inference variables which could be
252
260
/// replaced later, in a way that would change the results of `impl` specialization?
253
- const STILL_FURTHER_SPECIALIZABLE = 1 << 17 ;
261
+ const STILL_FURTHER_SPECIALIZABLE = 1 << 19 ;
254
262
255
263
/// Does this value have `InferTy::FreshTy/FreshIntTy/FreshFloatTy`?
256
- const HAS_TY_FRESH = 1 << 18 ;
264
+ const HAS_TY_FRESH = 1 << 20 ;
257
265
258
266
/// Does this value have `InferConst::Fresh`?
259
- const HAS_CT_FRESH = 1 << 19 ;
267
+ const HAS_CT_FRESH = 1 << 21 ;
260
268
}
261
269
}
262
270
0 commit comments