summaryrefslogtreecommitdiffstats
path: root/tests/ui/iterators/invalid-iterator-chain-with-int-infer.stderr
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tests/ui/iterators/invalid-iterator-chain-with-int-infer.stderr24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/ui/iterators/invalid-iterator-chain-with-int-infer.stderr b/tests/ui/iterators/invalid-iterator-chain-with-int-infer.stderr
new file mode 100644
index 000000000..3cb5e44c7
--- /dev/null
+++ b/tests/ui/iterators/invalid-iterator-chain-with-int-infer.stderr
@@ -0,0 +1,24 @@
+error[E0277]: a value of type `f32` cannot be made by summing an iterator over elements of type `{integer}`
+ --> $DIR/invalid-iterator-chain-with-int-infer.rs:2:41
+ |
+LL | let x = Some(()).iter().map(|()| 1).sum::<f32>();
+ | ^^^ value of type `f32` cannot be made by summing a `std::iter::Iterator<Item={integer}>`
+ |
+ = help: the trait `Sum<{integer}>` is not implemented for `f32`
+ = help: the following other types implement trait `Sum<A>`:
+ <f32 as Sum<&'a f32>>
+ <f32 as Sum>
+note: the method call chain might not have had the expected associated types
+ --> $DIR/invalid-iterator-chain-with-int-infer.rs:2:29
+ |
+LL | let x = Some(()).iter().map(|()| 1).sum::<f32>();
+ | -------- ------ ^^^^^^^^^^^ `Iterator::Item` changed to `{integer}` here
+ | | |
+ | | `Iterator::Item` is `&()` here
+ | this expression has type `Option<()>`
+note: required by a bound in `std::iter::Iterator::sum`
+ --> $SRC_DIR/core/src/iter/traits/iterator.rs:LL:COL
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0277`.