From a5bcaf538d193f9e502b122875f9d54ca3dfdaa1 Mon Sep 17 00:00:00 2001 From: flip1995 Date: Sun, 12 May 2019 21:32:29 +0200 Subject: [PATCH] Add regression test for identity_conversion FP --- tests/ui/identity_conversion.rs | 11 +++++++++++ tests/ui/identity_conversion.stderr | 14 +++++++------- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/tests/ui/identity_conversion.rs b/tests/ui/identity_conversion.rs index 6491518af6ce2..164f0a3d6e73a 100644 --- a/tests/ui/identity_conversion.rs +++ b/tests/ui/identity_conversion.rs @@ -20,10 +20,21 @@ fn test_questionmark() -> Result<(), ()> { Ok(()) } +fn test_issue_3913() -> Result<(), std::io::Error> { + use std::fs; + use std::path::Path; + + let path = Path::new("."); + for _ in fs::read_dir(path)? {} + + Ok(()) +} + fn main() { test_generic(10i32); test_generic2::(10i32); test_questionmark().unwrap(); + test_issue_3913().unwrap(); let _: String = "foo".into(); let _: String = From::from("foo"); diff --git a/tests/ui/identity_conversion.stderr b/tests/ui/identity_conversion.stderr index 73a1996180b04..663f00d22795c 100644 --- a/tests/ui/identity_conversion.stderr +++ b/tests/ui/identity_conversion.stderr @@ -23,43 +23,43 @@ LL | let _: i32 = 0i32.into(); | ^^^^^^^^^^^ help: consider removing `.into()`: `0i32` error: identical conversion - --> $DIR/identity_conversion.rs:38:21 + --> $DIR/identity_conversion.rs:49:21 | LL | let _: String = "foo".to_string().into(); | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `"foo".to_string()` error: identical conversion - --> $DIR/identity_conversion.rs:39:21 + --> $DIR/identity_conversion.rs:50:21 | LL | let _: String = From::from("foo".to_string()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `From::from()`: `"foo".to_string()` error: identical conversion - --> $DIR/identity_conversion.rs:40:13 + --> $DIR/identity_conversion.rs:51:13 | LL | let _ = String::from("foo".to_string()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `"foo".to_string()` error: identical conversion - --> $DIR/identity_conversion.rs:41:13 + --> $DIR/identity_conversion.rs:52:13 | LL | let _ = String::from(format!("A: {:04}", 123)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("A: {:04}", 123)` error: identical conversion - --> $DIR/identity_conversion.rs:42:13 + --> $DIR/identity_conversion.rs:53:13 | LL | let _ = "".lines().into_iter(); | ^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `"".lines()` error: identical conversion - --> $DIR/identity_conversion.rs:43:13 + --> $DIR/identity_conversion.rs:54:13 | LL | let _ = vec![1, 2, 3].into_iter().into_iter(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `vec![1, 2, 3].into_iter()` error: identical conversion - --> $DIR/identity_conversion.rs:44:21 + --> $DIR/identity_conversion.rs:55:21 | LL | let _: String = format!("Hello {}", "world").into(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `format!("Hello {}", "world")`