diff src/vim9compile.c @ 24893:1d6242cf1163 v8.2.2984

patch 8.2.2984: Vim9: test fails because of missing return statement Commit: https://github.com/vim/vim/commit/e6174fd58d459722847c76f8c5aa1b08a49c3e0d Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jun 12 18:30:56 2021 +0200 patch 8.2.2984: Vim9: test fails because of missing return statement Problem: Vim9: Test fails because of missing return statement. Solution: When type is unknown set type to void.
author Bram Moolenaar <Bram@vim.org>
date Sat, 12 Jun 2021 18:45:03 +0200
parents 0cba2be8cbd7
children e61a2085c89b
line wrap: on
line diff
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -9596,7 +9596,9 @@ nextline:
 
     if (!cctx.ctx_had_return)
     {
-	if (ufunc->uf_ret_type->tt_type != VAR_VOID)
+	if (ufunc->uf_ret_type->tt_type == VAR_UNKNOWN)
+	    ufunc->uf_ret_type = &t_void;
+	else if (ufunc->uf_ret_type->tt_type != VAR_VOID)
 	{
 	    emsg(_(e_missing_return_statement));
 	    goto erret;