diff options
Diffstat (limited to 'src/test/ui/error-codes/E0283.rs')
-rw-r--r-- | src/test/ui/error-codes/E0283.rs | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/test/ui/error-codes/E0283.rs b/src/test/ui/error-codes/E0283.rs new file mode 100644 index 000000000..0643af4b7 --- /dev/null +++ b/src/test/ui/error-codes/E0283.rs @@ -0,0 +1,37 @@ +trait Generator { + fn create() -> u32; +} + +struct Impl; + +impl Generator 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 Generator for AnotherImpl { + fn create() -> u32 { 2 } +} + +fn main() { + let cont: u32 = Generator::create(); //~ ERROR E0790 +} + +fn buzz() { + let foo_impl = Impl::new(); + let bar = foo_impl.into() * 1u32; //~ ERROR E0283 + foo(bar); +} |