From 32a31d8acaf8521712a49f53feabd7d98844ef73 Mon Sep 17 00:00:00 2001 From: Yuki Okushi Date: Wed, 21 Dec 2022 21:10:30 +0900 Subject: [PATCH] Add regression test for #96530 Signed-off-by: Yuki Okushi --- src/test/ui/typeck/issue-96530.rs | 20 ++++++++++++++++++++ src/test/ui/typeck/issue-96530.stderr | 9 +++++++++ 2 files changed, 29 insertions(+) create mode 100644 src/test/ui/typeck/issue-96530.rs create mode 100644 src/test/ui/typeck/issue-96530.stderr diff --git a/src/test/ui/typeck/issue-96530.rs b/src/test/ui/typeck/issue-96530.rs new file mode 100644 index 0000000000000..4ab93ab4938f4 --- /dev/null +++ b/src/test/ui/typeck/issue-96530.rs @@ -0,0 +1,20 @@ +struct Person { + first_name: String, + age: u32, +} + +fn first_woman(man: &Person) -> Person { + Person { + first_name: "Eve".to_string(), + ..man.clone() //~ ERROR: mismatched types + } +} + +fn main() { + let adam = Person { + first_name: "Adam".to_string(), + age: 0, + }; + + let eve = first_woman(&adam); +} diff --git a/src/test/ui/typeck/issue-96530.stderr b/src/test/ui/typeck/issue-96530.stderr new file mode 100644 index 0000000000000..4b4568b1de9b2 --- /dev/null +++ b/src/test/ui/typeck/issue-96530.stderr @@ -0,0 +1,9 @@ +error[E0308]: mismatched types + --> $DIR/issue-96530.rs:9:11 + | +LL | ..man.clone() + | ^^^^^^^^^^^ expected struct `Person`, found `&Person` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`.