about summary refs log tree commit diff
diff options
context:
space:
mode:
authorNiv Kaminer <nivkner@zoho.com>2017-09-29 10:54:55 +0300
committerNiv Kaminer <nivkner@zoho.com>2017-09-30 11:33:47 +0300
commitff99111f482096248e7b37eeaf46ee8174d05b00 (patch)
tree1bf3d7517214fd8ad4174b259e45f2bc18a9c6ca
parentb7041bfab3a83702a8026fb7a18d8ea7d54cc648 (diff)
downloadrust-ff99111f482096248e7b37eeaf46ee8174d05b00.tar.gz
rust-ff99111f482096248e7b37eeaf46ee8174d05b00.zip
address some `FIXME`s whose associated issues were marked as closed
remove FIXME(#13101) since `assert_receiver_is_total_eq` stays.
remove FIXME(#19649) now that stability markers render.
remove FIXME(#13642) now the benchmarks were moved.
remove FIXME(#6220) now that floating points can be formatted.
remove FIXME(#18248) and write tests for `Rc<str>` and `Rc<[u8]>`
remove reference to irelevent issues in FIXME(#1697, #2178...)
update FIXME(#5516) to point to getopts issue 7
update FIXME(#7771) to point to RFC 628
update FIXME(#19839) to point to issue 26925
-rw-r--r--src/liballoc/binary_heap.rs2
-rw-r--r--src/liballoc/linked_list.rs2
-rw-r--r--src/liballoc/vec_deque.rs2
-rw-r--r--src/libcore/benches/mem.rs1
-rw-r--r--src/libcore/cmp.rs4
-rw-r--r--src/libcore/fmt/num.rs1
-rw-r--r--src/libcore/ptr.rs2
-rw-r--r--src/libcore/slice/mod.rs6
-rw-r--r--src/libcore/tests/hash/mod.rs7
-rw-r--r--src/libgetopts/lib.rs11
-rw-r--r--src/librand/isaac.rs3
-rw-r--r--src/librand/lib.rs3
-rw-r--r--src/librustc/hir/mod.rs3
-rw-r--r--src/libstd/collections/hash/map.rs6
-rw-r--r--src/libstd/collections/hash/table.rs4
-rw-r--r--src/libsyntax/ast.rs3
16 files changed, 32 insertions, 28 deletions
diff --git a/src/liballoc/binary_heap.rs b/src/liballoc/binary_heap.rs
index 57640af816a..94bbaf92ce9 100644
--- a/src/liballoc/binary_heap.rs
+++ b/src/liballoc/binary_heap.rs
@@ -926,7 +926,7 @@ impl<'a, T: 'a + fmt::Debug> fmt::Debug for Iter<'a, T> {
     }
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, T> Clone for Iter<'a, T> {
     fn clone(&self) -> Iter<'a, T> {
diff --git a/src/liballoc/linked_list.rs b/src/liballoc/linked_list.rs
index f9512cbe977..f897feb7afa 100644
--- a/src/liballoc/linked_list.rs
+++ b/src/liballoc/linked_list.rs
@@ -80,7 +80,7 @@ impl<'a, T: 'a + fmt::Debug> fmt::Debug for Iter<'a, T> {
     }
 }
 
-// FIXME #19839: deriving is too aggressive on the bounds (T doesn't need to be Clone).
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, T> Clone for Iter<'a, T> {
     fn clone(&self) -> Self {
diff --git a/src/liballoc/vec_deque.rs b/src/liballoc/vec_deque.rs
index 6d64e9e303f..f56aa23a4eb 100644
--- a/src/liballoc/vec_deque.rs
+++ b/src/liballoc/vec_deque.rs
@@ -1922,7 +1922,7 @@ impl<'a, T: 'a + fmt::Debug> fmt::Debug for Iter<'a, T> {
     }
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, T> Clone for Iter<'a, T> {
     fn clone(&self) -> Iter<'a, T> {
diff --git a/src/libcore/benches/mem.rs b/src/libcore/benches/mem.rs
index 8e541d92a7f..6f5afa9ba99 100644
--- a/src/libcore/benches/mem.rs
+++ b/src/libcore/benches/mem.rs
@@ -10,7 +10,6 @@
 
 use test::Bencher;
 
-// FIXME #13642 (these benchmarks should be in another place)
 // Completely miscellaneous language-construct benchmarks.
 // Static/dynamic method dispatch
 
diff --git a/src/libcore/cmp.rs b/src/libcore/cmp.rs
index 6f86f8caad0..3c346f93ffc 100644
--- a/src/libcore/cmp.rs
+++ b/src/libcore/cmp.rs
@@ -162,8 +162,8 @@ pub trait PartialEq<Rhs: ?Sized = Self> {
 /// ```
 #[stable(feature = "rust1", since = "1.0.0")]
 pub trait Eq: PartialEq<Self> {
-    // FIXME #13101: this method is used solely by #[deriving] to
-    // assert that every component of a type implements #[deriving]
+    // this method is used solely by #[deriving] to assert
+    // that every component of a type implements #[deriving]
     // itself, the current deriving infrastructure means doing this
     // assertion without using a method on this trait is nearly
     // impossible.
diff --git a/src/libcore/fmt/num.rs b/src/libcore/fmt/num.rs
index 8ea388fddf8..c8218172583 100644
--- a/src/libcore/fmt/num.rs
+++ b/src/libcore/fmt/num.rs
@@ -12,7 +12,6 @@
 
 #![allow(deprecated)]
 
-// FIXME: #6220 Implement floating point formatting
 
 use fmt;
 use ops::{Div, Rem, Sub};
diff --git a/src/libcore/ptr.rs b/src/libcore/ptr.rs
index 4041a3760e5..6f2f781cc86 100644
--- a/src/libcore/ptr.rs
+++ b/src/libcore/ptr.rs
@@ -27,8 +27,6 @@ use nonzero::NonZero;
 
 use cmp::Ordering::{self, Less, Equal, Greater};
 
-// FIXME #19649: intrinsic docs don't render, so these have no docs :(
-
 #[stable(feature = "rust1", since = "1.0.0")]
 pub use intrinsics::copy_nonoverlapping;
 
diff --git a/src/libcore/slice/mod.rs b/src/libcore/slice/mod.rs
index ae243f3f246..5039bef631e 100644
--- a/src/libcore/slice/mod.rs
+++ b/src/libcore/slice/mod.rs
@@ -1654,7 +1654,7 @@ impl<'a, T: 'a + fmt::Debug, P> fmt::Debug for Split<'a, T, P> where P: FnMut(&T
     }
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, T, P> Clone for Split<'a, T, P> where P: Clone + FnMut(&T) -> bool {
     fn clone(&self) -> Split<'a, T, P> {
@@ -2093,7 +2093,7 @@ pub struct Windows<'a, T:'a> {
     size: usize
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, T> Clone for Windows<'a, T> {
     fn clone(&self) -> Windows<'a, T> {
@@ -2195,7 +2195,7 @@ pub struct Chunks<'a, T:'a> {
     size: usize
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, T> Clone for Chunks<'a, T> {
     fn clone(&self) -> Chunks<'a, T> {
diff --git a/src/libcore/tests/hash/mod.rs b/src/libcore/tests/hash/mod.rs
index e8ea6044f5f..43ba941f13b 100644
--- a/src/libcore/tests/hash/mod.rs
+++ b/src/libcore/tests/hash/mod.rs
@@ -12,6 +12,7 @@ mod sip;
 
 use std::hash::{Hash, Hasher};
 use std::default::Default;
+use std::rc::Rc;
 
 struct MyHasher {
     hash: u64,
@@ -64,12 +65,14 @@ fn test_writer_hasher() {
     assert_eq!(hash(& s), 97 + 0xFF);
     let s: Box<str> = String::from("a").into_boxed_str();
     assert_eq!(hash(& s), 97 + 0xFF);
+    let s: Rc<&str> = Rc::new("a");
+    assert_eq!(hash(&s), 97 + 0xFF);
     let cs: &[u8] = &[1, 2, 3];
     assert_eq!(hash(& cs), 9);
     let cs: Box<[u8]> = Box::new([1, 2, 3]);
     assert_eq!(hash(& cs), 9);
-
-    // FIXME (#18248) Add tests for hashing Rc<str> and Rc<[T]>
+    let cs: Rc<[u8]> = Rc::new([1, 2, 3]);
+    assert_eq!(hash(& cs), 9);
 
     let ptr = 5_usize as *const i32;
     assert_eq!(hash(&ptr), 5);
diff --git a/src/libgetopts/lib.rs b/src/libgetopts/lib.rs
index a0eacc817ca..81fa0374f54 100644
--- a/src/libgetopts/lib.rs
+++ b/src/libgetopts/lib.rs
@@ -731,7 +731,9 @@ pub fn usage(brief: &str, opts: &[OptGroup]) -> String {
             }
         }
 
-        // FIXME: #5516 should be graphemes not codepoints
+        // FIXME(https://github.com/rust-lang-nursery/getopts/issues/7)
+        // should be graphemes not codepoints
+        //
         // here we just need to indent the start of the description
         let rowlen = row.chars().count();
         if rowlen < 24 {
@@ -749,14 +751,17 @@ pub fn usage(brief: &str, opts: &[OptGroup]) -> String {
             desc_normalized_whitespace.push(' ');
         }
 
-        // FIXME: #5516 should be graphemes not codepoints
+        // FIXME(https://github.com/rust-lang-nursery/getopts/issues/7)
+        // should be graphemes not codepoints
         let mut desc_rows = Vec::new();
         each_split_within(&desc_normalized_whitespace[..], 54, |substr| {
             desc_rows.push(substr.to_owned());
             true
         });
 
-        // FIXME: #5516 should be graphemes not codepoints
+        // FIXME(https://github.com/rust-lang-nursery/getopts/issues/7)
+        // should be graphemes not codepoints
+        //
         // wrapped description
         row.push_str(&desc_rows.join(&desc_sep[..]));
 
diff --git a/src/librand/isaac.rs b/src/librand/isaac.rs
index 96ce0905e38..17ecf79daee 100644
--- a/src/librand/isaac.rs
+++ b/src/librand/isaac.rs
@@ -543,7 +543,8 @@ impl Clone for Isaac64Rng {
 }
 
 impl Rng for Isaac64Rng {
-    // FIXME #7771: having next_u32 like this should be unnecessary
+    // FIXME(https://github.com/rust-lang/rfcs/issues/628)
+    // having next_u32 like this should be unnecessary
     #[inline]
     fn next_u32(&mut self) -> u32 {
         self.next_u64() as u32
diff --git a/src/librand/lib.rs b/src/librand/lib.rs
index 90b3020fff9..82344f0ec09 100644
--- a/src/librand/lib.rs
+++ b/src/librand/lib.rs
@@ -115,7 +115,8 @@ pub trait Rng: Sized {
     ///
     /// This rarely needs to be called directly, prefer `r.gen()` to
     /// `r.next_u32()`.
-    // FIXME #7771: Should be implemented in terms of next_u64
+    // FIXME(https://github.com/rust-lang/rfcs/issues/628)
+    // Should be implemented in terms of next_u64
     fn next_u32(&mut self) -> u32;
 
     /// Return the next random u64.
diff --git a/src/librustc/hir/mod.rs b/src/librustc/hir/mod.rs
index 9bfedd7a381..2518ba7996c 100644
--- a/src/librustc/hir/mod.rs
+++ b/src/librustc/hir/mod.rs
@@ -916,8 +916,7 @@ impl Stmt_ {
     }
 }
 
-// FIXME (pending discussion of #1697, #2178...): local should really be
-// a refinement on pat.
+// FIXME: local should really be a refinement on pat.
 /// Local represents a `let` statement, e.g., `let <pat>:<ty> = <expr>;`
 #[derive(Clone, PartialEq, Eq, RustcEncodable, RustcDecodable, Hash, Debug)]
 pub struct Local {
diff --git a/src/libstd/collections/hash/map.rs b/src/libstd/collections/hash/map.rs
index 026b863b963..90361786e4f 100644
--- a/src/libstd/collections/hash/map.rs
+++ b/src/libstd/collections/hash/map.rs
@@ -1350,7 +1350,7 @@ pub struct Iter<'a, K: 'a, V: 'a> {
     inner: table::Iter<'a, K, V>,
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, K, V> Clone for Iter<'a, K, V> {
     fn clone(&self) -> Iter<'a, K, V> {
@@ -1403,7 +1403,7 @@ pub struct Keys<'a, K: 'a, V: 'a> {
     inner: Iter<'a, K, V>,
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, K, V> Clone for Keys<'a, K, V> {
     fn clone(&self) -> Keys<'a, K, V> {
@@ -1432,7 +1432,7 @@ pub struct Values<'a, K: 'a, V: 'a> {
     inner: Iter<'a, K, V>,
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, K, V> Clone for Values<'a, K, V> {
     fn clone(&self) -> Values<'a, K, V> {
diff --git a/src/libstd/collections/hash/table.rs b/src/libstd/collections/hash/table.rs
index f1e8ff66af1..93929637e2f 100644
--- a/src/libstd/collections/hash/table.rs
+++ b/src/libstd/collections/hash/table.rs
@@ -925,7 +925,7 @@ struct RawBuckets<'a, K, V> {
     marker: marker::PhantomData<&'a ()>,
 }
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 impl<'a, K, V> Clone for RawBuckets<'a, K, V> {
     fn clone(&self) -> RawBuckets<'a, K, V> {
         RawBuckets {
@@ -976,7 +976,7 @@ pub struct Iter<'a, K: 'a, V: 'a> {
 unsafe impl<'a, K: Sync, V: Sync> Sync for Iter<'a, K, V> {}
 unsafe impl<'a, K: Sync, V: Sync> Send for Iter<'a, K, V> {}
 
-// FIXME(#19839) Remove in favor of `#[derive(Clone)]`
+// FIXME(#26925) Remove in favor of `#[derive(Clone)]`
 impl<'a, K, V> Clone for Iter<'a, K, V> {
     fn clone(&self) -> Iter<'a, K, V> {
         Iter {
diff --git a/src/libsyntax/ast.rs b/src/libsyntax/ast.rs
index 0504e889ea1..b8322a44d60 100644
--- a/src/libsyntax/ast.rs
+++ b/src/libsyntax/ast.rs
@@ -786,8 +786,7 @@ pub enum MacStmtStyle {
     NoBraces,
 }
 
-// FIXME (pending discussion of #1697, #2178...): local should really be
-// a refinement on pat.
+// FIXME: local should really be a refinement on pat.
 /// Local represents a `let` statement, e.g., `let <pat>:<ty> = <expr>;`
 #[derive(Clone, PartialEq, Eq, RustcEncodable, RustcDecodable, Hash, Debug)]
 pub struct Local {