rust/tests/ui/error-codes/E0283.rs

38 lines
529 B
Rust

trait Coroutine {
fn create() -> u32;
}
struct Impl;
impl Coroutine for Impl {
fn create() -> u32 { 1 }
}
impl Impl {
fn new() -> Self {
Impl{}
}
}
impl Into<u32> for Impl {
fn into(self) -> u32 { 1 }
}
fn foo(bar: u32) {}
struct AnotherImpl;
impl Coroutine for AnotherImpl {
fn create() -> u32 { 2 }
}
fn main() {
let cont: u32 = Coroutine::create(); //~ ERROR E0790
}
fn buzz() {
let foo_impl = Impl::new();
let bar = foo_impl.into() * 1u32; //~ ERROR E0283
foo(bar);
}