mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
parser: add error for typeof(T), suggesting typeof[T]() instead
This commit is contained in:
parent
d3c679bdcb
commit
692624b47c
@ -223,6 +223,9 @@ fn (mut p Parser) check_expr(precedence int) !ast.Expr {
|
||||
}
|
||||
} else {
|
||||
p.check(.lpar)
|
||||
if p.tok.kind == .name && p.tok.lit.len > 0 && p.tok.lit[0].is_capital() {
|
||||
p.error_with_pos('use `typeof[T]()`, instead of `typeof(T)`', spos)
|
||||
}
|
||||
expr := p.expr(0)
|
||||
p.check(.rpar)
|
||||
if p.tok.kind != .dot && p.tok.line_nr == p.prev_tok.line_nr {
|
||||
|
5
vlib/v/parser/tests/typeof_typename_err.out
Normal file
5
vlib/v/parser/tests/typeof_typename_err.out
Normal file
@ -0,0 +1,5 @@
|
||||
vlib/v/parser/tests/typeof_typename_err.vv:1:29: error: use `typeof[T]()`, instead of `typeof(T)`
|
||||
1 | fn f[T]() { println("type ${typeof(T)}") }
|
||||
| ~~~~~~
|
||||
2 | f[int]()
|
||||
3 | f[string]()
|
5
vlib/v/parser/tests/typeof_typename_err.vv
Normal file
5
vlib/v/parser/tests/typeof_typename_err.vv
Normal file
@ -0,0 +1,5 @@
|
||||
fn f[T]() { println("type ${typeof(T)}") }
|
||||
f[int]()
|
||||
f[string]()
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user