checker: fix regression for generics_test.v

pull/10056/head
Delyan Angelov 2021-05-08 18:23:12 +03:00
parent d8d6e9b901
commit cbf30bd13a
No known key found for this signature in database
GPG Key ID: 66886C0F12D595ED
1 changed files with 11 additions and 3 deletions

View File

@ -2276,12 +2276,20 @@ pub fn (mut c Checker) fn_call(mut call_expr ast.CallExpr) ast.Type {
if !found { if !found {
if v := call_expr.scope.find_var(fn_name) { if v := call_expr.scope.find_var(fn_name) {
if v.typ != 0 { if v.typ != 0 {
vts := c.table.get_type_symbol(c.unwrap_generic(v.typ)) generic_vts := c.table.get_type_symbol(v.typ)
if vts.kind == .function { if generic_vts.kind == .function {
info := vts.info as ast.FnType info := generic_vts.info as ast.FnType
func = info.func func = info.func
found = true found = true
found_in_args = true found_in_args = true
} else {
vts := c.table.get_type_symbol(c.unwrap_generic(v.typ))
if vts.kind == .function {
info := vts.info as ast.FnType
func = info.func
found = true
found_in_args = true
}
} }
} }
} }