Skip to content

Commit

Permalink
checker: update generic syntax for error message (#20269)
Browse files Browse the repository at this point in the history
  • Loading branch information
Delta456 committed Dec 25, 2023
1 parent 113da28 commit 2301132
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
4 changes: 2 additions & 2 deletions vlib/v/checker/checker.v
Expand Up @@ -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)
}
Expand Down
6 changes: 3 additions & 3 deletions 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<T>` is not mentioned in sumtype `Maybe<B>`
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() {

0 comments on commit 2301132

Please sign in to comment.