28 lines
585 B
Rust
28 lines
585 B
Rust
|
// See https://github.com/rust-lang/rust/issues/88475
|
||
|
//@ run-rustfix
|
||
|
//@ edition:2021
|
||
|
//@ check-pass
|
||
|
#![warn(boxed_slice_into_iter)]
|
||
|
#![allow(unused)]
|
||
|
|
||
|
struct FooIter;
|
||
|
|
||
|
trait MyIntoIter {
|
||
|
fn into_iter(self) -> FooIter;
|
||
|
}
|
||
|
|
||
|
impl<T> MyIntoIter for Box<[T]> {
|
||
|
fn into_iter(self) -> FooIter {
|
||
|
FooIter
|
||
|
}
|
||
|
}
|
||
|
|
||
|
struct Point;
|
||
|
|
||
|
pub fn main() {
|
||
|
let points: Box<[_]> = vec![Point].into_boxed_slice();
|
||
|
let y = MyIntoIter::into_iter(points);
|
||
|
//~^ WARNING trait method `into_iter` will become ambiguous in Rust 2024
|
||
|
//~| WARNING this changes meaning in Rust 2024
|
||
|
}
|