runtime(vim): Update base-syntax, match Vim9 boolean and null literals in parens

Commit: 
https://github.com/vim/vim/commit/a9c06429ac2a5366ec177621f2275b166605f681
Author: Doug Kearns <dougkea...@gmail.com>
Date:   Wed Feb 12 20:44:17 2025 +0100

    runtime(vim): Update base-syntax, match Vim9 boolean and null literals in 
parens
    
    - Match Vim9 boolean and null literals in parenthesised expressions and
      function argument lists.
    - Match read-only registers in expressions.
    
    closes: #16622
    
    Signed-off-by: Doug Kearns <dougkea...@gmail.com>
    Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/runtime/syntax/generator/vim.vim.base 
b/runtime/syntax/generator/vim.vim.base
index 452cec2de..ab63de6c7 100644
--- a/runtime/syntax/generator/vim.vim.base
+++ b/runtime/syntax/generator/vim.vim.base
@@ -2,7 +2,7 @@
 " Language:       Vim script
 " Maintainer:     Hirohito Higashi <h.east.727 ATMARK gmail.com>
 "         Doug Kearns <dougkea...@gmail.com>
-" Last Change:    2025 Feb 08
+" Last Change:    2025 Feb 13
 " Former Maintainer: Charles E. Campbell
 
 " DO NOT CHANGE DIRECTLY.
@@ -260,7 +260,7 @@ syn keyword vimBehaveModel  contained       mswin   xterm
 " ====
 syn match vimCall      "\<call\=\>"    skipwhite nextgroup=vimFunc
 
-" Debuggready {{{2
+" Debuggreedy {{{2
 " ===========
 " TODO: special-cased until generalised range/count support is implemented
 syn match      vimDebuggreedy  "\<0\=debugg\%[reedy]\>" contains=vimCount
@@ -305,7 +305,7 @@ syn keyword vimAugroupKey   contained aug[roup]  skipwhite 
nextgroup=vimAugroupBan
 
 " Operators: {{{2
 " =========
-syn cluster    vimOperGroup    
contains=@vimSpecialVar,vimFunc,vimLambda,vimOper,vimOperParen,vimNumber,vimString,vimRegister,@vimContinue,vim9Comment,vimVar,vimBoolean,vim9LambdaParams,vimNull
+syn cluster    vimOperGroup    contains=@vimContinue,@vimExprList,vim9Comment
 syn match      vimOper " \@<!!"                        skipwhite skipnl 
nextgroup=@vimOperContinue,@vimExprList,vimSpecFile
 syn match      vimOper "||\|&&\|[-+*/%.]"              skipwhite skipnl 
nextgroup=@vimOperContinue,@vimExprList,vimSpecFile
 syn match      vimOper "?"                     skipwhite skipnl 
nextgroup=@vimOperContinue,@vimExprList
@@ -703,7 +703,7 @@ syn match   vimRegister     '\<norm\s\+\zs"[a-zA-Z0-9]'
 syn match      vimRegister     '\<normal\s\+\zs"[a-zA-Z0-9]'
 syn match      vimRegister     '@"'
 syn match      vimPlainRegister contained      '"[a-zA-Z0-9\-:.%#*+=]'
-syn match      vimLetRegister  contained       '@["0-9\-a-zA-Z#=*+_/]'
+syn match      vimLetRegister  contained       '@["0-9\-a-zA-Z:.%#=*+~_/]'
 
 syn match      vimAddress      ",\zs[.$]"      skipwhite nextgroup=vimSubst1
 syn match      vimAddress      "%\ze " skipwhite nextgroup=vimString,vimSubst1
diff --git a/runtime/syntax/testdir/dumps/vim9_expr_01.dump 
b/runtime/syntax/testdir/dumps/vim9_expr_01.dump
index 2eafe8c13..597161e76 100644
--- a/runtime/syntax/testdir/dumps/vim9_expr_01.dump
+++ b/runtime/syntax/testdir/dumps/vim9_expr_01.dump
@@ -17,4 +17,4 @@
 |e+0#af5f00255&|c|h|o| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|$+0#e000e06&|B|A|R| +0#0000000&@51
 |e+0#af5f00255&|c|h|o| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|F|a|l|s|e|(+0#e000e06&|)| +0#0000000&@44
 |e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|a| +0#0000000&|?+0#af5f00255&| 
+0#0000000&|@+0#e000e06&|a| +0#0000000&|:+0#af5f00255&| 
+0#0000000&|@+0#e000e06&|b| +0#0000000&@57
-@57|1|9|,|1| @9|1|4|%| 
+@57|1|9|,|1| @9|1|3|%| 
diff --git a/runtime/syntax/testdir/dumps/vim9_expr_02.dump 
b/runtime/syntax/testdir/dumps/vim9_expr_02.dump
index f8df58e7b..4b9842ce6 100644
--- a/runtime/syntax/testdir/dumps/vim9_expr_02.dump
+++ b/runtime/syntax/testdir/dumps/vim9_expr_02.dump
@@ -1,9 +1,10 @@
 |e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|@+0#e000e06&|a| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|@+0#e000e06&|a| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|@+0#e000e06&|b| +0#0000000&@57
+|e+0#af5f00255&|c|h|o| 
+0#0000000&|(+0#e000e06&|t+0#e000002&|r|u|e|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|t+0#e000002&|r|u|e|)+0#e000e06&| 
+0#0000000&|:+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|f+0#e000002&|a|l|s|e|)+0#e000e06&| +0#0000000&@44
 |e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|(+0#e000e06&|0+0#e000002&|)+0#e000e06&| 
+0#0000000&@54
 @75
 |#+0#0000e05&| |F|a|l|s|y| +0#0000000&@67
-@75
->e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|e+0#00e0e07&|x|p|r| +0#0000000&@57
+> @74
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|e+0#00e0e07&|x|p|r| +0#0000000&@57
 @75
 |e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|h|e|L|i|s|t| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|'+0#e000002&|l|i|s|t| |i|s| 
|e|m|p|t|y|'| +0#0000000&@43
 |e+0#af5f00255&|c|h|o| +0#0000000&|G|e|t|N|a|m|e|(+0#e000e06&|)| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|'+0#e000002&|u|n|k|n|o|w|n|'| 
+0#0000000&@47
@@ -16,5 +17,4 @@
 |e+0#af5f00255&|c|h|o| +0#0000000&|t+0#e000002&|r|u|e| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|t+0#e000002&|r|u|e| +0#0000000&@57
 |e+0#af5f00255&|c|h|o| +0#0000000&|1+0#e000002&| +0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|1+0#e000002&| +0#0000000&@63
 |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|f|o@1|"| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|"+0#e000002&|f|o@1|"| +0#0000000&@55
-|e+0#af5f00255&|c|h|o| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&@59
-@57|3|7|,|1| @9|3|5|%| 
+@57|3|7|,|0|-|1| @7|3|2|%| 
diff --git a/runtime/syntax/testdir/dumps/vim9_expr_03.dump 
b/runtime/syntax/testdir/dumps/vim9_expr_03.dump
index 6f824f2a9..80ce23148 100644
--- a/runtime/syntax/testdir/dumps/vim9_expr_03.dump
+++ b/runtime/syntax/testdir/dumps/vim9_expr_03.dump
@@ -1,20 +1,20 @@
-|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&@59
+|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|"+0#e000002&|f|o@1|"| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|"+0#e000002&|f|o@1|"| +0#0000000&@55
+|e+0#af5f00255&|c|h|o| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&@59
 |e+0#af5f00255&|c|h|o| +0#0000000&|g+0#00e0e07&|:|f|o@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|g+0#00e0e07&|:|f|o@1| +0#0000000&@55
 |e+0#af5f00255&|c|h|o| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|$+0#e000e06&|F|O@1| +0#0000000&@57
 |e+0#af5f00255&|c|h|o| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|T|r|u|e|(+0#e000e06&|)| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|a| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|@+0#e000e06&|a| +0#0000000&@61
->e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| +0#0000000&@59
+>e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|a| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|@+0#e000e06&|a| +0#0000000&@61
+|e+0#af5f00255&|c|h|o| 
+0#0000000&|(+0#e000e06&|t+0#e000002&|r|u|e|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|(+0#e000e06&|t+0#e000002&|r|u|e|)+0#e000e06&| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| +0#0000000&@59
+@75
+@75
+|#+0#0000e05&| |F|u|n|c|t|i|o|n| |c|a|l@1|s| +0#0000000&@58
+@75
+|F|o@1|(+0#e000e06&|t+0#e000002&|r|u|e|,+0#0000000&| 
|f+0#e000002&|a|l|s|e|,+0#0000000&| |n+0#e000002&|u|l@1|)+0#e000e06&| 
+0#0000000&@52
 @75
 @75
 |#+0#0000e05&| |C|o|m@1|a|n|d| |{|e|x|p|r|}| |a|r|g|u|m|e|n|t|s| +0#0000000&@48
 @75
 |i+0#af5f00255&|f| +0#0000000&|t+0#e000002&|r|u|e| +0#0000000&@67
 @2|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#e000002&|r|u|e| +0#0000000&@63
-|e+0#af5f00255&|l|s|e|i|f| +0#0000000&|f+0#e000002&|a|l|s|e| +0#0000000&@62
-@2|e+0#af5f00255&|c|h|o| +0#0000000&|f+0#e000002&|a|l|s|e| +0#0000000&@62
-|e+0#af5f00255&|n|d|i|f| +0#0000000&@69
-@75
-|w+0#af5f00255&|h|i|l|e| +0#0000000&|t+0#e000002&|r|u|e| +0#0000000&@64
-@2|b+0#af5f00255&|r|e|a|k| +0#0000000&@67
-|e+0#af5f00255&|n|d|w|h|i|l|e| +0#0000000&@66
-@57|5@1|,|1| @9|5@1|%| 
+@57|5@1|,|1| @9|5|1|%| 
diff --git a/runtime/syntax/testdir/dumps/vim9_expr_04.dump 
b/runtime/syntax/testdir/dumps/vim9_expr_04.dump
index 32a423bd4..c8383bc63 100644
--- a/runtime/syntax/testdir/dumps/vim9_expr_04.dump
+++ b/runtime/syntax/testdir/dumps/vim9_expr_04.dump
@@ -1,20 +1,20 @@
-|e+0#af5f00255#ffffff0|n|d|w|h|i|l|e| +0#0000000&@66
+| +0&#ffffff0@1|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#e000002&|r|u|e| 
+0#0000000&@63
+|e+0#af5f00255&|l|s|e|i|f| +0#0000000&|f+0#e000002&|a|l|s|e| +0#0000000&@62
+@2|e+0#af5f00255&|c|h|o| +0#0000000&|f+0#e000002&|a|l|s|e| +0#0000000&@62
+|e+0#af5f00255&|n|d|i|f| +0#0000000&@69
+@75
+>w+0#af5f00255&|h|i|l|e| +0#0000000&|t+0#e000002&|r|u|e| +0#0000000&@64
+@2|b+0#af5f00255&|r|e|a|k| +0#0000000&@67
+|e+0#af5f00255&|n|d|w|h|i|l|e| +0#0000000&@66
 @75
 |d+0#af5f00255&|e|f| +0#0000000&|F|o@1|(+0#e000e06&|)|:+0#0000000&| 
|b+0#00e0003&|o@1|l| +0#0000000&@59
 @2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|t+0#e000002&|r|u|e| +0#0000000&@61
 |e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
-> @74
+@75
 @75
 |#+0#0000e05&| |I|s@1|u|e| |#|1|4@1|2|3| |(|v|i|m|.|v|i|m|:| |O|p|t| |o|u|t| 
|o|f| |v|i|m|S|e|a|r|c|h|*|)| +0#0000000&@27
 @75
 |:|?+0#e000e06&|t+0#e000002&|r|u|t|h|y| +0#0000000&@66
 |c+0#af5f00255&|o|n|s|t| +0#0000000&|t+0#00e0e07&|r|u|t|h|y|:+0#0000000&| 
|n+0#00e0003&|u|m|b|e|r| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#e000002&|a|l|s|e| +0#0000000&@46
 @4|?+0#af5f00255&| +0#0000000&|(+0#e000e06&|0+0#e000002&| +0#0000000&@66
-@4|)+0#e000e06&| +0#0000000&@69
-@4|:+0#af5f00255&| +0#0000000&|(+0#e000e06&|1+0#e000002&| +0#0000000&@66
-@4|)+0#e000e06&| +0#0000000&@69
-|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| +0#0000000&@63
-@75
-|d+0#af5f00255&|e|f| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@65
-| +0#e000002&@1|:+0#0000000&|?+0#e000e06&|t+0#e000002&|r|u|t|h|y| 
+0#0000000&@64
-@57|7|3|,|0|-|1| @7|7|6|%| 
+@57|7|3|,|1| @9|7|0|%| 
diff --git a/runtime/syntax/testdir/dumps/vim9_expr_05.dump 
b/runtime/syntax/testdir/dumps/vim9_expr_05.dump
index b2fea2145..083705e83 100644
--- a/runtime/syntax/testdir/dumps/vim9_expr_05.dump
+++ b/runtime/syntax/testdir/dumps/vim9_expr_05.dump
@@ -1,20 +1,20 @@
-| +0#e000002#ffffff0@1|:+0#0000000&|?+0#e000e06&|t+0#e000002&|r|u|t|h|y| 
+0#0000000&@64
+| +0&#ffffff0@3|?+0#af5f00255&| +0#0000000&|(+0#e000e06&|0+0#e000002&| 
+0#0000000&@66
+@4|)+0#e000e06&| +0#0000000&@69
+@4|:+0#af5f00255&| +0#0000000&|(+0#e000e06&|1+0#e000002&| +0#0000000&@66
+@4|)+0#e000e06&| +0#0000000&@69
+|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| +0#0000000&@63
+> @74
+|d+0#af5f00255&|e|f| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@65
+| +0#e000002&@1|:+0#0000000&|?+0#e000e06&|t+0#e000002&|r|u|t|h|y| 
+0#0000000&@64
 @2|c+0#af5f00255&|o|n|s|t| +0#0000000&|t+0#00e0e07&|r|u|t|h|y|:+0#0000000&| 
|n+0#00e0003&|u|m|b|e|r| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#e000002&|a|l|s|e| +0#0000000&@44
 @6|?+0#af5f00255&| +0#0000000&|(+0#e000e06&|0+0#e000002&| +0#0000000&@64
 @6|)+0#e000e06&| +0#0000000&@67
 @6|:+0#af5f00255&| +0#0000000&|(+0#e000e06&|1+0#e000002&| +0#0000000&@64
-@6>)+0#e000e06&| +0#0000000&@67
+@6|)+0#e000e06&| +0#0000000&@67
 @2|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| +0#0000000&@61
 |e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
 @75
 @75
 |#+0#0000e05&| |I|s@1|u|e| |#|1|6|2@1|7| |(|V|i|m|s|c|r|i|p|t| |t|e|r|n|a|r|y| 
|e|x|p|r|e|s@1|i|o|n| |h|i|g|h|l|i|g|h|t|i|n|g|)| +0#0000000&@16
 @75
-|v+0#af5f00255&|a|r| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|'+0#e000002&|f|o@1|'| +0#0000000&@24|#+0#0000e05&| |c|o|m@1|e|n|t| 
+0#0000000&@25
-|v+0#af5f00255&|a|r| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|'+0#e000002&|f|o@1|'| +0#0000000&|?+0#af5f00255&| 
+0#0000000&|'+0#e000002&|b|a|r|'| +0#0000000&|:+0#af5f00255&| 
+0#0000000&|'+0#e000002&|b|a|z|'| +0#0000000&@36
-|v+0#af5f00255&|a|r| +0#0000000&|b+0#00e0e07&|a|z| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|'+0#e000002&|f|o@1|'| +0#0000000&@52
-@12|\+0#e000e06&| +0#0000000&|?+0#af5f00255&| 
+0#0000000&|'+0#e000002&|b|a|z|'| +0#0000000&@53
-@12|\+0#e000e06&| +0#0000000&|:+0#af5f00255&| 
+0#0000000&|'+0#e000002&|b|a|r|'| +0#0000000&@53
-|v+0#af5f00255&|a|r| +0#0000000&|q+0#00e0e07&|u|x| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|'+0#e000002&|f|o@1|'| +0#0000000&@52
-@12|?+0#af5f00255&| +0#0000000&|'+0#e000002&|q|u|x|'| 
+0#0000000&@20|#+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@25
-@57|9|1|,|7| @9|9|6|%| 
+@57|9|1|,|0|-|1| @7|8|9|%| 
diff --git a/runtime/syntax/testdir/dumps/vim9_expr_06.dump 
b/runtime/syntax/testdir/dumps/vim9_expr_06.dump
index befcab373..d60bd9dea 100644
--- a/runtime/syntax/testdir/dumps/vim9_expr_06.dump
+++ b/runtime/syntax/testdir/dumps/vim9_expr_06.dump
@@ -1,7 +1,14 @@
-| +0&#ffffff0@11|?+0#af5f00255&| +0#0000000&|'+0#e000002&|q|u|x|'| 
+0#0000000&@20|#+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@25
+| +0&#ffffff0@74
+|v+0#af5f00255&|a|r| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|'+0#e000002&|f|o@1|'| +0#0000000&@24|#+0#0000e05&| |c|o|m@1|e|n|t| 
+0#0000000&@25
+|v+0#af5f00255&|a|r| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|'+0#e000002&|f|o@1|'| +0#0000000&|?+0#af5f00255&| 
+0#0000000&|'+0#e000002&|b|a|r|'| +0#0000000&|:+0#af5f00255&| 
+0#0000000&|'+0#e000002&|b|a|z|'| +0#0000000&@36
+|v+0#af5f00255&|a|r| +0#0000000&|b+0#00e0e07&|a|z| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|'+0#e000002&|f|o@1|'| +0#0000000&@52
+@12|\+0#e000e06&| +0#0000000&|?+0#af5f00255&| 
+0#0000000&|'+0#e000002&|b|a|z|'| +0#0000000&@53
+@12>\+0#e000e06&| +0#0000000&|:+0#af5f00255&| 
+0#0000000&|'+0#e000002&|b|a|r|'| +0#0000000&@53
+|v+0#af5f00255&|a|r| +0#0000000&|q+0#00e0e07&|u|x| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|'+0#e000002&|f|o@1|'| +0#0000000&@52
+@12|?+0#af5f00255&| +0#0000000&|'+0#e000002&|q|u|x|'| 
+0#0000000&@20|#+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@25
 @12|:+0#af5f00255&| +0#0000000&|'+0#e000002&|q|u|x|'| 
+0#0000000&@20|#+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@25
 |e+0#af5f00255&|c|h|o| +0#0000000&|q+0#00e0e07&|u|x| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|'+0#e000002&|q|u@1|x|'| +0#0000000&@56
-> @74
+@75
 |~+0#4040ff13&| @73
 |~| @73
 |~| @73
@@ -10,11 +17,4 @@
 |~| @73
 |~| @73
 |~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-| +0#0000000&@56|1|0|7|,|0|-|1| @6|B|o|t| 
+| +0#0000000&@56|1|0|9|,|1|3| @7|B|o|t| 
diff --git a/runtime/syntax/testdir/dumps/vim9_super_this_keywords3_01.dump 
b/runtime/syntax/testdir/dumps/vim9_super_this_keywords3_01.dump
index f9aa04269..f1c2d2230 100644
--- a/runtime/syntax/testdir/dumps/vim9_super_this_keywords3_01.dump
+++ b/runtime/syntax/testdir/dumps/vim9_super_this_keywords3_01.dump
@@ -9,8 +9,8 @@
 @4|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@64
 |e+0#af5f00255&|n|d|c|l|a|s@1| +0#0000000&@66
 @75
-|e+0#af5f00255&|c|h|o| +0#0000000&|1+0#e000002&| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|A|.|n+0#00e0e07&|e|w|(+0#e000e06&|1+0#e000002&|)+0#e000e06&|.+0#af5f00255&|K+0#0000000&|(+0#e000e06&|)|(|n+0#00e0e07&|u|l@1|)+0#e000e06&|
 +0#0000000&@46
-|e+0#af5f00255&|c|h|o| +0#0000000&|2+0#e000002&| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|B|.|n+0#00e0e07&|e|w|(+0#e000e06&|2+0#e000002&|)+0#e000e06&|.+0#af5f00255&|K+0#0000000&|(+0#e000e06&|)|(|n+0#00e0e07&|u|l@1|)+0#e000e06&|
 +0#0000000&@46
+|e+0#af5f00255&|c|h|o| +0#0000000&|1+0#e000002&| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|A|.|n+0#00e0e07&|e|w|(+0#e000e06&|1+0#e000002&|)+0#e000e06&|.+0#af5f00255&|K+0#0000000&|(+0#e000e06&|)|(|n+0#e000002&|u|l@1|)+0#e000e06&|
 +0#0000000&@46
+|e+0#af5f00255&|c|h|o| +0#0000000&|2+0#e000002&| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|B|.|n+0#00e0e07&|e|w|(+0#e000e06&|2+0#e000002&|)+0#e000e06&|.+0#af5f00255&|K+0#0000000&|(+0#e000e06&|)|(|n+0#e000002&|u|l@1|)+0#e000e06&|
 +0#0000000&@46
 @75
 |~+0#4040ff13&| @73
 |~| @73
diff --git a/runtime/syntax/testdir/dumps/vim9_super_this_keywords_02.dump 
b/runtime/syntax/testdir/dumps/vim9_super_this_keywords_02.dump
index 6ec09d362..feed1359e 100644
--- a/runtime/syntax/testdir/dumps/vim9_super_this_keywords_02.dump
+++ b/runtime/syntax/testdir/dumps/vim9_super_this_keywords_02.dump
@@ -16,5 +16,5 @@
 @2|d+0#af5f00255&|e|f| +0#0000000&|D|e|f|2|(+0#e000e06&|)| +0#0000000&@62
 @4|v+0#af5f00255&|a|r| +0#0000000&|a+0#00e0e07&| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|x+0#00e0e07&| 
+0#0000000&|*+0#af5f00255&| 
+0#0000000&|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|y+0#00e0e07&| 
+0#0000000&|*+0#af5f00255&| 
+0#0000000&|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|z+0#00e0e07&| 
+0#0000000&@35
 @4|v+0#af5f00255&|a|r| +0#0000000&|b+0#00e0e07&| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|[+0#e000e06&|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|x+0#00e0e07&|,+0#0000000&|
 |s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|y+0#00e0e07&|,+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|z+0#00e0e07&|]+0#e000e06&| 
+0#0000000&@35
-@4|v+0#af5f00255&|a|r| +0#0000000&|c+0#00e0e07&| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|{+0#e000e06&|s+0#00e0e07&|u|p|e|r|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|x+0#00e0e07&|,+0#0000000&| 
|t+0#00e0e07&|h|i|s|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|y+0#00e0e07&|,+0#0000000&| 
|t+0#00e0e07&|r|u|e|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|z+0#00e0e07&|}+0#e000e06&| 
+0#0000000&@16
+@4|v+0#af5f00255&|a|r| +0#0000000&|c+0#00e0e07&| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|{+0#e000e06&|s+0#00e0e07&|u|p|e|r|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|x+0#00e0e07&|,+0#0000000&| 
|t+0#00e0e07&|h|i|s|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|y+0#00e0e07&|,+0#0000000&| 
|t+0#e000002&|r|u|e|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|z+0#00e0e07&|}+0#e000e06&| 
+0#0000000&@16
 @57|3|7|,|3| @9|4|5|%| 
diff --git a/runtime/syntax/testdir/dumps/vim9_super_this_keywords_03.dump 
b/runtime/syntax/testdir/dumps/vim9_super_this_keywords_03.dump
index fb023e3c9..934eaa5e0 100644
--- a/runtime/syntax/testdir/dumps/vim9_super_this_keywords_03.dump
+++ b/runtime/syntax/testdir/dumps/vim9_super_this_keywords_03.dump
@@ -1,4 +1,4 @@
-| +0&#ffffff0@3|v+0#af5f00255&|a|r| +0#0000000&|c+0#00e0e07&| 
+0#0000000&|=+0#af5f00255&| 
+0#0000000&|{+0#e000e06&|s+0#00e0e07&|u|p|e|r|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|x+0#00e0e07&|,+0#0000000&| 
|t+0#00e0e07&|h|i|s|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|y+0#00e0e07&|,+0#0000000&| 
|t+0#00e0e07&|r|u|e|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|z+0#00e0e07&|}+0#e000e06&| 
+0#0000000&@16
+| +0&#ffffff0@3|v+0#af5f00255&|a|r| +0#0000000&|c+0#00e0e07&| 
+0#0000000&|=+0#af5f00255&| 
+0#0000000&|{+0#e000e06&|s+0#00e0e07&|u|p|e|r|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|x+0#00e0e07&|,+0#0000000&| 
|t+0#00e0e07&|h|i|s|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|y+0#00e0e07&|,+0#0000000&| 
|t+0#e000002&|r|u|e|:+0#0000000&| 
|s+0#0000001#ffff4012|u|p|e|r|.+0#af5f00255#ffffff0|z+0#00e0e07&|}+0#e000e06&| 
+0#0000000&@16
 @4|v+0#af5f00255&|a|r| +0#0000000&|d+0#00e0e07&| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|{+0#e000e06&|s+0#00e0e07&|u|p|e|r|:+0#0000000&| 
|c+0#00e0e07&|,+0#0000000&| |t+0#00e0e07&|h|i|s|:+0#0000000&| 
|c+0#00e0e07&|}+0#e000e06&| +0#0000000&@43
 @4|e+0#af5f00255&|c|h|o| 
+0#0000000&|c+0#00e0e07&|.+0#af5f00255&|s+0#00e0e07&|u|p|e|r| +0#0000000&@58
 @4|e+0#af5f00255&|c|h|o| 
+0#0000000&|c+0#00e0e07&|.+0#af5f00255&|t+0#00e0e07&|h|i|s| +0#0000000&@59
diff --git a/runtime/syntax/testdir/dumps/vim_expr_01.dump 
b/runtime/syntax/testdir/dumps/vim_expr_01.dump
index 2423dc9e1..c6bb6dbc6 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_01.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_01.dump
@@ -17,4 +17,4 @@
 |e+0#af5f00255&|c|h|o| 
+0#0000000&|'+0#e000002&|f|o@1|'+0#e000e06&@1|'+0#e000002&| +0#0000000&@62
 |e+0#af5f00255&|c|h|o| 
+0#0000000&|'+0#e000002&|f|o@1|'+0#e000e06&@1|b+0#e000002&|a|r|'| +0#0000000&@59
 @75
-@57|1|5|,|1| @10|5|%| 
+@57|1|5|,|1| @10|4|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_02.dump 
b/runtime/syntax/testdir/dumps/vim_expr_02.dump
index d8f3bcea7..1374c3e27 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_02.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_02.dump
@@ -17,4 +17,4 @@
 |e+0#af5f00255&|c|h|o| 
+0#0000000&|$+0#e000002&|'|'+0#e000e06&@1|f+0#e000002&|o@1|'| +0#0000000&@61
 |e+0#af5f00255&|c|h|o| 
+0#0000000&|$+0#e000002&|'|f|o@1|'+0#e000e06&@1|'+0#e000002&| +0#0000000&@61
 |e+0#af5f00255&|c|h|o| 
+0#0000000&|$+0#e000002&|'|f|o@1|'+0#e000e06&@1|b+0#e000002&|a|r|'| 
+0#0000000&@58
-@57|3|2|,|0|-|1| @7|1|2|%| 
+@57|3|2|,|0|-|1| @7|1@1|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_03.dump 
b/runtime/syntax/testdir/dumps/vim_expr_03.dump
index cc6311aa8..8bfd8244e 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_03.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_03.dump
@@ -17,4 +17,4 @@
 |e+0#af5f00255&|c|h|o| +0#0000000&@1|0+0#e000002&|o|3|7@1| +0#0000000&@63
 |e+0#af5f00255&|c|h|o| +0#0000000&@1|0+0#e000002&|O|3|7@1| +0#0000000&@63
 |e+0#af5f00255&|c|h|o| +0#0000000&|-+0#af5f00255&|0+0#e000002&|3|7@1| 
+0#0000000&@64
-@57|5|0|,|1| @9|2|0|%| 
+@57|5|0|,|1| @9|1|9|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_04.dump 
b/runtime/syntax/testdir/dumps/vim_expr_04.dump
index 496b6919f..692c9204c 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_04.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_04.dump
@@ -17,4 +17,4 @@
 |e+0#af5f00255&|c|h|o| +0#0000000&|1+0#e000002&|.|0|E|-|6| +0#0000000&@63
 |e+0#af5f00255&|c|h|o| 
+0#0000000&|-+0#af5f00255&|3+0#e000002&|.|1|4|1|6|e|+|8@1| +0#0000000&@58
 @75
-@57|6|8|,|1| @9|2|9|%| 
+@57|6|8|,|1| @9|2|7|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_05.dump 
b/runtime/syntax/testdir/dumps/vim_expr_05.dump
index 9a327cbae..24e34a244 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_05.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_05.dump
@@ -17,4 +17,4 @@
 @6|\+0#e000e06&|]| +0#0000000&@66
 |e+0#af5f00255&|c|h|o| +0#0000000&|[+0#e000e06&|1+0#e000002&|,+0#0000000&| 
|'+0#e000002&|t|w|o|'|,+0#0000000&| |1+0#e000002&| +0#0000000&|++0#af5f00255&| 
+0#0000000&|2+0#e000002&|,+0#0000000&| |"+0#e000002&|f|o|"| 
+0#0000000&|.+0#af5f00255&@1| +0#0000000&|"+0#e000002&|u|r|"|]+0#e000e06&| 
+0#0000000&@38
 @75
-@57|8|6|,|1| @9|3|7|%| 
+@57|8|6|,|1| @9|3|5|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_06.dump 
b/runtime/syntax/testdir/dumps/vim_expr_06.dump
index b9ddc4fec..b6bb3f76d 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_06.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_06.dump
@@ -3,18 +3,18 @@
 |a|c|e| |i|n| |l|i|s|t| |o|f| |s|t|r|i|n|g|)| +0#0000000&@52
 |l+0#af5f00255&|e|t| +0#0000000&|l+0#00e0e07&| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|[+0#e000e06&|'+0#e000002&|a|'|,+0#0000000&|'+0#e000002&|b|'|,+0#0000000&|'+0#e000002&|c|'|]+0#e000e06&|
 +0#0000000&@53
 @75
->"+0#0000e05&| |O|p|e|r|a|t|o|r|s| +0#0000000&@63
+>"+0#0000e05&| |R|e|g|i|s|t|e|r| +0#0000000&@64
 @75
-|"+0#0000e05&| |T|e|r|n|a|r|y| +0#0000000&@65
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|e+0#00e0e07&|x|p|r| +0#0000000&@51
+|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|"| +0#0000000&@67
+|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|0| +0#0000000&|@+0#e000e06&|1| 
+0#0000000&|@+0#e000e06&|2| +0#0000000&|@+0#e000e06&|3| 
+0#0000000&|@+0#e000e06&|4| +0#0000000&|@+0#e000e06&|5| 
+0#0000000&|@+0#e000e06&|6| +0#0000000&|@+0#e000e06&|7| 
+0#0000000&|@+0#e000e06&|8| +0#0000000&|@+0#e000e06&|9| +0#0000000&@40
+|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|-| +0#0000000&@67
+|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|a| +0#0000000&|@+0#e000e06&|b| 
+0#0000000&|@+0#e000e06&|c| +0#0000000&|@+0#e000e06&|d| 
+0#0000000&|@+0#e000e06&|e| +0#0000000&|@+0#e000e06&|f| 
+0#0000000&|@+0#e000e06&|g| +0#0000000&|@+0#e000e06&|h| 
+0#0000000&|@+0#e000e06&|i| +0#0000000&|@+0#e000e06&|j| 
+0#0000000&|@+0#e000e06&|k| +0#0000000&|@+0#e000e06&|l| 
+0#0000000&|@+0#e000e06&|m| +0#0000000&|@+0#e000e06&|n| 
+0#0000000&|@+0#e000e06&|o| +0#0000000&|@+0#e000e06&|p| 
+0#0000000&|@+0#e000e06&|q| +0#0000000&|@+0#e000e06&|r| 
+0#0000000&|@+0#e000e06&|s| +0#0000000&|@+0#e000e06&|t| 
+0#0000000&|@+0#e000e06&|u| +0#0000000&|@+0#e000e06&|v| 
+0#0000000&|@+0#e000e06&|w| +0#0000000&|@+0#e000e06&
+|x| +0#0000000&|@+0#e000e06&|y| +0#0000000&|@+0#e000e06&|z| +0#0000000&@67
+|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|A| +0#0000000&|@+0#e000e06&|B| 
+0#0000000&|@+0#e000e06&|C| +0#0000000&|@+0#e000e06&|D| 
+0#0000000&|@+0#e000e06&|E| +0#0000000&|@+0#e000e06&|F| 
+0#0000000&|@+0#e000e06&|G| +0#0000000&|@+0#e000e06&|H| 
+0#0000000&|@+0#e000e06&|I| +0#0000000&|@+0#e000e06&|J| 
+0#0000000&|@+0#e000e06&|K| +0#0000000&|@+0#e000e06&|L| 
+0#0000000&|@+0#e000e06&|M| +0#0000000&|@+0#e000e06&|N| 
+0#0000000&|@+0#e000e06&|O| +0#0000000&|@+0#e000e06&|P| 
+0#0000000&|@+0#e000e06&|Q| +0#0000000&|@+0#e000e06&|R| 
+0#0000000&|@+0#e000e06&|S| +0#0000000&|@+0#e000e06&|T| 
+0#0000000&|@+0#e000e06&|U| +0#0000000&|@+0#e000e06&|V| 
+0#0000000&|@+0#e000e06&|W| +0#0000000&|@+0#e000e06&
+|X| +0#0000000&|@+0#e000e06&|Y| +0#0000000&|@+0#e000e06&|Z| +0#0000000&@67
+|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|:| +0#0000000&|@+0#e000e06&|.| 
+0#0000000&|@+0#e000e06&|%| +0#0000000&|@+0#e000e06&|#| 
+0#0000000&|@+0#e000e06&|=| +0#0000000&|@+0#e000e06&|*| 
+0#0000000&|@+0#e000e06&|+| +0#0000000&|@+0#e000e06&|~| 
+0#0000000&|@+0#e000e06&|_| +0#0000000&|@+0#e000e06&|/| +0#0000000&@40
 @75
-|e+0#af5f00255&|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|t|o|p|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| +0#0000000&@45
-|e+0#af5f00255&|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|t|o|p|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&|0@2| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|l|a|s|t|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| +0#0000000&@21
+|"+0#0000e05&| |O|p|e|r|a|t|o|r|s| +0#0000000&@63
 @75
-|e+0#af5f00255&|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| +0#0000000&@60
-@6|\+0#e000e06&| +0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|t|o|p|"| 
+0#0000000&@59
-@6|\+0#e000e06&| +0#0000000&|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&|0@2| +0#0000000&@52
-@6|\+0#e000e06&| +0#0000000&@8|?+0#af5f00255&| 
+0#0000000&|"+0#e000002&|l|a|s|t|"| +0#0000000&@50
-@6|\+0#e000e06&| +0#0000000&@8|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&@52
-|e+0#af5f00255&|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&@58
-@57|1|0|3|,|1| @8|4|6|%| 
+|"+0#0000e05&| |T|e|r|n|a|r|y| +0#0000000&@65
+@57|1|0|3|,|1| @8|4|2|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_07.dump 
b/runtime/syntax/testdir/dumps/vim_expr_07.dump
index ce41dd09a..c2796e50b 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_07.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_07.dump
@@ -1,20 +1,20 @@
-|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&@58
+|"+0#0000e05#ffffff0| |T|e|r|n|a|r|y| +0#0000000&@65
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|e+0#00e0e07&|x|p|r| +0#0000000&@51
+@75
+|e+0#af5f00255&|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|t|o|p|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| +0#0000000&@45
+|e+0#af5f00255&|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|t|o|p|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&|0@2| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|l|a|s|t|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| +0#0000000&@21
+> @74
+|e+0#af5f00255&|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| +0#0000000&@60
+@6|\+0#e000e06&| +0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|t|o|p|"| 
+0#0000000&@59
+@6|\+0#e000e06&| +0#0000000&|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&|0@2| +0#0000000&@52
+@6|\+0#e000e06&| +0#0000000&@8|?+0#af5f00255&| 
+0#0000000&|"+0#e000002&|l|a|s|t|"| +0#0000000&@50
+@6|\+0#e000e06&| +0#0000000&@8|:+0#af5f00255&| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&@52
+|e+0#af5f00255&|c|h|o| +0#0000000&|l+0#00e0e07&|n|u|m| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&|1+0#e000002&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&@58
 @6|\+0#e000e06&| +0#0000000&|"+0#e000002&|t|o|p|"| +0#0000000&|:+0#af5f00255&| 
+0#0000000&@59
 @6|\+0#e000e06&| +0#0000000&|l+0#00e0e07&|n|u|m| +0#0000000&|=+0#af5f00255&@1| 
+0#0000000&|1+0#e000002&|0@2| +0#0000000&|?+0#af5f00255&| +0#0000000&@52
 @6|\+0#e000e06&| +0#0000000&@8|"+0#e000002&|l|a|s|t|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&@50
 @6|\+0#e000e06&| +0#0000000&@8|l+0#00e0e07&|n|u|m| +0#0000000&@54
-> @74
+@75
 |e+0#af5f00255&|c|h|o| +0#0000000&|1+0#e000002&| +0#0000000&|?+0#af5f00255&| 
+0#0000000&|1+0#e000002&| +0#0000000&|:+0#af5f00255&| +0#0000000&|0+0#e000002&| 
+0#0000000&@60
 |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|f|o@1|"| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|f|o@1|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|"+0#e000002&|b|a|r|"| +0#0000000&@48
-|e+0#af5f00255&|c|h|o| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&@54
-|e+0#af5f00255&|c|h|o| +0#0000000&|g+0#00e0e07&|:|f|o@1| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|f|o@1| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|b|a|r| +0#0000000&@48
-|e+0#af5f00255&|c|h|o| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|$+0#e000e06&|B|A|R| +0#0000000&@51
-|e+0#af5f00255&|c|h|o| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|F|a|l|s|e|(+0#e000e06&|)| +0#0000000&@44
-|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|a| +0#0000000&|?+0#af5f00255&| 
+0#0000000&|@+0#e000e06&|a| +0#0000000&|:+0#af5f00255&| 
+0#0000000&|@+0#e000e06&|b| +0#0000000&@57
-|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|(+0#e000e06&|0+0#e000002&|)+0#e000e06&| 
+0#0000000&@54
-@75
-|"+0#0000e05&| |F|a|l|s|y| +0#0000000&@67
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|e+0#00e0e07&|x|p|r| +0#0000000&@57
-@75
-|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|h|e|L|i|s|t| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|'+0#e000002&|l|i|s|t| |i|s| 
|e|m|p|t|y|'| +0#0000000&@43
-@57|1|2|1|,|0|-|1| @6|5|4|%| 
+@57|1@1|9|,|0|-|1| @6|5|0|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_08.dump 
b/runtime/syntax/testdir/dumps/vim_expr_08.dump
index fa3a2fe9d..1b17c0acf 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_08.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_08.dump
@@ -1,20 +1,20 @@
-|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|t+0#00e0e07&|h|e|L|i|s|t| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|'+0#e000002&|l|i|s|t| |i|s| 
|e|m|p|t|y|'| +0#0000000&@43
+|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|"+0#e000002&|f|o@1|"| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|"+0#e000002&|f|o@1|"| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|"+0#e000002&|b|a|r|"| +0#0000000&@48
+|e+0#af5f00255&|c|h|o| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&@54
+|e+0#af5f00255&|c|h|o| +0#0000000&|g+0#00e0e07&|:|f|o@1| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|f|o@1| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|b|a|r| +0#0000000&@48
+|e+0#af5f00255&|c|h|o| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|$+0#e000e06&|B|A|R| +0#0000000&@51
+|e+0#af5f00255&|c|h|o| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|F|a|l|s|e|(+0#e000e06&|)| +0#0000000&@44
+>e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|a| +0#0000000&|?+0#af5f00255&| 
+0#0000000&|@+0#e000e06&|a| +0#0000000&|:+0#af5f00255&| 
+0#0000000&|@+0#e000e06&|b| +0#0000000&@57
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|:+0#af5f00255&| +0#0000000&|(+0#e000e06&|0+0#e000002&|)+0#e000e06&| 
+0#0000000&@54
+@75
+|"+0#0000e05&| |F|a|l|s|y| +0#0000000&@67
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|e+0#00e0e07&|x|p|r| +0#0000000&@57
+@75
+|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|h|e|L|i|s|t| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|'+0#e000002&|l|i|s|t| |i|s| 
|e|m|p|t|y|'| +0#0000000&@43
 |e+0#af5f00255&|c|h|o| +0#0000000&|G|e|t|N|a|m|e|(+0#e000e06&|)| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|'+0#e000002&|u|n|k|n|o|w|n|'| 
+0#0000000&@47
 @75
 |e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|h|e|L|i|s|t| +0#0000000&@62
 @6|\+0#e000e06&| +0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|'+0#e000002&|l|i|s|t| |i|s| |e|m|p|t|y|'| +0#0000000&@48
->e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|h|e|L|i|s|t| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&@59
+|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|h|e|L|i|s|t| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&@59
 @6|\+0#e000e06&| +0#0000000&|'+0#e000002&|l|i|s|t| |i|s| |e|m|p|t|y|'| 
+0#0000000&@51
 @75
-|e+0#af5f00255&|c|h|o| +0#0000000&|1+0#e000002&| +0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|1+0#e000002&| +0#0000000&@63
-|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|f|o@1|"| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|"+0#e000002&|f|o@1|"| +0#0000000&@55
-|e+0#af5f00255&|c|h|o| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&@59
-|e+0#af5f00255&|c|h|o| +0#0000000&|g+0#00e0e07&|:|f|o@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|g+0#00e0e07&|:|f|o@1| +0#0000000&@55
-|e+0#af5f00255&|c|h|o| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|$+0#e000e06&|F|O@1| +0#0000000&@57
-|e+0#af5f00255&|c|h|o| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|T|r|u|e|(+0#e000e06&|)| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|a| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|@+0#e000e06&|a| +0#0000000&@61
-|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| +0#0000000&@59
-@75
-|"+0#0000e05&| |C|o|m|p|a|r|i|s|o|n| |-| |u|s|i|n|g| |'|i|g|n|o|r|c|a|s|e|'| 
+0#0000000&@42
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
-@57|1|3|9|,|1| @8|6|2|%| 
+@57|1|3|7|,|1| @8|5|8|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_09.dump 
b/runtime/syntax/testdir/dumps/vim_expr_09.dump
index 786fbc387..d38fcfd19 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_09.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_09.dump
@@ -1,20 +1,20 @@
-|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
+| +0&#ffffff0@74
+|e+0#af5f00255&|c|h|o| +0#0000000&|1+0#e000002&| +0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|1+0#e000002&| +0#0000000&@63
+|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|f|o@1|"| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|"+0#e000002&|f|o@1|"| +0#0000000&@55
+|e+0#af5f00255&|c|h|o| +0#0000000&|f+0#00e0e07&|o@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&@59
+|e+0#af5f00255&|c|h|o| +0#0000000&|g+0#00e0e07&|:|f|o@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|g+0#00e0e07&|:|f|o@1| +0#0000000&@55
+>e+0#af5f00255&|c|h|o| +0#0000000&|$+0#e000e06&|F|O@1| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|$+0#e000e06&|F|O@1| +0#0000000&@57
+|e+0#af5f00255&|c|h|o| +0#0000000&|T|r|u|e|(+0#e000e06&|)| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|T|r|u|e|(+0#e000e06&|)| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|@+0#e000e06&|a| 
+0#0000000&|?+0#af5f00255&@1| +0#0000000&|@+0#e000e06&|a| +0#0000000&@61
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| 
+0#0000000&|?+0#af5f00255&@1| 
+0#0000000&|(+0#e000e06&|1+0#e000002&|)+0#e000e06&| +0#0000000&@59
+@75
+|"+0#0000e05&| |C|o|m|p|a|r|i|s|o|n| |-| |u|s|i|n|g| |'|i|g|n|o|r|c|a|s|e|'| 
+0#0000000&@42
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&@1| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|=| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&| +0#0000000&@5|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|=| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&| +0#0000000&@5|e+0#00e0e07&|x|p|r| +0#0000000&@53
->e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|=| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|=| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&|~| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|~| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s|n|o|t| +0#0000000&@1|e+0#00e0e07&|x|p|r| 
+0#0000000&@53
-@75
-|"+0#0000e05&| |C|o|m|p|a|r|i|s|o|n| |-| |m|a|t|c|h| |c|a|s|e| +0#0000000&@49
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&@1|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|=|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|#| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|=|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|#| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|=|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&|~|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-@57|1|5|7|,|1| @8|7|1|%| 
+@57|1|5@1|,|1| @8|6@1|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_10.dump 
b/runtime/syntax/testdir/dumps/vim_expr_10.dump
index 6f6eeecd9..f297af5bd 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_10.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_10.dump
@@ -1,20 +1,20 @@
-|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&|~|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|~| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s|n|o|t| +0#0000000&@1|e+0#00e0e07&|x|p|r| 
+0#0000000&@53
+@75
+|"+0#0000e05&| |C|o|m|p|a|r|i|s|o|n| |-| |m|a|t|c|h| |c|a|s|e| +0#0000000&@49
+>e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&@1|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|=|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|#| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|=|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|#| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|=|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&|~|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|~|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s|#| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s|n|o|t|#| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&@53
 @75
->"+0#0000e05&| |C|o|m|p|a|r|i|s|o|n| |-| |i|g|n|o|r|e| |c|a|s|e| +0#0000000&@48
+|"+0#0000e05&| |C|o|m|p|a|r|i|s|o|n| |-| |i|g|n|o|r|e| |c|a|s|e| +0#0000000&@48
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&@1|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
 |e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|=|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|?| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|=|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|?| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|=|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&|~|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|~|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
-|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s|n|o|t|?| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&@53
-@75
-|"+0#0000e05&| |U|n|r|e|p|o|r|t|e|d| |i|s@1|u|e| |(|"|i|s|"| 
|i|n|c|o|r@1|e|c|t|l|y| |m|a|t|c|h|e|s| |a|s| |"+0#e000002&|e|c|h|o| 
|v|i|m|N|u|m|b|e|r| |*|v|i|m|C|o|m@1|a|n|d
-|*| |v|i|m|N|u|m|b|e|r|"|)+0#0000e05&| +0#0000000&@61
-@57|1|7|5|,|1| @8|7|9|%| 
+@57|1|7|3|,|1| @8|7|4|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_11.dump 
b/runtime/syntax/testdir/dumps/vim_expr_11.dump
index ddefe39e4..e9744da43 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_11.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_11.dump
@@ -1,20 +1,20 @@
-|"+0#0000e05#ffffff0| |U|n|r|e|p|o|r|t|e|d| |i|s@1|u|e| |(|"|i|s|"| 
|i|n|c|o|r@1|e|c|t|l|y| |m|a|t|c|h|e|s| |a|s| |"+0#e000002&|e|c|h|o| 
|v|i|m|N|u|m|b|e|r| |*|v|i|m|C|o|m@1|a|n|d
+|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|=|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|?| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|>+0#af5f00255&|=|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|?| +0#0000000&@4|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|<+0#af5f00255&|=|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+>e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|=+0#af5f00255&|~|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|!+0#af5f00255&|~|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s|?| +0#0000000&@3|e+0#00e0e07&|x|p|r| +0#0000000&@53
+|e+0#af5f00255&|c|h|o| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&|i+0#af5f00255&|s|n|o|t|?| +0#0000000&|e+0#00e0e07&|x|p|r| 
+0#0000000&@53
+@75
+|"+0#0000e05&| |U|n|r|e|p|o|r|t|e|d| |i|s@1|u|e| |(|"|i|s|"| 
|i|n|c|o|r@1|e|c|t|l|y| |m|a|t|c|h|e|s| |a|s| |"+0#e000002&|e|c|h|o| 
|v|i|m|N|u|m|b|e|r| |*|v|i|m|C|o|m@1|a|n|d
 |*| |v|i|m|N|u|m|b|e|r|"|)+0#0000e05&| +0#0000000&@61
 |e+0#af5f00255&|c|h|o| +0#0000000&|4+0#e000002&|2| 
+0#0000000&|i+0#af5f00255&|s| +0#0000000&|4+0#e000002&|2| +0#0000000&@61
 @75
 |"+0#0000e05&| |L|i|n|e| |c|o|n|t|i|n|u|a|t|i|o|n| +0#0000000&@55
->l+0#af5f00255&|e|t| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|++0#af5f00255&| +0#0000000&@59
-@6|\+0#e000e06&| +0#0000000&@67
-@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58
-@6|\+0#e000e06&| +0#0000000&@67
-@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58
-@6|\+0#e000e06&| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&|++0#af5f00255&| 
+0#0000000&@61
-@6|\+0#e000e06&| +0#0000000&|"+0#e000002&|b|a|z|"| +0#0000000&@61
-@75
 |l+0#af5f00255&|e|t| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|++0#af5f00255&| +0#0000000&@59
-@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58
 @6|\+0#e000e06&| +0#0000000&@67
 @6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58
 @6|\+0#e000e06&| +0#0000000&@67
-@6|\+0#e000e06&| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&|++0#af5f00255&| 
+0#0000000&@61
-@57|1|9|1|,|1| @8|8|7|%| 
+@57|1|9|1|,|1| @8|8|1|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_12.dump 
b/runtime/syntax/testdir/dumps/vim_expr_12.dump
index 4accca7ea..b6ce12685 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_12.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_12.dump
@@ -1,20 +1,20 @@
-| +0&#ffffff0@5|\+0#e000e06&| +0#0000000&|b+0#00e0e07&|a|r| 
+0#0000000&|++0#af5f00255&| +0#0000000&@61
+| +0&#ffffff0@5|\+0#e000e06&| +0#0000000&@67
+@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58
+@6|\+0#e000e06&| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&|++0#af5f00255&| 
+0#0000000&@61
 @6|\+0#e000e06&| +0#0000000&|"+0#e000002&|b|a|z|"| +0#0000000&@61
 @75
+>l+0#af5f00255&|e|t| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|++0#af5f00255&| +0#0000000&@59
+@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58
+@6|\+0#e000e06&| +0#0000000&@67
+@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58
+@6|\+0#e000e06&| +0#0000000&@67
+@6|\+0#e000e06&| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&|++0#af5f00255&| 
+0#0000000&@61
+@6|\+0#e000e06&| +0#0000000&|"+0#e000002&|b|a|z|"| +0#0000000&@61
 @75
-|"+0#0000e05&| |I|s@1|u|e| |#|1|6|2@1|1| |(|v|i|m|S|t|r|i|n|g| |b|e|c|o|m|e|s| 
|v|i|m|V|a|r| |w|h|e|n| |p|r|e|c|e|d|e|d| |b|y| |!|)| +0#0000000&@14
->l+0#af5f00255&|e|t| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|!+0#af5f00255&|'+0#e000002&|g|:|b|a|r|'|-+0#af5f00255&|>|e+0#00e0e07&|x|i|s|t|s|(+0#e000e06&|)|
 +0#0000000&@46
-@75
+|"+0#0000e05&| |F|u|n|c|t|i|o|n| |c|a|l@1|s| +0#0000000&@58
 @75
-|"+0#0000e05&| |I|s@1|u|e| |#|1|4@1|2|3| |(|v|i|m|.|v|i|m|:| |O|p|t| |o|u|t| 
|o|f| |v|i|m|S|e|a|r|c|h|*|)| +0#0000000&@27
+|c+0#af5f00255&|a|l@1| 
+0#0000000&|F|o@1|(+0#e000e06&|v+0#00e0e07&|:|t|r|u|e|,+0#0000000&| 
|v+0#00e0e07&|:|f|a|l|s|e|,+0#0000000&| |v+0#00e0e07&|:|n|u|l@1|)+0#e000e06&| 
+0#0000000&@41
 @75
-|?+0#e000e06&|t+0#e000002&|r|u|t|h|y| +0#0000000&@67
-|l+0#af5f00255&|e|t| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| 
+0#0000000&|=+0#af5f00255&| +0#0000000&|0+0#e000002&| +0#0000000&@60
-|\+0#e000e06&| +0#0000000&@2|?+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|0+0#e000002&| +0#0000000&@66
-|\+0#e000e06&| +0#0000000&@2|)+0#e000e06&| +0#0000000&@69
-|\+0#e000e06&| +0#0000000&@2|:+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|1+0#e000002&| +0#0000000&@66
-|\+0#e000e06&| +0#0000000&@2|)+0#e000e06&| +0#0000000&@69
-|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| +0#0000000&@63
 @75
-|f+0#af5f00255&|u|n|c|t|i|o|n| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@60
-@57|2|0|9|,|1| @8|9|5|%| 
+|"+0#0000e05&| |I|s@1|u|e| |#|1|6|2@1|1| |(|v|i|m|S|t|r|i|n|g| |b|e|c|o|m|e|s| 
|v|i|m|V|a|r| |w|h|e|n| |p|r|e|c|e|d|e|d| |b|y| |!|)| +0#0000000&@14
+@57|2|0|8|,|1| @8|8|9|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_13.dump 
b/runtime/syntax/testdir/dumps/vim_expr_13.dump
index f5644bd08..56ae4a1a5 100644
--- a/runtime/syntax/testdir/dumps/vim_expr_13.dump
+++ b/runtime/syntax/testdir/dumps/vim_expr_13.dump
@@ -1,20 +1,20 @@
-|f+0#af5f00255#ffffff0|u|n|c|t|i|o|n| +0#0000000&|F|o@1|(+0#e000e06&|)| 
+0#0000000&@60
+|"+0#0000e05#ffffff0| |I|s@1|u|e| |#|1|6|2@1|1| |(|v|i|m|S|t|r|i|n|g| 
|b|e|c|o|m|e|s| |v|i|m|V|a|r| |w|h|e|n| |p|r|e|c|e|d|e|d| |b|y| |!|)| 
+0#0000000&@14
+|l+0#af5f00255&|e|t| +0#0000000&|b+0#00e0e07&|a|r| +0#0000000&|=+0#af5f00255&| 
+0#0000000&|!+0#af5f00255&|'+0#e000002&|g|:|b|a|r|'|-+0#af5f00255&|>|e+0#00e0e07&|x|i|s|t|s|(+0#e000e06&|)|
 +0#0000000&@46
+@75
+@75
+|"+0#0000e05&| |I|s@1|u|e| |#|1|4@1|2|3| |(|v|i|m|.|v|i|m|:| |O|p|t| |o|u|t| 
|o|f| |v|i|m|S|e|a|r|c|h|*|)| +0#0000000&@27
+> @74
+|?+0#e000e06&|t+0#e000002&|r|u|t|h|y| +0#0000000&@67
+|l+0#af5f00255&|e|t| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| 
+0#0000000&|=+0#af5f00255&| +0#0000000&|0+0#e000002&| +0#0000000&@60
+|\+0#e000e06&| +0#0000000&@2|?+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|0+0#e000002&| +0#0000000&@66
+|\+0#e000e06&| +0#0000000&@2|)+0#e000e06&| +0#0000000&@69
+|\+0#e000e06&| +0#0000000&@2|:+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|1+0#e000002&| +0#0000000&@66
+|\+0#e000e06&| +0#0000000&@2|)+0#e000e06&| +0#0000000&@69
+|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| +0#0000000&@63
+@75
+|f+0#af5f00255&|u|n|c|t|i|o|n| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@60
 | +0#e000002&@1|?+0#e000e06&|t+0#e000002&|r|u|t|h|y| +0#0000000&@65
 @2|l+0#af5f00255&|e|t| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| 
+0#0000000&|=+0#af5f00255&| +0#0000000&|0+0#e000002&| +0#0000000&@58
 @2|\+0#e000e06&| +0#0000000&@2|?+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|0+0#e000002&| +0#0000000&@64
 @2|\+0#e000e06&| +0#0000000&@2|)+0#e000e06&| +0#0000000&@67
-@2>\+0#e000e06&| +0#0000000&@2|:+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|1+0#e000002&| +0#0000000&@64
-@2|\+0#e000e06&| +0#0000000&@2|)+0#e000e06&| +0#0000000&@67
-@2|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| +0#0000000&@61
-|e+0#af5f00255&|n|d|f|u|n|c|t|i|o|n| +0#0000000&@63
-@75
-|~+0#4040ff13&| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-| +0#0000000&@56|2@1|7|,|3| @8|B|o|t| 
+@57|2@1|6|,|0|-|1| @6|9|7|%| 
diff --git a/runtime/syntax/testdir/dumps/vim_expr_14.dump 
b/runtime/syntax/testdir/dumps/vim_expr_14.dump
new file mode 100644
index 000000000..2063d8035
--- /dev/null
+++ b/runtime/syntax/testdir/dumps/vim_expr_14.dump
@@ -0,0 +1,20 @@
+| +0&#ffffff0@1|\+0#e000e06&| +0#0000000&@2|)+0#e000e06&| +0#0000000&@67
+@2|\+0#e000e06&| +0#0000000&@2|:+0#af5f00255&| 
+0#0000000&|(+0#e000e06&|1+0#e000002&| +0#0000000&@64
+@2|\+0#e000e06&| +0#0000000&@2|)+0#e000e06&| +0#0000000&@67
+@2|e+0#af5f00255&|c|h|o| +0#0000000&|t+0#00e0e07&|r|u|t|h|y| +0#0000000&@61
+|e+0#af5f00255&|n|d|f|u|n|c|t|i|o|n| +0#0000000&@63
+> @74
+|~+0#4040ff13&| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+| +0#0000000&@56|2|4@1|,|0|-|1| @6|B|o|t| 
diff --git a/runtime/syntax/testdir/input/vim9_expr.vim 
b/runtime/syntax/testdir/input/vim9_expr.vim
index 7faaa5fbf..fd9cbb009 100644
--- a/runtime/syntax/testdir/input/vim9_expr.vim
+++ b/runtime/syntax/testdir/input/vim9_expr.vim
@@ -30,6 +30,7 @@ echo g:foo ? g:foo : g:bar
 echo $FOO ? $FOO : $BAR
 echo True() ? True() : False()
 echo @a ? @a : @b
+echo (true) ? (true) : (false)
 echo (1) ? (1) : (0)
 
 # Falsy
@@ -52,9 +53,15 @@ echo g:foo ?? g:foo
 echo $FOO ?? $FOO
 echo True() ?? True()
 echo @a ?? @a
+echo (true) ?? (true)
 echo (1) ?? (1)
 
 
+# Function calls
+
+Foo(true, false, null)
+
+
 # Command {expr} arguments
 
 if true
diff --git a/runtime/syntax/testdir/input/vim_expr.vim 
b/runtime/syntax/testdir/input/vim_expr.vim
index ddaf51907..d71166d91 100644
--- a/runtime/syntax/testdir/input/vim_expr.vim
+++ b/runtime/syntax/testdir/input/vim_expr.vim
@@ -100,6 +100,15 @@ echo [1, 'two', 1 + 2, "fo" .. "ur"]
 " Issue #5830 (Incorrect syntax highlighting in Vim script when omitting space 
in list of string)
 let l = ['a','b','c']
 
+" Register
+
+echo @" 
+echo @0 @1 @2 @3 @4 @5 @6 @7 @8 @9
+echo @-
+echo @a @b @c @d @e @f @g @h @i @j @k @l @m @n @o @p @q @r @s @t @u @v @w @x 
@y @z
+echo @A @B @C @D @E @F @G @H @I @J @K @L @M @N @O @P @Q @R @S @T @U @V @W @X 
@Y @Z
+echo @: @. @% @# @= @* @+ @~ @_ @/
+
 " Operators
 
 " Ternary
@@ -204,6 +213,10 @@ let foo = foo +
       \ bar +
       \ "baz"
 
+" Function calls
+
+call Foo(v:true, v:false, v:null)
+
 
 " Issue #16221 (vimString becomes vimVar when preceded by !)
 let bar = !'g:bar'->exists()
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim
index 854e3e0e5..0d4082aac 100644
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -2,7 +2,7 @@
 " Language:       Vim script
 " Maintainer:     Hirohito Higashi <h.east.727 ATMARK gmail.com>
 "         Doug Kearns <dougkea...@gmail.com>
-" Last Change:    2025 Feb 08
+" Last Change:    2025 Feb 13
 " Former Maintainer: Charles E. Campbell
 
 " DO NOT CHANGE DIRECTLY.
@@ -298,7 +298,7 @@ syn keyword vimBehaveModel  contained       mswin   xterm
 " ====
 syn match vimCall      "\<call\=\>"    skipwhite nextgroup=vimFunc
 
-" Debuggready {{{2
+" Debuggreedy {{{2
 " ===========
 " TODO: special-cased until generalised range/count support is implemented
 syn match      vimDebuggreedy  "\<0\=debugg\%[reedy]\>" contains=vimCount
@@ -343,7 +343,7 @@ syn keyword vimAugroupKey   contained aug[roup]  skipwhite 
nextgroup=vimAugroupBan
 
 " Operators: {{{2
 " =========
-syn cluster    vimOperGroup    
contains=@vimSpecialVar,vimFunc,vimLambda,vimOper,vimOperParen,vimNumber,vimString,vimRegister,@vimContinue,vim9Comment,vimVar,vimBoolean,vim9LambdaParams,vimNull
+syn cluster    vimOperGroup    contains=@vimContinue,@vimExprList,vim9Comment
 syn match      vimOper " \@<!!"                        skipwhite skipnl 
nextgroup=@vimOperContinue,@vimExprList,vimSpecFile
 syn match      vimOper "||\|&&\|[-+*/%.]"              skipwhite skipnl 
nextgroup=@vimOperContinue,@vimExprList,vimSpecFile
 syn match      vimOper "?"                     skipwhite skipnl 
nextgroup=@vimOperContinue,@vimExprList
@@ -743,7 +743,7 @@ syn match   vimRegister     '\<norm\s\+\zs"[a-zA-Z0-9]'
 syn match      vimRegister     '\<normal\s\+\zs"[a-zA-Z0-9]'
 syn match      vimRegister     '@"'
 syn match      vimPlainRegister contained      '"[a-zA-Z0-9\-:.%#*+=]'
-syn match      vimLetRegister  contained       '@["0-9\-a-zA-Z#=*+_/]'
+syn match      vimLetRegister  contained       '@["0-9\-a-zA-Z:.%#=*+~_/]'
 
 syn match      vimAddress      ",\zs[.$]"      skipwhite nextgroup=vimSubst1
 syn match      vimAddress      "%\ze " skipwhite nextgroup=vimString,vimSubst1

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion visit 
https://groups.google.com/d/msgid/vim_dev/E1tiIu2-0056cg-8n%40256bit.org.

Raspunde prin e-mail lui