Guest User

Untitled

a guest
Aug 20th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.14 KB | None | 0 0
  1. #![allow(unreachable_code)]
  2.  
  3.  
  4. fn main() {
  5. println!("{:?}", {
  6. trait CopyIterator: Iterator where <Self as Iterator>::Item: Copy { fn foo(&self) { } } let iter = vec![1].into_iter(); iter.foo();
  7. });
  8. }
  9.  
  10.  
  11. /* ~~~~=== stderr ===~~~~
  12. Compiling playground v0.0.1 (file:///playground)
  13. error[E0599]: no method named `foo` found for type `std::vec::IntoIter<{integer}>` in the current scope
  14. --> src/main.rs:6:134
  15. |
  16. 6 | trait CopyIterator: Iterator where <Self as Iterator>::Item: Copy { fn foo(&self) { } } let iter = vec![1].into_iter(); iter.foo();
  17. | ^^^
  18. |
  19. = help: items from traits can only be used if the trait is implemented and in scope
  20. = note: the following trait defines an item `foo`, perhaps you need to implement it:
  21. candidate #1: `main::CopyIterator`
  22.  
  23. error: aborting due to previous error
  24.  
  25. For more information about this error, try `rustc --explain E0599`.
  26. error: Could not compile `playground`.
  27.  
  28. To learn more, run the command again with --verbose.
  29.  
  30. */
  31.  
  32. /* ~~~~=== stdout ===~~~~
  33.  
  34. */
Add Comment
Please, Sign In to add comment