patch 9.0.1556: Vim9: error for missing "return" after "throw"

Problem:    Vim9: error for missing "return" after "throw".
Solution:   Set had_return flag for "throw". (closes #12262)
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index 2965afa..ffb8de4 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
Binary files differ
diff --git a/src/version.c b/src/version.c
index 292f228..c0c1ca0 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1556,
+/**/
     1555,
 /**/
     1554,
diff --git a/src/vim9compile.c b/src/vim9compile.c
index 477f5ee..b894c6f 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -3611,6 +3611,7 @@
 		    break;
 	    case CMD_throw:
 		    line = compile_throw(p, &cctx);
+		    cctx.ctx_had_return = TRUE;
 		    break;
 
 	    case CMD_eval: