annotate runtime/syntax/splint.vim @ 817:6897668c467f

updated for version 7.0c03
author vimboss
date Wed, 29 Mar 2006 21:06:37 +0000
parents 3fc0f57ecb91
children 7bc41231fbc7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " Vim syntax file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 " Language: splint (C with lclint/splint Annotations)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 " Maintainer: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4 " Splint Home: http://www.splint.org/
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 " Last Change: $Date$
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6 " $Revision$
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8 " Note: Splint annotated files are not detected by default.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 " If you want to use this file for highlighting C code,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 " please make sure splint.vim is sourced instead of c.vim,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 " for example by putting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 " /* vim: set filetype=splint : */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 " at the end of your code or something like
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 " au! BufRead,BufNewFile *.c setfiletype splint
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 " in your vimrc file or filetype.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 " For version 5.x: Clear all syntax items
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 " For version 6.x: Quit when a syntax file was already loaded
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 if version < 600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 syntax clear
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 elseif exists("b:current_syntax")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 " Read the C syntax to start with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 if version < 600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 so <sfile>:p:h/c.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 runtime! syntax/c.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 " FIXME: uses and changes several clusters defined in c.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35 " so watch for changes there
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 " TODO: make a little more grammar explicit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 " match flags with hyphen and underscore notation
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 " match flag expanded forms
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 " accept other comment char than @
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 syn case match
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 " splint annotations (taken from 'splint -help annotations')
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 syn match splintStateAnnot contained "\(pre\|post\):\(only\|shared\|owned\|dependent\|observer\|exposed\|isnull\|notnull\)"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 syn keyword splintSpecialAnnot contained special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 syn keyword splintSpecTag contained uses sets defines allocated releases
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
47 syn keyword splintModifies contained modifies
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 syn keyword splintRequires contained requires ensures
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
49 syn keyword splintGlobals contained globals
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 syn keyword splintGlobitem contained internalState fileSystem
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 syn keyword splintGlobannot contained undef killed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 syn keyword splintWarning contained warn
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54 syn keyword splintModitem contained internalState fileSystem nothing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 syn keyword splintReqitem contained MaxSet MaxRead result
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56 syn keyword splintIter contained iter yield
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57 syn keyword splintConst contained constant
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 syn keyword splintAlt contained alt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60 syn keyword splintType contained abstract concrete mutable immutable refcounted numabstract
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 syn keyword splintGlobalType contained unchecked checkmod checked checkedstrict
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 syn keyword splintMemMgm contained dependent keep killref only owned shared temp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 syn keyword splintAlias contained unique returned
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 syn keyword splintExposure contained observer exposed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 syn keyword splintDefState contained out in partial reldef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 syn keyword splintGlobState contained undef killed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 syn keyword splintNullState contained null notnull relnull
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 syn keyword splintNullPred contained truenull falsenull nullwhentrue falsewhennull
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69 syn keyword splintExit contained exits mayexit trueexit falseexit neverexit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70 syn keyword splintExec contained noreturn maynotreturn noreturnwhentrue noreturnwhenfalse alwaysreturns
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 syn keyword splintSef contained sef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 syn keyword splintDecl contained unused external
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 syn keyword splintCase contained fallthrough
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 syn keyword splintBreak contained innerbreak loopbreak switchbreak innercontinue
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 syn keyword splintUnreach contained notreached
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 syn keyword splintSpecFunc contained printflike scanflike messagelike
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78 " TODO: make these region or match
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 syn keyword splintErrSupp contained i ignore end t
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 syn match splintErrSupp contained "[it]\d\+\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 syn keyword splintTypeAcc contained access noaccess
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83 syn keyword splintMacro contained notfunction
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 syn match splintSpecType contained "\(\|unsigned\|signed\)integraltype"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86 " Flags taken from 'splint -help flags full' divided in local and global flags
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87 " Local Flags:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 syn keyword splintFlag contained abstract abstractcompare accessall accessczech accessczechoslovak
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89 syn keyword splintFlag contained accessfile accessmodule accessslovak aliasunique allblock
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90 syn keyword splintFlag contained allempty allglobs allimponly allmacros alwaysexits
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 syn keyword splintFlag contained annotationerror ansi89limits assignexpose badflag bitwisesigned
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 syn keyword splintFlag contained boolcompare boolfalse boolint boolops booltrue
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93 syn keyword splintFlag contained booltype bounds boundscompacterrormessages boundsread boundswrite
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 syn keyword splintFlag contained branchstate bufferoverflow bufferoverflowhigh bugslimit casebreak
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 syn keyword splintFlag contained caseinsensitivefilenames castexpose castfcnptr charindex charint
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 syn keyword splintFlag contained charintliteral charunsignedchar checkedglobalias checkmodglobalias checkpost
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97 syn keyword splintFlag contained checkstrictglobalias checkstrictglobs codeimponly commentchar commenterror
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 syn keyword splintFlag contained compdef compdestroy compmempass constmacros constprefix
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99 syn keyword splintFlag contained constprefixexclude constuse continuecomment controlnestdepth cppnames
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 syn keyword splintFlag contained csvoverwrite czech czechconsts czechfcns czechmacros
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 syn keyword splintFlag contained czechoslovak czechoslovakconsts czechoslovakfcns czechoslovakmacros czechoslovaktypes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102 syn keyword splintFlag contained czechoslovakvars czechtypes czechvars debugfcnconstraint declundef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 syn keyword splintFlag contained deepbreak deparrays dependenttrans distinctexternalnames distinctinternalnames
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 syn keyword splintFlag contained duplicatecases duplicatequals elseifcomplete emptyret enumindex
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 syn keyword splintFlag contained enumint enummembers enummemuse enumprefix enumprefixexclude
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 syn keyword splintFlag contained evalorder evalorderuncon exitarg exportany exportconst
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 syn keyword splintFlag contained exportfcn exportheader exportheadervar exportiter exportlocal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 syn keyword splintFlag contained exportmacro exporttype exportvar exposetrans externalnamecaseinsensitive
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109 syn keyword splintFlag contained externalnamelen externalprefix externalprefixexclude fcnderef fcnmacros
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 syn keyword splintFlag contained fcnpost fcnuse fielduse fileextensions filestaticprefix
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 syn keyword splintFlag contained filestaticprefixexclude firstcase fixedformalarray floatdouble forblock
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112 syn keyword splintFlag contained forcehints forempty forloopexec formalarray formatcode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113 syn keyword splintFlag contained formatconst formattype forwarddecl freshtrans fullinitblock
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114 syn keyword splintFlag contained globalias globalprefix globalprefixexclude globimponly globnoglobs
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115 syn keyword splintFlag contained globs globsimpmodsnothing globstate globuse gnuextensions
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116 syn keyword splintFlag contained grammar hasyield hints htmlfileformat ifblock
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117 syn keyword splintFlag contained ifempty ignorequals ignoresigns immediatetrans impabstract
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118 syn keyword splintFlag contained impcheckedglobs impcheckedspecglobs impcheckedstatics impcheckedstrictglobs impcheckedstrictspecglobs
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119 syn keyword splintFlag contained impcheckedstrictstatics impcheckmodglobs impcheckmodinternals impcheckmodspecglobs impcheckmodstatics
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 syn keyword splintFlag contained impconj implementationoptional implictconstraint impouts imptype
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 syn keyword splintFlag contained includenest incompletetype incondefs incondefslib indentspaces
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122 syn keyword splintFlag contained infloops infloopsuncon initallelements initsize internalglobs
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123 syn keyword splintFlag contained internalglobsnoglobs internalnamecaseinsensitive internalnamelen internalnamelookalike iso99limits
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124 syn keyword splintFlag contained isoreserved isoreservedinternal iterbalance iterloopexec iterprefix
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 syn keyword splintFlag contained iterprefixexclude iteryield its4low its4moderate its4mostrisky
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
126 syn keyword splintFlag contained its4risky its4veryrisky keep keeptrans kepttrans
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
127 syn keyword splintFlag contained legacy libmacros likelyboundsread likelyboundswrite likelybool
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
128 syn keyword splintFlag contained likelybounds limit linelen lintcomments localprefix
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129 syn keyword splintFlag contained localprefixexclude locindentspaces longint longintegral longsignedintegral
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130 syn keyword splintFlag contained longunsignedintegral longunsignedunsignedintegral loopexec looploopbreak looploopcontinue
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 syn keyword splintFlag contained loopswitchbreak macroassign macroconstdecl macrodecl macroempty
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 syn keyword splintFlag contained macrofcndecl macromatchname macroparams macroparens macroredef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 syn keyword splintFlag contained macroreturn macrostmt macrounrecog macrovarprefix macrovarprefixexclude
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134 syn keyword splintFlag contained maintype matchanyintegral matchfields mayaliasunique memchecks
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 syn keyword splintFlag contained memimp memtrans misplacedsharequal misscase modfilesys
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 syn keyword splintFlag contained modglobs modglobsnomods modglobsunchecked modinternalstrict modnomods
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137 syn keyword splintFlag contained modobserver modobserveruncon mods modsimpnoglobs modstrictglobsnomods
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 syn keyword splintFlag contained moduncon modunconnomods modunspec multithreaded mustdefine
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139 syn keyword splintFlag contained mustfree mustfreefresh mustfreeonly mustmod mustnotalias
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140 syn keyword splintFlag contained mutrep namechecks needspec nestcomment nestedextern
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 syn keyword splintFlag contained newdecl newreftrans nextlinemacros noaccess nocomments
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142 syn keyword splintFlag contained noeffect noeffectuncon noparams nopp noret
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143 syn keyword splintFlag contained null nullassign nullderef nullinit nullpass
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 syn keyword splintFlag contained nullptrarith nullret nullstate nullterminated
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 syn keyword splintFlag contained numabstract numabstractcast numabstractindex numabstractlit numabstractprint
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 syn keyword splintFlag contained numenummembers numliteral numstructfields observertrans obviousloopexec
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 syn keyword splintFlag contained oldstyle onlytrans onlyunqglobaltrans orconstraint overload
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 syn keyword splintFlag contained ownedtrans paramimptemp paramuse parenfileformat partial
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 syn keyword splintFlag contained passunknown portability predassign predbool predboolint
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 syn keyword splintFlag contained predboolothers predboolptr preproc protoparammatch protoparamname
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 syn keyword splintFlag contained protoparamprefix protoparamprefixexclude ptrarith ptrcompare ptrnegate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 syn keyword splintFlag contained quiet readonlystrings readonlytrans realcompare redecl
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153 syn keyword splintFlag contained redef redundantconstraints redundantsharequal refcounttrans relaxquals
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154 syn keyword splintFlag contained relaxtypes repeatunrecog repexpose retalias retexpose
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155 syn keyword splintFlag contained retimponly retval retvalbool retvalint retvalother
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156 syn keyword splintFlag contained sefparams sefuncon shadow sharedtrans shiftimplementation
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157 syn keyword splintFlag contained shiftnegative shortint showallconjs showcolumn showconstraintlocation
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158 syn keyword splintFlag contained showconstraintparens showdeephistory showfunc showloadloc showscan
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159 syn keyword splintFlag contained showsourceloc showsummary sizeofformalarray sizeoftype skipisoheaders
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160 syn keyword splintFlag contained skipposixheaders slashslashcomment slovak slovakconsts slovakfcns
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161 syn keyword splintFlag contained slovakmacros slovaktypes slovakvars specglobimponly specimponly
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 syn keyword splintFlag contained specmacros specretimponly specstructimponly specundecl specundef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163 syn keyword splintFlag contained stackref statemerge statetransfer staticinittrans statictrans
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 syn keyword splintFlag contained strictbranchstate strictdestroy strictops strictusereleased stringliterallen
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165 syn keyword splintFlag contained stringliteralnoroom stringliteralnoroomfinalnull stringliteralsmaller stringliteraltoolong structimponly
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166 syn keyword splintFlag contained superuser switchloopbreak switchswitchbreak syntax sysdirerrors
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
167 syn keyword splintFlag contained sysdirexpandmacros sysunrecog tagprefix tagprefixexclude temptrans
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
168 syn keyword splintFlag contained tmpcomments toctou topuse trytorecover type
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
169 syn keyword splintFlag contained typeprefix typeprefixexclude typeuse uncheckedglobalias uncheckedmacroprefix
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
170 syn keyword splintFlag contained uncheckedmacroprefixexclude uniondef unixstandard unqualifiedinittrans unqualifiedtrans
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
171 syn keyword splintFlag contained unreachable unrecog unrecogcomments unrecogdirective unrecogflagcomments
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
172 syn keyword splintFlag contained unsignedcompare unusedspecial usedef usereleased usevarargs
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
173 syn keyword splintFlag contained varuse voidabstract warnflags warnlintcomments warnmissingglobs
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
174 syn keyword splintFlag contained warnmissingglobsnoglobs warnposixheaders warnrc warnsysfiles warnunixlib
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
175 syn keyword splintFlag contained warnuse whileblock whileempty whileloopexec zerobool
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
176 syn keyword splintFlag contained zeroptr
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177 " Global Flags:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
178 syn keyword splintGlobalFlag contained csv dump errorstream errorstreamstderr errorstreamstdout
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
179 syn keyword splintGlobalFlag contained expect f help i isolib
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
180 syn keyword splintGlobalFlag contained larchpath lclexpect lclimportdir lcs lh
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
181 syn keyword splintGlobalFlag contained load messagestream messagestreamstderr messagestreamstdout mts
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
182 syn keyword splintGlobalFlag contained neverinclude nof nolib posixlib posixstrictlib
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
183 syn keyword splintGlobalFlag contained showalluses singleinclude skipsysheaders stats streamoverwrite
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
184 syn keyword splintGlobalFlag contained strictlib supcounts sysdirs timedist tmpdir
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
185 syn keyword splintGlobalFlag contained unixlib unixstrictlib warningstream warningstreamstderr warningstreamstdout
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
186 syn keyword splintGlobalFlag contained whichlib
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
187 syn match splintFlagExpr contained "[\+\-\=]" nextgroup=splintFlag,splintGlobalFlag
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189 " detect missing /*@ and wrong */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190 syn match splintAnnError "@\*/"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
191 syn cluster cCommentGroup add=splintAnnError
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
192 syn match splintAnnError2 "[^@]\*/"hs=s+1 contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193 syn region splintAnnotation start="/\*@" end="@\*/" contains=@splintAnnotElem,cType keepend
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
194 syn match splintShortAnn "/\*@\*/"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
195 syn 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
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
196 syn cluster splintAllStuff contains=@splintAnnotElem,splintFlag,splintGlobalFlag
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
197 syn cluster cParenGroup add=@splintAllStuff
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
198 syn cluster cPreProcGroup add=@splintAllStuff
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
199 syn cluster cMultiGroup add=@splintAllStuff
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
200
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
201 " Define the default highlighting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
202 " For version 5.7 and earlier: only when not done already
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
203 " For version 5.8 and later: only when an item doesn't have highlighting yet
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
204 if version >= 508 || !exists("did_splint_syntax_inits")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
205 if version < 508
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
206 let did_splint_syntax_inits = 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
207 command -nargs=+ HiLink hi link <args>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
208 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
209 command -nargs=+ HiLink hi def link <args>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
210 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
211
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
212 HiLink splintShortAnn splintAnnotation
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
213 HiLink splintAnnotation Comment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
214 HiLink splintAnnError splintError
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
215 HiLink splintAnnError2 splintError
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
216 HiLink splintFlag SpecialComment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
217 HiLink splintGlobalFlag splintError
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
218 HiLink splintSpecialAnnot splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
219 HiLink splintStateAnnot splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
220 HiLink splintSpecTag splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
221 HiLink splintModifies splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
222 HiLink splintRequires splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
223 HiLink splintGlobals splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
224 HiLink splintGlobitem Constant
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
225 HiLink splintGlobannot splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
226 HiLink splintWarning splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
227 HiLink splintModitem Constant
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
228 HiLink splintIter splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
229 HiLink splintConst splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
230 HiLink splintAlt splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
231 HiLink splintType splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
232 HiLink splintGlobalType splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
233 HiLink splintMemMgm splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
234 HiLink splintAlias splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
235 HiLink splintExposure splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
236 HiLink splintDefState splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
237 HiLink splintGlobState splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
238 HiLink splintNullState splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
239 HiLink splintNullPred splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
240 HiLink splintExit splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
241 HiLink splintExec splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
242 HiLink splintSef splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
243 HiLink splintDecl splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
244 HiLink splintCase splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
245 HiLink splintBreak splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
246 HiLink splintUnreach splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
247 HiLink splintSpecFunc splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
248 HiLink splintErrSupp splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
249 HiLink splintTypeAcc splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
250 HiLink splintMacro splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
251 HiLink splintSpecType splintAnnKey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
252 HiLink splintAnnKey Type
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
253 HiLink splintError Error
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
254
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
255 delcommand HiLink
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
256 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
257
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
258 let b:current_syntax = "splint"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
259
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
260 " vim: ts=8