diff options
Diffstat (limited to 'tests/ui/ufcs/ufcs-qpath-self-mismatch.stderr')
-rw-r--r-- | tests/ui/ufcs/ufcs-qpath-self-mismatch.stderr | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/tests/ui/ufcs/ufcs-qpath-self-mismatch.stderr b/tests/ui/ufcs/ufcs-qpath-self-mismatch.stderr new file mode 100644 index 000000000..e85144a31 --- /dev/null +++ b/tests/ui/ufcs/ufcs-qpath-self-mismatch.stderr @@ -0,0 +1,76 @@ +error[E0277]: cannot add `u32` to `i32` + --> $DIR/ufcs-qpath-self-mismatch.rs:4:31 + | +LL | <i32 as Add<u32>>::add(1, 2); + | ---------------------- ^ no implementation for `i32 + u32` + | | + | required by a bound introduced by this call + | + = help: the trait `Add<u32>` is not implemented for `i32` + = help: the following other types implement trait `Add<Rhs>`: + <&'a i32 as Add<i32>> + <&i32 as Add<&i32>> + <i32 as Add<&i32>> + <i32 as Add> + +error[E0308]: mismatched types + --> $DIR/ufcs-qpath-self-mismatch.rs:7:28 + | +LL | <i32 as Add<i32>>::add(1u32, 2); + | ---------------------- ^^^^ expected `i32`, found `u32` + | | + | arguments to this function are incorrect + | +help: the return type of this call is `u32` due to the type of the argument passed + --> $DIR/ufcs-qpath-self-mismatch.rs:7:5 + | +LL | <i32 as Add<i32>>::add(1u32, 2); + | ^^^^^^^^^^^^^^^^^^^^^^^----^^^^ + | | + | this argument influences the return type of `Add` +note: associated function defined here + --> $SRC_DIR/core/src/ops/arith.rs:LL:COL +help: change the type of the numeric literal from `u32` to `i32` + | +LL | <i32 as Add<i32>>::add(1i32, 2); + | ~~~ + +error[E0308]: mismatched types + --> $DIR/ufcs-qpath-self-mismatch.rs:9:31 + | +LL | <i32 as Add<i32>>::add(1, 2u32); + | ---------------------- ^^^^ expected `i32`, found `u32` + | | + | arguments to this function are incorrect + | +help: the return type of this call is `u32` due to the type of the argument passed + --> $DIR/ufcs-qpath-self-mismatch.rs:9:5 + | +LL | <i32 as Add<i32>>::add(1, 2u32); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^----^ + | | + | this argument influences the return type of `Add` +note: associated function defined here + --> $SRC_DIR/core/src/ops/arith.rs:LL:COL +help: change the type of the numeric literal from `u32` to `i32` + | +LL | <i32 as Add<i32>>::add(1, 2i32); + | ~~~ + +error[E0277]: cannot add `u32` to `i32` + --> $DIR/ufcs-qpath-self-mismatch.rs:4:5 + | +LL | <i32 as Add<u32>>::add(1, 2); + | ^^^^^^^^^^^^^^^^^^^^^^ no implementation for `i32 + u32` + | + = help: the trait `Add<u32>` is not implemented for `i32` + = help: the following other types implement trait `Add<Rhs>`: + <&'a i32 as Add<i32>> + <&i32 as Add<&i32>> + <i32 as Add<&i32>> + <i32 as Add> + +error: aborting due to 4 previous errors + +Some errors have detailed explanations: E0277, E0308. +For more information about an error, try `rustc --explain E0277`. |