about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-12-15 00:07:35 +0000
committerbors <bors@rust-lang.org>2014-12-15 00:07:35 +0000
commit126db549b038c84269a1e4fe46f051b2c15d6970 (patch)
treed3c1c5963bf00aa458905b01ce49467fabf1b3de
parent6085a71623b0d4cb5042fae1432760a8a6d87c32 (diff)
parent319c379bac07c6213ac4de817be0dac202a249f8 (diff)
downloadrust-126db549b038c84269a1e4fe46f051b2c15d6970.tar.gz
rust-126db549b038c84269a1e4fe46f051b2c15d6970.zip
auto merge of #19742 : vhbit/rust/copy-for-bitflags, r=alexcrichton
-rw-r--r--src/librustc/middle/resolve.rs2
-rw-r--r--src/librustc/middle/ty.rs2
-rw-r--r--src/librustc_llvm/lib.rs1
-rw-r--r--src/libstd/bitflags.rs10
-rw-r--r--src/libstd/io/mod.rs1
-rw-r--r--src/libsyntax/parse/parser.rs1
6 files changed, 1 insertions, 16 deletions
diff --git a/src/librustc/middle/resolve.rs b/src/librustc/middle/resolve.rs
index c6fdd845ea7..30bad840e17 100644
--- a/src/librustc/middle/resolve.rs
+++ b/src/librustc/middle/resolve.rs
@@ -635,8 +635,6 @@ bitflags! {
     }
 }
 
-impl Copy for DefModifiers {}
-
 // Records a possibly-private type definition.
 #[deriving(Clone)]
 struct TypeNsDef {
diff --git a/src/librustc/middle/ty.rs b/src/librustc/middle/ty.rs
index d6fd3d9a943..9e7316a75b9 100644
--- a/src/librustc/middle/ty.rs
+++ b/src/librustc/middle/ty.rs
@@ -801,8 +801,6 @@ bitflags! {
     }
 }
 
-impl Copy for TypeFlags {}
-
 #[deriving(Show)]
 pub struct TyS<'tcx> {
     pub sty: sty<'tcx>,
diff --git a/src/librustc_llvm/lib.rs b/src/librustc_llvm/lib.rs
index 7d8338ba976..5e63f185c94 100644
--- a/src/librustc_llvm/lib.rs
+++ b/src/librustc_llvm/lib.rs
@@ -150,7 +150,6 @@ bitflags! {
     }
 }
 
-impl Copy for Attribute {}
 
 #[repr(u64)]
 pub enum OtherAttribute {
diff --git a/src/libstd/bitflags.rs b/src/libstd/bitflags.rs
index ffcd6505dad..8a6d329ec46 100644
--- a/src/libstd/bitflags.rs
+++ b/src/libstd/bitflags.rs
@@ -33,8 +33,6 @@
 ///     }
 /// }
 ///
-/// impl Copy for Flags {}
-///
 /// fn main() {
 ///     let e1 = FLAG_A | FLAG_C;
 ///     let e2 = FLAG_B | FLAG_C;
@@ -57,8 +55,6 @@
 ///     }
 /// }
 ///
-/// impl Copy for Flags {}
-///
 /// impl Flags {
 ///     pub fn clear(&mut self) {
 ///         self.bits = 0;  // The `bits` field can be accessed from within the
@@ -121,7 +117,7 @@ macro_rules! bitflags {
     ($(#[$attr:meta])* flags $BitFlags:ident: $T:ty {
         $($(#[$Flag_attr:meta])* const $Flag:ident = $value:expr),+
     }) => {
-        #[deriving(PartialEq, Eq, Clone, PartialOrd, Ord, Hash)]
+        #[deriving(Copy, PartialEq, Eq, Clone, PartialOrd, Ord, Hash)]
         $(#[$attr])*
         pub struct $BitFlags {
             bits: $T,
@@ -288,16 +284,12 @@ mod tests {
         }
     }
 
-    impl Copy for Flags {}
-
     bitflags! {
         flags AnotherSetOfFlags: i8 {
             const AnotherFlag = -1_i8,
         }
     }
 
-    impl Copy for AnotherSetOfFlags {}
-
     #[test]
     fn test_bits(){
         assert_eq!(Flags::empty().bits(), 0x00000000);
diff --git a/src/libstd/io/mod.rs b/src/libstd/io/mod.rs
index d21e0f57b07..4baeaabc6c6 100644
--- a/src/libstd/io/mod.rs
+++ b/src/libstd/io/mod.rs
@@ -1910,7 +1910,6 @@ bitflags! {
     }
 }
 
-impl Copy for FilePermission {}
 
 impl Default for FilePermission {
     #[inline]
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index d1991c0463f..b9ef3fdbd49 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -98,7 +98,6 @@ bitflags! {
     }
 }
 
-impl Copy for Restrictions {}
 
 type ItemInfo = (Ident, Item_, Option<Vec<Attribute> >);