From ae241785bf57ecc541c303a8d69ed5f9584b4ac7 Mon Sep 17 00:00:00 2001 From: Delyan Angelov Date: Tue, 3 Nov 2020 00:35:03 +0200 Subject: [PATCH] vfmt: fix `union {}` declarations --- vlib/v/fmt/fmt.v | 6 +++++- vlib/v/fmt/tests/union_keep.vv | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 vlib/v/fmt/tests/union_keep.vv diff --git a/vlib/v/fmt/fmt.v b/vlib/v/fmt/fmt.v index cacb500103..51be07d37c 100644 --- a/vlib/v/fmt/fmt.v +++ b/vlib/v/fmt/fmt.v @@ -572,7 +572,11 @@ pub fn (mut f Fmt) struct_decl(node ast.StructDecl) { if node.is_pub { f.write('pub ') } - f.write('struct ') + if node.is_union { + f.write('union ') + } else { + f.write('struct ') + } f.write_language_prefix(node.language) name := node.name.after('.') f.writeln('$name {') diff --git a/vlib/v/fmt/tests/union_keep.vv b/vlib/v/fmt/tests/union_keep.vv new file mode 100644 index 0000000000..5872d03643 --- /dev/null +++ b/vlib/v/fmt/tests/union_keep.vv @@ -0,0 +1,4 @@ +union Un { + i int + b byte +}