summary refs log tree commit diff
path: root/tests/ui/structs/trie-node-structure-usage-3389.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/structs/trie-node-structure-usage-3389.rs')
-rw-r--r--tests/ui/structs/trie-node-structure-usage-3389.rs28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/ui/structs/trie-node-structure-usage-3389.rs b/tests/ui/structs/trie-node-structure-usage-3389.rs
new file mode 100644
index 00000000000..1518e107944
--- /dev/null
+++ b/tests/ui/structs/trie-node-structure-usage-3389.rs
@@ -0,0 +1,28 @@
+//@ run-pass
+#![allow(dead_code)]
+#![allow(non_camel_case_types)]
+
+struct trie_node {
+    content: Vec<String> ,
+    children: Vec<trie_node> ,
+}
+
+fn print_str_vector(vector: Vec<String> ) {
+    for string in &vector {
+        println!("{}", *string);
+    }
+}
+
+pub fn main() {
+    let mut node: trie_node = trie_node {
+        content: Vec::new(),
+        children: Vec::new()
+    };
+    let v = vec!["123".to_string(), "abc".to_string()];
+    node.content = vec!["123".to_string(), "abc".to_string()];
+    print_str_vector(v);
+    print_str_vector(node.content.clone());
+
+}
+
+// https://github.com/rust-lang/rust/issues/3389