xref: /vim-8.2.3635/runtime/syntax/splint.vim (revision f37506f6)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:	splint (C with lclint/splint Annotations)
3071d4279SBram Moolenaar" Maintainer:	Ralf Wildenhues <[email protected]>
4071d4279SBram Moolenaar" Splint Home:	http://www.splint.org/
55c73622aSBram Moolenaar" Last Change:	$Date: 2004/06/13 20:08:47 $
65c73622aSBram Moolenaar" $Revision: 1.1 $
7071d4279SBram Moolenaar
8071d4279SBram Moolenaar" Note:		Splint annotated files are not detected by default.
9071d4279SBram Moolenaar"		If you want to use this file for highlighting C code,
10071d4279SBram Moolenaar"		please make sure splint.vim is sourced instead of c.vim,
11071d4279SBram Moolenaar"		for example by putting
12071d4279SBram Moolenaar"			/* vim: set filetype=splint : */
13071d4279SBram Moolenaar"		at the end of your code or something like
14071d4279SBram Moolenaar"			au! BufRead,BufNewFile *.c	setfiletype splint
15071d4279SBram Moolenaar"		in your vimrc file or filetype.vim
16071d4279SBram Moolenaar
17071d4279SBram Moolenaar
1889bcfda6SBram Moolenaar" quit when a syntax file was already loaded
1989bcfda6SBram Moolenaarif exists("b:current_syntax")
20071d4279SBram Moolenaar  finish
21071d4279SBram Moolenaarendif
22071d4279SBram Moolenaar
23071d4279SBram Moolenaar" Read the C syntax to start with
24071d4279SBram Moolenaarruntime! syntax/c.vim
25071d4279SBram Moolenaar
26071d4279SBram Moolenaar
27071d4279SBram Moolenaar" FIXME: uses and changes several clusters defined in c.vim
28071d4279SBram Moolenaar"	so watch for changes there
29071d4279SBram Moolenaar
30071d4279SBram Moolenaar" TODO: make a little more grammar explicit
31071d4279SBram Moolenaar"	match flags with hyphen and underscore notation
32071d4279SBram Moolenaar"	match flag expanded forms
33071d4279SBram Moolenaar"	accept other comment char than @
34071d4279SBram Moolenaar
35071d4279SBram Moolenaarsyn case match
36071d4279SBram Moolenaar" splint annotations (taken from 'splint -help annotations')
37071d4279SBram Moolenaarsyn match   splintStateAnnot	contained "\(pre\|post\):\(only\|shared\|owned\|dependent\|observer\|exposed\|isnull\|notnull\)"
38071d4279SBram Moolenaarsyn keyword splintSpecialAnnot  contained special
39071d4279SBram Moolenaarsyn keyword splintSpecTag	contained uses sets defines allocated releases
40071d4279SBram Moolenaarsyn keyword splintModifies	contained modifies
41071d4279SBram Moolenaarsyn keyword splintRequires	contained requires ensures
42071d4279SBram Moolenaarsyn keyword splintGlobals	contained globals
43071d4279SBram Moolenaarsyn keyword splintGlobitem	contained internalState fileSystem
44071d4279SBram Moolenaarsyn keyword splintGlobannot	contained undef killed
45071d4279SBram Moolenaarsyn keyword splintWarning	contained warn
46071d4279SBram Moolenaar
47071d4279SBram Moolenaarsyn keyword splintModitem	contained internalState fileSystem nothing
48071d4279SBram Moolenaarsyn keyword splintReqitem	contained MaxSet MaxRead result
49071d4279SBram Moolenaarsyn keyword splintIter		contained iter yield
50071d4279SBram Moolenaarsyn keyword splintConst		contained constant
51071d4279SBram Moolenaarsyn keyword splintAlt		contained alt
52071d4279SBram Moolenaar
53071d4279SBram Moolenaarsyn keyword splintType		contained abstract concrete mutable immutable refcounted numabstract
54071d4279SBram Moolenaarsyn keyword splintGlobalType	contained unchecked checkmod checked checkedstrict
55071d4279SBram Moolenaarsyn keyword splintMemMgm	contained dependent keep killref only owned shared temp
56071d4279SBram Moolenaarsyn keyword splintAlias		contained unique returned
57071d4279SBram Moolenaarsyn keyword splintExposure	contained observer exposed
58071d4279SBram Moolenaarsyn keyword splintDefState	contained out in partial reldef
59071d4279SBram Moolenaarsyn keyword splintGlobState	contained undef killed
60071d4279SBram Moolenaarsyn keyword splintNullState	contained null notnull relnull
61071d4279SBram Moolenaarsyn keyword splintNullPred	contained truenull falsenull nullwhentrue falsewhennull
62071d4279SBram Moolenaarsyn keyword splintExit		contained exits mayexit trueexit falseexit neverexit
63071d4279SBram Moolenaarsyn keyword splintExec		contained noreturn maynotreturn noreturnwhentrue noreturnwhenfalse alwaysreturns
64071d4279SBram Moolenaarsyn keyword splintSef		contained sef
65071d4279SBram Moolenaarsyn keyword splintDecl		contained unused external
66071d4279SBram Moolenaarsyn keyword splintCase		contained fallthrough
67071d4279SBram Moolenaarsyn keyword splintBreak		contained innerbreak loopbreak switchbreak innercontinue
68071d4279SBram Moolenaarsyn keyword splintUnreach	contained notreached
69071d4279SBram Moolenaarsyn keyword splintSpecFunc	contained printflike scanflike messagelike
70071d4279SBram Moolenaar
71071d4279SBram Moolenaar" TODO: make these region or match
72071d4279SBram Moolenaarsyn keyword splintErrSupp	contained i ignore end t
73071d4279SBram Moolenaarsyn match   splintErrSupp	contained "[it]\d\+\>"
74071d4279SBram Moolenaarsyn keyword splintTypeAcc	contained access noaccess
75071d4279SBram Moolenaar
76071d4279SBram Moolenaarsyn keyword splintMacro		contained notfunction
77071d4279SBram Moolenaarsyn match   splintSpecType	contained "\(\|unsigned\|signed\)integraltype"
78071d4279SBram Moolenaar
79071d4279SBram Moolenaar" Flags taken from 'splint -help flags full' divided in local and global flags
80071d4279SBram Moolenaar"				 Local Flags:
81071d4279SBram Moolenaarsyn keyword splintFlag contained abstract abstractcompare accessall accessczech accessczechoslovak
82071d4279SBram Moolenaarsyn keyword splintFlag contained accessfile accessmodule accessslovak aliasunique allblock
83071d4279SBram Moolenaarsyn keyword splintFlag contained allempty allglobs allimponly allmacros alwaysexits
84071d4279SBram Moolenaarsyn keyword splintFlag contained annotationerror ansi89limits assignexpose badflag bitwisesigned
85071d4279SBram Moolenaarsyn keyword splintFlag contained boolcompare boolfalse boolint boolops booltrue
86071d4279SBram Moolenaarsyn keyword splintFlag contained booltype bounds boundscompacterrormessages boundsread boundswrite
87071d4279SBram Moolenaarsyn keyword splintFlag contained branchstate bufferoverflow bufferoverflowhigh bugslimit casebreak
88071d4279SBram Moolenaarsyn keyword splintFlag contained caseinsensitivefilenames castexpose castfcnptr charindex charint
89071d4279SBram Moolenaarsyn keyword splintFlag contained charintliteral charunsignedchar checkedglobalias checkmodglobalias checkpost
90071d4279SBram Moolenaarsyn keyword splintFlag contained checkstrictglobalias checkstrictglobs codeimponly commentchar commenterror
91071d4279SBram Moolenaarsyn keyword splintFlag contained compdef compdestroy compmempass constmacros constprefix
92071d4279SBram Moolenaarsyn keyword splintFlag contained constprefixexclude constuse continuecomment controlnestdepth cppnames
93071d4279SBram Moolenaarsyn keyword splintFlag contained csvoverwrite czech czechconsts czechfcns czechmacros
94071d4279SBram Moolenaarsyn keyword splintFlag contained czechoslovak czechoslovakconsts czechoslovakfcns czechoslovakmacros czechoslovaktypes
95071d4279SBram Moolenaarsyn keyword splintFlag contained czechoslovakvars czechtypes czechvars debugfcnconstraint declundef
96071d4279SBram Moolenaarsyn keyword splintFlag contained deepbreak deparrays dependenttrans distinctexternalnames distinctinternalnames
97071d4279SBram Moolenaarsyn keyword splintFlag contained duplicatecases duplicatequals elseifcomplete emptyret enumindex
98071d4279SBram Moolenaarsyn keyword splintFlag contained enumint enummembers enummemuse enumprefix enumprefixexclude
99071d4279SBram Moolenaarsyn keyword splintFlag contained evalorder evalorderuncon exitarg exportany exportconst
100071d4279SBram Moolenaarsyn keyword splintFlag contained exportfcn exportheader exportheadervar exportiter exportlocal
101071d4279SBram Moolenaarsyn keyword splintFlag contained exportmacro exporttype exportvar exposetrans externalnamecaseinsensitive
102071d4279SBram Moolenaarsyn keyword splintFlag contained externalnamelen externalprefix externalprefixexclude fcnderef fcnmacros
103071d4279SBram Moolenaarsyn keyword splintFlag contained fcnpost fcnuse fielduse fileextensions filestaticprefix
104071d4279SBram Moolenaarsyn keyword splintFlag contained filestaticprefixexclude firstcase fixedformalarray floatdouble forblock
105071d4279SBram Moolenaarsyn keyword splintFlag contained forcehints forempty forloopexec formalarray formatcode
106071d4279SBram Moolenaarsyn keyword splintFlag contained formatconst formattype forwarddecl freshtrans fullinitblock
107071d4279SBram Moolenaarsyn keyword splintFlag contained globalias globalprefix globalprefixexclude globimponly globnoglobs
108071d4279SBram Moolenaarsyn keyword splintFlag contained globs globsimpmodsnothing globstate globuse gnuextensions
109071d4279SBram Moolenaarsyn keyword splintFlag contained grammar hasyield hints htmlfileformat ifblock
110071d4279SBram Moolenaarsyn keyword splintFlag contained ifempty ignorequals ignoresigns immediatetrans impabstract
111071d4279SBram Moolenaarsyn keyword splintFlag contained impcheckedglobs impcheckedspecglobs impcheckedstatics impcheckedstrictglobs impcheckedstrictspecglobs
112071d4279SBram Moolenaarsyn keyword splintFlag contained impcheckedstrictstatics impcheckmodglobs impcheckmodinternals impcheckmodspecglobs impcheckmodstatics
113071d4279SBram Moolenaarsyn keyword splintFlag contained impconj implementationoptional implictconstraint impouts imptype
114071d4279SBram Moolenaarsyn keyword splintFlag contained includenest incompletetype incondefs incondefslib indentspaces
115071d4279SBram Moolenaarsyn keyword splintFlag contained infloops infloopsuncon initallelements initsize internalglobs
116071d4279SBram Moolenaarsyn keyword splintFlag contained internalglobsnoglobs internalnamecaseinsensitive internalnamelen internalnamelookalike iso99limits
117071d4279SBram Moolenaarsyn keyword splintFlag contained isoreserved isoreservedinternal iterbalance iterloopexec iterprefix
118071d4279SBram Moolenaarsyn keyword splintFlag contained iterprefixexclude iteryield its4low its4moderate its4mostrisky
119071d4279SBram Moolenaarsyn keyword splintFlag contained its4risky its4veryrisky keep keeptrans kepttrans
120071d4279SBram Moolenaarsyn keyword splintFlag contained legacy libmacros likelyboundsread likelyboundswrite likelybool
121071d4279SBram Moolenaarsyn keyword splintFlag contained likelybounds limit linelen lintcomments localprefix
122071d4279SBram Moolenaarsyn keyword splintFlag contained localprefixexclude locindentspaces longint longintegral longsignedintegral
123071d4279SBram Moolenaarsyn keyword splintFlag contained longunsignedintegral longunsignedunsignedintegral loopexec looploopbreak looploopcontinue
124071d4279SBram Moolenaarsyn keyword splintFlag contained loopswitchbreak macroassign macroconstdecl macrodecl macroempty
125071d4279SBram Moolenaarsyn keyword splintFlag contained macrofcndecl macromatchname macroparams macroparens macroredef
126071d4279SBram Moolenaarsyn keyword splintFlag contained macroreturn macrostmt macrounrecog macrovarprefix macrovarprefixexclude
127071d4279SBram Moolenaarsyn keyword splintFlag contained maintype matchanyintegral matchfields mayaliasunique memchecks
128071d4279SBram Moolenaarsyn keyword splintFlag contained memimp memtrans misplacedsharequal misscase modfilesys
129071d4279SBram Moolenaarsyn keyword splintFlag contained modglobs modglobsnomods modglobsunchecked modinternalstrict modnomods
130071d4279SBram Moolenaarsyn keyword splintFlag contained modobserver modobserveruncon mods modsimpnoglobs modstrictglobsnomods
131071d4279SBram Moolenaarsyn keyword splintFlag contained moduncon modunconnomods modunspec multithreaded mustdefine
132071d4279SBram Moolenaarsyn keyword splintFlag contained mustfree mustfreefresh mustfreeonly mustmod mustnotalias
133071d4279SBram Moolenaarsyn keyword splintFlag contained mutrep namechecks needspec nestcomment nestedextern
134071d4279SBram Moolenaarsyn keyword splintFlag contained newdecl newreftrans nextlinemacros noaccess nocomments
135071d4279SBram Moolenaarsyn keyword splintFlag contained noeffect noeffectuncon noparams nopp noret
136071d4279SBram Moolenaarsyn keyword splintFlag contained null nullassign nullderef nullinit nullpass
137071d4279SBram Moolenaarsyn keyword splintFlag contained nullptrarith nullret nullstate nullterminated
138071d4279SBram Moolenaarsyn keyword splintFlag contained numabstract numabstractcast numabstractindex numabstractlit numabstractprint
139071d4279SBram Moolenaarsyn keyword splintFlag contained numenummembers numliteral numstructfields observertrans obviousloopexec
140071d4279SBram Moolenaarsyn keyword splintFlag contained oldstyle onlytrans onlyunqglobaltrans orconstraint overload
141071d4279SBram Moolenaarsyn keyword splintFlag contained ownedtrans paramimptemp paramuse parenfileformat partial
142071d4279SBram Moolenaarsyn keyword splintFlag contained passunknown portability predassign predbool predboolint
143071d4279SBram Moolenaarsyn keyword splintFlag contained predboolothers predboolptr preproc protoparammatch protoparamname
144071d4279SBram Moolenaarsyn keyword splintFlag contained protoparamprefix protoparamprefixexclude ptrarith ptrcompare ptrnegate
145071d4279SBram Moolenaarsyn keyword splintFlag contained quiet readonlystrings readonlytrans realcompare redecl
146071d4279SBram Moolenaarsyn keyword splintFlag contained redef redundantconstraints redundantsharequal refcounttrans relaxquals
147071d4279SBram Moolenaarsyn keyword splintFlag contained relaxtypes repeatunrecog repexpose retalias retexpose
148071d4279SBram Moolenaarsyn keyword splintFlag contained retimponly retval retvalbool retvalint retvalother
149071d4279SBram Moolenaarsyn keyword splintFlag contained sefparams sefuncon shadow sharedtrans shiftimplementation
150071d4279SBram Moolenaarsyn keyword splintFlag contained shiftnegative shortint showallconjs showcolumn showconstraintlocation
151071d4279SBram Moolenaarsyn keyword splintFlag contained showconstraintparens showdeephistory showfunc showloadloc showscan
152071d4279SBram Moolenaarsyn keyword splintFlag contained showsourceloc showsummary sizeofformalarray sizeoftype skipisoheaders
153071d4279SBram Moolenaarsyn keyword splintFlag contained skipposixheaders slashslashcomment slovak slovakconsts slovakfcns
154071d4279SBram Moolenaarsyn keyword splintFlag contained slovakmacros slovaktypes slovakvars specglobimponly specimponly
155071d4279SBram Moolenaarsyn keyword splintFlag contained specmacros specretimponly specstructimponly specundecl specundef
156071d4279SBram Moolenaarsyn keyword splintFlag contained stackref statemerge statetransfer staticinittrans statictrans
157071d4279SBram Moolenaarsyn keyword splintFlag contained strictbranchstate strictdestroy strictops strictusereleased stringliterallen
158071d4279SBram Moolenaarsyn keyword splintFlag contained stringliteralnoroom stringliteralnoroomfinalnull stringliteralsmaller stringliteraltoolong structimponly
159071d4279SBram Moolenaarsyn keyword splintFlag contained superuser switchloopbreak switchswitchbreak syntax sysdirerrors
160071d4279SBram Moolenaarsyn keyword splintFlag contained sysdirexpandmacros sysunrecog tagprefix tagprefixexclude temptrans
161071d4279SBram Moolenaarsyn keyword splintFlag contained tmpcomments toctou topuse trytorecover type
162071d4279SBram Moolenaarsyn keyword splintFlag contained typeprefix typeprefixexclude typeuse uncheckedglobalias uncheckedmacroprefix
163071d4279SBram Moolenaarsyn keyword splintFlag contained uncheckedmacroprefixexclude uniondef unixstandard unqualifiedinittrans unqualifiedtrans
164071d4279SBram Moolenaarsyn keyword splintFlag contained unreachable unrecog unrecogcomments unrecogdirective unrecogflagcomments
165071d4279SBram Moolenaarsyn keyword splintFlag contained unsignedcompare unusedspecial usedef usereleased usevarargs
166071d4279SBram Moolenaarsyn keyword splintFlag contained varuse voidabstract warnflags warnlintcomments warnmissingglobs
167071d4279SBram Moolenaarsyn keyword splintFlag contained warnmissingglobsnoglobs warnposixheaders warnrc warnsysfiles warnunixlib
168071d4279SBram Moolenaarsyn keyword splintFlag contained warnuse whileblock whileempty whileloopexec zerobool
169071d4279SBram Moolenaarsyn keyword splintFlag contained zeroptr
170071d4279SBram Moolenaar"				       Global Flags:
171071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained csv dump errorstream errorstreamstderr errorstreamstdout
172071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained expect f help i isolib
173071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained larchpath lclexpect lclimportdir lcs lh
174071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained load messagestream messagestreamstderr messagestreamstdout mts
175071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained neverinclude nof nolib posixlib posixstrictlib
176071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained showalluses singleinclude skipsysheaders stats streamoverwrite
177071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained strictlib supcounts sysdirs timedist tmpdir
178071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained unixlib unixstrictlib warningstream warningstreamstderr warningstreamstdout
179071d4279SBram Moolenaarsyn keyword splintGlobalFlag contained whichlib
180071d4279SBram Moolenaarsyn match   splintFlagExpr contained "[\+\-\=]" nextgroup=splintFlag,splintGlobalFlag
181071d4279SBram Moolenaar
182071d4279SBram Moolenaar" detect missing /*@ and wrong */
183071d4279SBram Moolenaarsyn match	splintAnnError	"@\*/"
184071d4279SBram Moolenaarsyn cluster	cCommentGroup	add=splintAnnError
185071d4279SBram Moolenaarsyn match	splintAnnError2	"[^@]\*/"hs=s+1 contained
186071d4279SBram Moolenaarsyn region	splintAnnotation start="/\*@" end="@\*/" contains=@splintAnnotElem,cType keepend
187071d4279SBram Moolenaarsyn match	splintShortAnn	"/\*@\*/"
188071d4279SBram Moolenaarsyn cluster	splintAnnotElem	contains=splintStateAnnot,splintSpecialAnnot,splintSpecTag,splintModifies,splintRequires,splintGlobals,splintGlobitem,splintGlobannot,splintWarning,splintModitem,splintIter,splintConst,splintAlt,splintType,splintGlobalType,splintMemMgm,splintAlias,splintExposure,splintDefState,splintGlobState,splintNullState,splintNullPred,splintExit,splintExec,splintSef,splintDecl,splintCase,splintBreak,splintUnreach,splintSpecFunc,splintErrSupp,splintTypeAcc,splintMacro,splintSpecType,splintAnnError2,splintFlagExpr
189071d4279SBram Moolenaarsyn cluster	splintAllStuff	contains=@splintAnnotElem,splintFlag,splintGlobalFlag
190071d4279SBram Moolenaarsyn cluster	cParenGroup	add=@splintAllStuff
191071d4279SBram Moolenaarsyn cluster	cPreProcGroup	add=@splintAllStuff
192071d4279SBram Moolenaarsyn cluster	cMultiGroup	add=@splintAllStuff
193071d4279SBram Moolenaar
194071d4279SBram Moolenaar" Define the default highlighting.
19589bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
196071d4279SBram Moolenaar
197*f37506f6SBram Moolenaarhi def link splintShortAnn		splintAnnotation
198*f37506f6SBram Moolenaarhi def link splintAnnotation	Comment
199*f37506f6SBram Moolenaarhi def link splintAnnError		splintError
200*f37506f6SBram Moolenaarhi def link splintAnnError2	splintError
201*f37506f6SBram Moolenaarhi def link splintFlag		SpecialComment
202*f37506f6SBram Moolenaarhi def link splintGlobalFlag	splintError
203*f37506f6SBram Moolenaarhi def link splintSpecialAnnot	splintAnnKey
204*f37506f6SBram Moolenaarhi def link splintStateAnnot	splintAnnKey
205*f37506f6SBram Moolenaarhi def link splintSpecTag		splintAnnKey
206*f37506f6SBram Moolenaarhi def link splintModifies		splintAnnKey
207*f37506f6SBram Moolenaarhi def link splintRequires		splintAnnKey
208*f37506f6SBram Moolenaarhi def link splintGlobals		splintAnnKey
209*f37506f6SBram Moolenaarhi def link splintGlobitem		Constant
210*f37506f6SBram Moolenaarhi def link splintGlobannot	splintAnnKey
211*f37506f6SBram Moolenaarhi def link splintWarning		splintAnnKey
212*f37506f6SBram Moolenaarhi def link splintModitem		Constant
213*f37506f6SBram Moolenaarhi def link splintIter		splintAnnKey
214*f37506f6SBram Moolenaarhi def link splintConst		splintAnnKey
215*f37506f6SBram Moolenaarhi def link splintAlt		splintAnnKey
216*f37506f6SBram Moolenaarhi def link splintType		splintAnnKey
217*f37506f6SBram Moolenaarhi def link splintGlobalType	splintAnnKey
218*f37506f6SBram Moolenaarhi def link splintMemMgm		splintAnnKey
219*f37506f6SBram Moolenaarhi def link splintAlias		splintAnnKey
220*f37506f6SBram Moolenaarhi def link splintExposure		splintAnnKey
221*f37506f6SBram Moolenaarhi def link splintDefState		splintAnnKey
222*f37506f6SBram Moolenaarhi def link splintGlobState	splintAnnKey
223*f37506f6SBram Moolenaarhi def link splintNullState	splintAnnKey
224*f37506f6SBram Moolenaarhi def link splintNullPred		splintAnnKey
225*f37506f6SBram Moolenaarhi def link splintExit		splintAnnKey
226*f37506f6SBram Moolenaarhi def link splintExec		splintAnnKey
227*f37506f6SBram Moolenaarhi def link splintSef		splintAnnKey
228*f37506f6SBram Moolenaarhi def link splintDecl		splintAnnKey
229*f37506f6SBram Moolenaarhi def link splintCase		splintAnnKey
230*f37506f6SBram Moolenaarhi def link splintBreak		splintAnnKey
231*f37506f6SBram Moolenaarhi def link splintUnreach		splintAnnKey
232*f37506f6SBram Moolenaarhi def link splintSpecFunc		splintAnnKey
233*f37506f6SBram Moolenaarhi def link splintErrSupp		splintAnnKey
234*f37506f6SBram Moolenaarhi def link splintTypeAcc		splintAnnKey
235*f37506f6SBram Moolenaarhi def link splintMacro		splintAnnKey
236*f37506f6SBram Moolenaarhi def link splintSpecType		splintAnnKey
237*f37506f6SBram Moolenaarhi def link splintAnnKey		Type
238*f37506f6SBram Moolenaarhi def link splintError		Error
239071d4279SBram Moolenaar
240071d4279SBram Moolenaar
241071d4279SBram Moolenaarlet b:current_syntax = "splint"
242071d4279SBram Moolenaar
243071d4279SBram Moolenaar" vim: ts=8
244