parent
5f736dd768
commit
0d53705776
|
@ -3706,6 +3706,9 @@ pub fn (mut c Checker) return_stmt(mut node ast.Return) {
|
|||
mut got_types := []ast.Type{}
|
||||
for expr in node.exprs {
|
||||
typ := c.expr(expr)
|
||||
if typ == ast.void_type {
|
||||
c.error('`$expr` used as value', node.pos)
|
||||
}
|
||||
// Unpack multi return types
|
||||
sym := c.table.get_type_symbol(typ)
|
||||
if sym.kind == .multi_return {
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
vlib/v/checker/tests/return_void_type_err.vv:2:2: error: `println(msg)` used as value
|
||||
1 | fn hello(msg string) ? {
|
||||
2 | return println(msg)
|
||||
| ~~~~~~~~~~~~~~~~~~~
|
||||
3 | }
|
||||
4 |
|
|
@ -0,0 +1,7 @@
|
|||
fn hello(msg string) ? {
|
||||
return println(msg)
|
||||
}
|
||||
|
||||
fn main() {
|
||||
hello('test') ?
|
||||
}
|
Loading…
Reference in New Issue