From 2301132662db357057f4487186f5332320c4338a Mon Sep 17 00:00:00 2001 From: Swastik Baranwal Date: Mon, 25 Dec 2023 19:39:28 +0530 Subject: [PATCH] checker: update generic syntax for error message (#20269) --- vlib/v/checker/checker.v | 4 ++-- vlib/v/checker/tests/generic_sumtype_decl_err_c.out | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/vlib/v/checker/checker.v b/vlib/v/checker/checker.v index caf10ea8022cdc..a2138ac5366359 100644 --- a/vlib/v/checker/checker.v +++ b/vlib/v/checker/checker.v @@ -654,9 +654,9 @@ and use a reference to the sum type instead: `var := &${node.name}(${variant_nam for typ in sym.info.generic_types { if typ !in node.generic_types { sumtype_type_names := node.generic_types.map(c.table.type_to_str(it)).join(', ') - generic_sumtype_name := '${node.name}<${sumtype_type_names}>' + generic_sumtype_name := '${node.name}[${sumtype_type_names}]' variant_type_names := sym.info.generic_types.map(c.table.type_to_str(it)).join(', ') - generic_variant_name := '${sym.name}<${variant_type_names}>' + generic_variant_name := '${sym.name}[${variant_type_names}]' c.error('generic type name `${c.table.sym(typ).name}` of generic struct `${generic_variant_name}` is not mentioned in sumtype `${generic_sumtype_name}`', variant.pos) } diff --git a/vlib/v/checker/tests/generic_sumtype_decl_err_c.out b/vlib/v/checker/tests/generic_sumtype_decl_err_c.out index 7e72a7e9f42c11..33adb11405df9f 100644 --- a/vlib/v/checker/tests/generic_sumtype_decl_err_c.out +++ b/vlib/v/checker/tests/generic_sumtype_decl_err_c.out @@ -1,7 +1,7 @@ -vlib/v/checker/tests/generic_sumtype_decl_err_c.vv:7:27: error: generic type name `T` of generic struct `Just` is not mentioned in sumtype `Maybe` +vlib/v/checker/tests/generic_sumtype_decl_err_c.vv:7:27: error: generic type name `T` of generic struct `Just[T]` is not mentioned in sumtype `Maybe[B]` 5 | struct Nothing {} - 6 | + 6 | 7 | type Maybe[B] = Nothing | Just[T] | ~~~~~~~ - 8 | + 8 | 9 | fn main() {