summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/testdir/test_vim9_disassemble.vim38
-rw-r--r--src/testdir/test_vim9_script.vim8
-rw-r--r--src/version.c2
3 files changed, 48 insertions, 0 deletions
diff --git a/src/testdir/test_vim9_disassemble.vim b/src/testdir/test_vim9_disassemble.vim
index 41aaa2845..1e61853e0 100644
--- a/src/testdir/test_vim9_disassemble.vim
+++ b/src/testdir/test_vim9_disassemble.vim
@@ -2487,6 +2487,44 @@ def Test_debug_for()
res)
enddef
+def s:TryCatch()
+ try
+ echo "try"
+ catch /error/
+ echo "caught"
+ endtry
+enddef
+
+def Test_debug_try_catch()
+ var res = execute('disass debug s:TryCatch')
+ assert_match('<SNR>\d*_TryCatch\_s*' ..
+ 'try\_s*' ..
+ '0 DEBUG line 1-1 varcount 0\_s*' ..
+ '1 TRY catch -> 7, endtry -> 17\_s*' ..
+ 'echo "try"\_s*' ..
+ '2 DEBUG line 2-2 varcount 0\_s*' ..
+ '3 PUSHS "try"\_s*' ..
+ '4 ECHO 1\_s*' ..
+ 'catch /error/\_s*' ..
+ '5 DEBUG line 3-3 varcount 0\_s*' ..
+ '6 JUMP -> 17\_s*' ..
+ '7 DEBUG line 4-3 varcount 0\_s*' ..
+ '8 PUSH v:exception\_s*' ..
+ '9 PUSHS "error"\_s*' ..
+ '10 COMPARESTRING =\~\_s*' ..
+ '11 JUMP_IF_FALSE -> 17\_s*' ..
+ '12 CATCH\_s*' ..
+ 'echo "caught"\_s*' ..
+ '13 DEBUG line 4-4 varcount 0\_s*' ..
+ '14 PUSHS "caught"\_s*' ..
+ '15 ECHO 1\_s*' ..
+ 'endtry\_s*' ..
+ '16 DEBUG line 5-5 varcount 0\_s*' ..
+ '17 ENDTRY\_s*' ..
+ '\d\+ RETURN void',
+ res)
+enddef
+
func s:Legacy() dict
echo 'legacy'
endfunc
diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim
index 767abd485..28dd78b0e 100644
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -1580,6 +1580,14 @@ def Test_if_const_expr()
burp
endif
+ if 0
+ if 1
+ echo nothing
+ elseif 1
+ echo still nothing
+ endif
+ endif
+
# expression with line breaks skipped
if false
('aaa'
diff --git a/src/version.c b/src/version.c
index 503f873df..95f2b5fd3 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 4297,
+/**/
4296,
/**/
4295,