Skip to content

Commit 99501e6

Browse files
committed
Remove no longer necessary coercions to fn pointer types.
Originally added in 8fe9e4d. Everything appears to build fine without the coercions, so they can presumably be removed.
1 parent 70b8b94 commit 99501e6

File tree

2 files changed

+0
-12
lines changed

2 files changed

+0
-12
lines changed

src/libstd/collections/hash/map.rs

-8
Original file line numberDiff line numberDiff line change
@@ -837,8 +837,6 @@ impl<K, V, S> HashMap<K, V, S>
837837
#[stable(feature = "rust1", since = "1.0.0")]
838838
pub fn keys<'a>(&'a self) -> Keys<'a, K, V> {
839839
fn first<A, B>((a, _): (A, B)) -> A { a }
840-
let first: fn((&'a K,&'a V)) -> &'a K = first; // coerce to fn ptr
841-
842840
Keys { inner: self.iter().map(first) }
843841
}
844842

@@ -862,8 +860,6 @@ impl<K, V, S> HashMap<K, V, S>
862860
#[stable(feature = "rust1", since = "1.0.0")]
863861
pub fn values<'a>(&'a self) -> Values<'a, K, V> {
864862
fn second<A, B>((_, b): (A, B)) -> B { b }
865-
let second: fn((&'a K,&'a V)) -> &'a V = second; // coerce to fn ptr
866-
867863
Values { inner: self.iter().map(second) }
868864
}
869865

@@ -997,8 +993,6 @@ impl<K, V, S> HashMap<K, V, S>
997993
#[stable(feature = "drain", since = "1.6.0")]
998994
pub fn drain(&mut self) -> Drain<K, V> {
999995
fn last_two<A, B, C>((_, b, c): (A, B, C)) -> (B, C) { (b, c) }
1000-
let last_two: fn((SafeHash, K, V)) -> (K, V) = last_two; // coerce to fn pointer
1001-
1002996
Drain {
1003997
inner: self.table.drain().map(last_two),
1004998
}
@@ -1404,8 +1398,6 @@ impl<K, V, S> IntoIterator for HashMap<K, V, S>
14041398
/// ```
14051399
fn into_iter(self) -> IntoIter<K, V> {
14061400
fn last_two<A, B, C>((_, b, c): (A, B, C)) -> (B, C) { (b, c) }
1407-
let last_two: fn((SafeHash, K, V)) -> (K, V) = last_two;
1408-
14091401
IntoIter {
14101402
inner: self.table.into_iter().map(last_two)
14111403
}

src/libstd/collections/hash/set.rs

-4
Original file line numberDiff line numberDiff line change
@@ -415,8 +415,6 @@ impl<T, S> HashSet<T, S>
415415
#[stable(feature = "drain", since = "1.6.0")]
416416
pub fn drain(&mut self) -> Drain<T> {
417417
fn first<A, B>((a, _): (A, B)) -> A { a }
418-
let first: fn((T, ())) -> T = first; // coerce to fn pointer
419-
420418
Drain { iter: self.map.drain().map(first) }
421419
}
422420

@@ -892,8 +890,6 @@ impl<T, S> IntoIterator for HashSet<T, S>
892890
/// ```
893891
fn into_iter(self) -> IntoIter<T> {
894892
fn first<A, B>((a, _): (A, B)) -> A { a }
895-
let first: fn((T, ())) -> T = first;
896-
897893
IntoIter { iter: self.map.into_iter().map(first) }
898894
}
899895
}

0 commit comments

Comments
 (0)