rust/tests/ui/repeat-expr/copy-inference-side-effects-are-lazy.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

26 lines
464 B
Rust
Raw Normal View History

2025-02-15 02:01:41 +00:00
//@revisions: current gai
//@[current] check-pass
#![cfg_attr(gai, feature(generic_arg_infer))]
use std::marker::PhantomData;
struct Foo<T>(PhantomData<T>);
impl Clone for Foo<u8> {
fn clone(&self) -> Self {
Foo(PhantomData)
}
}
impl Copy for Foo<u8> {}
fn extract<T, const N: usize>(_: [Foo<T>; N]) -> T {
loop {}
}
fn main() {
let x = [Foo(PhantomData); 2];
2025-02-15 02:01:41 +00:00
//[gai]~^ ERROR: type annotations needed
_ = extract(x).max(2);
}