diff options
| -rw-r--r-- | src/librustc/middle/ty.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/librustc/middle/ty.rs b/src/librustc/middle/ty.rs index 8e99045cffb..2f694b382cc 100644 --- a/src/librustc/middle/ty.rs +++ b/src/librustc/middle/ty.rs @@ -2859,24 +2859,51 @@ impl TypeContents { } } +// NOTE(stage0): Remove impl after a snapshot +#[cfg(stage0)] impl ops::BitOr<TypeContents,TypeContents> for TypeContents { fn bitor(&self, other: &TypeContents) -> TypeContents { TypeContents {bits: self.bits | other.bits} } } +#[cfg(not(stage0))] // NOTE(stage0): Remove cfg after a snapshot +impl ops::BitOr<TypeContents,TypeContents> for TypeContents { + fn bitor(self, other: TypeContents) -> TypeContents { + TypeContents {bits: self.bits | other.bits} + } +} + +// NOTE(stage0): Remove impl after a snapshot +#[cfg(stage0)] impl ops::BitAnd<TypeContents,TypeContents> for TypeContents { fn bitand(&self, other: &TypeContents) -> TypeContents { TypeContents {bits: self.bits & other.bits} } } +#[cfg(not(stage0))] // NOTE(stage0): Remove cfg after a snapshot +impl ops::BitAnd<TypeContents, TypeContents> for TypeContents { + fn bitand(self, other: TypeContents) -> TypeContents { + TypeContents {bits: self.bits & other.bits} + } +} + +// NOTE(stage0): Remove impl after a snapshot +#[cfg(stage0)] impl ops::Sub<TypeContents,TypeContents> for TypeContents { fn sub(&self, other: &TypeContents) -> TypeContents { TypeContents {bits: self.bits & !other.bits} } } +#[cfg(not(stage0))] // NOTE(stage0): Remove cfg after a snapshot +impl ops::Sub<TypeContents, TypeContents> for TypeContents { + fn sub(self, other: TypeContents) -> TypeContents { + TypeContents {bits: self.bits & !other.bits} + } +} + impl fmt::Show for TypeContents { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { write!(f, "TypeContents({:b})", self.bits) |
