Mercurial > vim
view runtime/syntax/wast.vim @ 23350:9b86957ddd95 v8.2.2218
patch 8.2.2218: Vim9: failure if passing more args to lambda than expected
Commit: https://github.com/vim/vim/commit/fc0e8f5c3ef51c86cfa4a51f92b264ef79962b9d
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Dec 25 20:24:51 2020 +0100
patch 8.2.2218: Vim9: failure if passing more args to lambda than expected
Problem: Vim9: failure if passing more arguments to a lambda than expected.
Solution: Only put expected arguments on the stack. (closes https://github.com/vim/vim/issues/7548)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 25 Dec 2020 20:30:03 +0100 |
parents | 172f18a3a6cd |
children | 2023f0835f75 |
line wrap: on
line source
" Vim syntax file " Language: WebAssembly " Maintainer: rhysd <lin90162@yahoo.co.jp> " Last Change: Jul 29, 2018 " For bugs, patches and license go to https://github.com/rhysd/vim-wasm if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn cluster wastCluster contains=wastModule,wastInstWithType,wastInstGeneral,wastParamInst,wastControlInst,wastString,wastNamedVar,wastUnnamedVar,wastFloat,wastNumber,wastComment,wastList,wastType " Instructions " https://webassembly.github.io/spec/core/text/instructions.html " Note: memarg (align=,offset=) can be added to memory instructions syn match wastInstWithType "\%((\s*\)\@<=\<\%(i32\|i64\|f32\|f64\|memory\)\.[[:alnum:]_]\+\%(/\%(i32\|i64\|f32\|f64\)\)\=\>\%(\s\+\%(align\|offset\)=\)\=" contained display syn match wastInstGeneral "\%((\s*\)\@<=\<[[:alnum:]_]\+\>" contained display " https://webassembly.github.io/spec/core/text/instructions.html#control-instructions syn match wastControlInst "\%((\s*\)\@<=\<\%(block\|end\|loop\|if\|else\|unreachable\|nop\|br\|br_if\|br_table\|return\|call\|call_indirect\)\>" contained display " https://webassembly.github.io/spec/core/text/instructions.html#parametric-instructions syn match wastParamInst "\%((\s*\)\@<=\<\%(drop\|select\)\>" contained display " Identifiers " https://webassembly.github.io/spec/core/text/values.html#text-id syn match wastNamedVar "$\+[[:alnum:]!#$%&'∗./:=><?@\\^_`~+-]*" contained display syn match wastUnnamedVar "$\+\d\+[[:alnum:]!#$%&'∗./:=><?@\\^_`~+-]\@!" contained display " String literals " https://webassembly.github.io/spec/core/text/values.html#strings syn region wastString start=+"+ skip=+\\\\\|\\"+ end=+"+ contained contains=wastStringSpecial syn match wastStringSpecial "\\\x\x\|\\[tnr'\\\"]\|\\u\x\+" contained containedin=wastString " Float literals " https://webassembly.github.io/spec/core/text/values.html#floating-point syn match wastFloat "\<-\=\d\%(_\=\d\)*\%(\.\d\%(_\=\d\)*\)\=\%([eE][-+]\=\d\%(_\=\d\)*\)\=" display contained syn match wastFloat "\<-\=0x\x\%(_\=\d\)*\%(\.\x\%(_\=\x\)*\)\=\%([pP][-+]\=\d\%(_\=\d\)*\)\=" display contained syn keyword wastFloat inf nan contained " Integer literals " https://webassembly.github.io/spec/core/text/values.html#integers syn match wastNumber "\<-\=\d\%(_\=\d\)*\>" display contained syn match wastNumber "\<-\=0x\x\%(_\=\x\)*\>" display contained " Comments " https://webassembly.github.io/spec/core/text/lexical.html#comments syn region wastComment start=";;" end="$" display syn region wastComment start="(;;\@!" end=";)" syn region wastList matchgroup=wastListDelimiter start="(;\@!" matchgroup=wastListDelimiter end=";\@<!)" contains=@wastCluster " Types " https://webassembly.github.io/spec/core/text/types.html syn keyword wastType i64 i32 f64 f32 param result anyfunc mut contained syn match wastType "\%((\_s*\)\@<=func\%(\_s*[()]\)\@=" display contained " Modules " https://webassembly.github.io/spec/core/text/modules.html syn keyword wastModule module type export import table memory global data elem contained syn match wastModule "\%((\_s*\)\@<=func\%(\_s\+\$\)\@=" display contained syn sync lines=100 hi def link wastModule PreProc hi def link wastListDelimiter Delimiter hi def link wastInstWithType Operator hi def link wastInstGeneral Operator hi def link wastControlInst Statement hi def link wastParamInst Conditional hi def link wastString String hi def link wastStringSpecial Special hi def link wastNamedVar Identifier hi def link wastUnnamedVar PreProc hi def link wastFloat Float hi def link wastNumber Number hi def link wastComment Comment hi def link wastType Type let b:current_syntax = "wast" let &cpo = s:cpo_save unlet s:cpo_save