patch 9.0.1363: crash when :def function has :break in skipped block

Problem:    Crash when :def function has :break in skipped block. (Ernie Rael)
Solution:   Don't generate a jump for a skipped :break. (closes #12077)
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index f9ff3bc..0f28ba0 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 b694119..aa9f884 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1363,
+/**/
     1362,
 /**/
     1361,
diff --git a/src/vim9cmds.c b/src/vim9cmds.c
index fb09780..bc01cd8 100644
--- a/src/vim9cmds.c
+++ b/src/vim9cmds.c
@@ -1440,6 +1440,9 @@
 				   e_break_without_while_or_for, cctx) == FAIL)
 	return NULL;
 
+    if (cctx->ctx_skip == SKIP_YES)
+	return arg;
+
     if (try_scopes > 0)
 	// Inside one or more try/catch blocks we first need to jump to the
 	// "finally" or "endtry" to cleanup.  Then come to the next JUMP
@@ -1449,7 +1452,7 @@
     // Jump to the end of the FOR or WHILE loop.  The instruction index will be
     // filled in later.
     if (compile_jump_to_end(el, JUMP_ALWAYS, 0, cctx) == FAIL)
-	return FAIL;
+	return NULL;
 
     return arg;
 }