From 0871eca1774050a18b89ab6fae0121c400702621 Mon Sep 17 00:00:00 2001 From: shove Date: Wed, 21 Sep 2022 17:20:19 +0800 Subject: [PATCH] tests: add test for using reference of map type as struct field (PR #15828) (#15830) --- .../c/testdata/ref_sumtype_as_struct_field.out | 3 --- .../gen/c/testdata/ref_sumtype_as_struct_field.vv | 14 -------------- .../testdata/ref_sumtype_map_as_struct_field.out | 4 ++++ .../c/testdata/ref_sumtype_map_as_struct_field.vv | 15 +++++++++++++++ 4 files changed, 19 insertions(+), 17 deletions(-) delete mode 100644 vlib/v/gen/c/testdata/ref_sumtype_as_struct_field.out delete mode 100644 vlib/v/gen/c/testdata/ref_sumtype_as_struct_field.vv create mode 100644 vlib/v/gen/c/testdata/ref_sumtype_map_as_struct_field.out create mode 100644 vlib/v/gen/c/testdata/ref_sumtype_map_as_struct_field.vv diff --git a/vlib/v/gen/c/testdata/ref_sumtype_as_struct_field.out b/vlib/v/gen/c/testdata/ref_sumtype_as_struct_field.out deleted file mode 100644 index 31ae957e83..0000000000 --- a/vlib/v/gen/c/testdata/ref_sumtype_as_struct_field.out +++ /dev/null @@ -1,3 +0,0 @@ -SumTypePtr{ - ptr: &nil -} diff --git a/vlib/v/gen/c/testdata/ref_sumtype_as_struct_field.vv b/vlib/v/gen/c/testdata/ref_sumtype_as_struct_field.vv deleted file mode 100644 index 7423117465..0000000000 --- a/vlib/v/gen/c/testdata/ref_sumtype_as_struct_field.vv +++ /dev/null @@ -1,14 +0,0 @@ -struct S1 {} - -struct S2 {} - -type T1 = S1 | S2 - -struct SumTypePtr { - ptr &T1 = unsafe { nil } -} - -fn main() { - ptr := SumTypePtr{} - println(ptr) -} diff --git a/vlib/v/gen/c/testdata/ref_sumtype_map_as_struct_field.out b/vlib/v/gen/c/testdata/ref_sumtype_map_as_struct_field.out new file mode 100644 index 0000000000..24a2afe303 --- /dev/null +++ b/vlib/v/gen/c/testdata/ref_sumtype_map_as_struct_field.out @@ -0,0 +1,4 @@ +Ptr{ + ptr1: &nil + ptr2: &nil +} diff --git a/vlib/v/gen/c/testdata/ref_sumtype_map_as_struct_field.vv b/vlib/v/gen/c/testdata/ref_sumtype_map_as_struct_field.vv new file mode 100644 index 0000000000..714515912b --- /dev/null +++ b/vlib/v/gen/c/testdata/ref_sumtype_map_as_struct_field.vv @@ -0,0 +1,15 @@ +struct S1 {} + +struct S2 {} + +type T1 = S1 | S2 + +struct Ptr { + ptr1 &T1 = unsafe { nil } + ptr2 &map[int]int = unsafe { nil } +} + +fn main() { + ptr := Ptr{} + println(ptr) +}