@@ -423,57 +423,54 @@ pub struct CReaderCacheKey {
423
423
bitflags ! {
424
424
pub struct TypeFlags : u32 {
425
425
const HAS_PARAMS = 1 << 0 ;
426
- const HAS_SELF = 1 << 1 ;
427
- const HAS_TY_INFER = 1 << 2 ;
428
- const HAS_RE_INFER = 1 << 3 ;
429
- const HAS_RE_SKOL = 1 << 4 ;
426
+ const HAS_TY_INFER = 1 << 1 ;
427
+ const HAS_RE_INFER = 1 << 2 ;
428
+ const HAS_RE_SKOL = 1 << 3 ;
430
429
431
430
/// Does this have any `ReEarlyBound` regions? Used to
432
431
/// determine whether substitition is required, since those
433
432
/// represent regions that are bound in a `ty::Generics` and
434
433
/// hence may be substituted.
435
- const HAS_RE_EARLY_BOUND = 1 << 5 ;
434
+ const HAS_RE_EARLY_BOUND = 1 << 4 ;
436
435
437
436
/// Does this have any region that "appears free" in the type?
438
437
/// Basically anything but `ReLateBound` and `ReErased`.
439
- const HAS_FREE_REGIONS = 1 << 6 ;
438
+ const HAS_FREE_REGIONS = 1 << 5 ;
440
439
441
440
/// Is an error type reachable?
442
- const HAS_TY_ERR = 1 << 7 ;
443
- const HAS_PROJECTION = 1 << 8 ;
441
+ const HAS_TY_ERR = 1 << 6 ;
442
+ const HAS_PROJECTION = 1 << 7 ;
444
443
445
444
// FIXME: Rename this to the actual property since it's used for generators too
446
- const HAS_TY_CLOSURE = 1 << 9 ;
445
+ const HAS_TY_CLOSURE = 1 << 8 ;
447
446
448
447
// true if there are "names" of types and regions and so forth
449
448
// that are local to a particular fn
450
- const HAS_FREE_LOCAL_NAMES = 1 << 10 ;
449
+ const HAS_FREE_LOCAL_NAMES = 1 << 9 ;
451
450
452
451
// Present if the type belongs in a local type context.
453
452
// Only set for Infer other than Fresh.
454
- const KEEP_IN_LOCAL_TCX = 1 << 11 ;
453
+ const KEEP_IN_LOCAL_TCX = 1 << 10 ;
455
454
456
455
// Is there a projection that does not involve a bound region?
457
456
// Currently we can't normalize projections w/ bound regions.
458
- const HAS_NORMALIZABLE_PROJECTION = 1 << 12 ;
457
+ const HAS_NORMALIZABLE_PROJECTION = 1 << 11 ;
459
458
460
459
// Set if this includes a "canonical" type or region var --
461
460
// ought to be true only for the results of canonicalization.
462
- const HAS_CANONICAL_VARS = 1 << 13 ;
461
+ const HAS_CANONICAL_VARS = 1 << 12 ;
463
462
464
463
/// Does this have any `ReLateBound` regions? Used to check
465
464
/// if a global bound is safe to evaluate.
466
- const HAS_RE_LATE_BOUND = 1 << 14 ;
465
+ const HAS_RE_LATE_BOUND = 1 << 13 ;
467
466
468
467
const NEEDS_SUBST = TypeFlags :: HAS_PARAMS . bits |
469
- TypeFlags :: HAS_SELF . bits |
470
468
TypeFlags :: HAS_RE_EARLY_BOUND . bits;
471
469
472
470
// Flags representing the nominal content of a type,
473
471
// computed by FlagsComputation. If you add a new nominal
474
472
// flag, it should be added here too.
475
473
const NOMINAL_FLAGS = TypeFlags :: HAS_PARAMS . bits |
476
- TypeFlags :: HAS_SELF . bits |
477
474
TypeFlags :: HAS_TY_INFER . bits |
478
475
TypeFlags :: HAS_RE_INFER . bits |
479
476
TypeFlags :: HAS_RE_SKOL . bits |
@@ -1632,7 +1629,6 @@ impl<'tcx> ParamEnv<'tcx> {
1632
1629
if value. has_skol ( )
1633
1630
|| value. needs_infer ( )
1634
1631
|| value. has_param_types ( )
1635
- || value. has_self_ty ( )
1636
1632
{
1637
1633
ParamEnvAnd {
1638
1634
param_env : self ,
0 commit comments