xref: /illumos-gate/usr/src/cmd/vgrind/vgrindefs.src (revision 7c478bd9)
1*7c478bd9Sstevel@tonic-gate#
2*7c478bd9Sstevel@tonic-gate# CDDL HEADER START
3*7c478bd9Sstevel@tonic-gate#
4*7c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
5*7c478bd9Sstevel@tonic-gate# Common Development and Distribution License, Version 1.0 only
6*7c478bd9Sstevel@tonic-gate# (the "License").  You may not use this file except in compliance
7*7c478bd9Sstevel@tonic-gate# with the License.
8*7c478bd9Sstevel@tonic-gate#
9*7c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*7c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
11*7c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
12*7c478bd9Sstevel@tonic-gate# and limitations under the License.
13*7c478bd9Sstevel@tonic-gate#
14*7c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
15*7c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*7c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
17*7c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
18*7c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
19*7c478bd9Sstevel@tonic-gate#
20*7c478bd9Sstevel@tonic-gate# CDDL HEADER END
21*7c478bd9Sstevel@tonic-gate#
22*7c478bd9Sstevel@tonic-gate# ident	"%Z%%M%	%I%	%E% SMI"
23*7c478bd9Sstevel@tonic-gate#
24*7c478bd9Sstevel@tonic-gatemodel|mod|m:\
25*7c478bd9Sstevel@tonic-gate	:pb=^\d(space\d\p\drep)|(\p\dis|inline|public\dbeginproc):\
26*7c478bd9Sstevel@tonic-gate	:bb=\dbeginproc|space|case\d:be=\dendproc|end\d|;:\
27*7c478bd9Sstevel@tonic-gate	:cb=\$:ce=\$|$:sb=":se=":lb=':le=\a|$:\
28*7c478bd9Sstevel@tonic-gate	:kw=abs and array beginproc boolean by case cdnl char copied dispose\
29*7c478bd9Sstevel@tonic-gate	div do dynamic else elsif end endproc entry external FALSE false\
30*7c478bd9Sstevel@tonic-gate	fi file for formal fortran global if iff ift\
31*7c478bd9Sstevel@tonic-gate	in integer include inline is lbnd\
32*7c478bd9Sstevel@tonic-gate	max min mod new NIL nil noresult not notin od of or procedure public\
33*7c478bd9Sstevel@tonic-gate	read readln readonly record recursive rem rep repeat res\
34*7c478bd9Sstevel@tonic-gate	result return set\
35*7c478bd9Sstevel@tonic-gate	space string subscript such then TRUE true type ubnd union until\
36*7c478bd9Sstevel@tonic-gate	varies while width:
37*7c478bd9Sstevel@tonic-gatepascal|pasc|p:\
38*7c478bd9Sstevel@tonic-gate	:pb=(^\d?procedure|function|program\d\p\d|\(|;|\:)|(=\d?record\d):\
39*7c478bd9Sstevel@tonic-gate	:bb=\dcase|begin\d:be=\dend|forward\d|;:\
40*7c478bd9Sstevel@tonic-gate	:cb={:ce=}:\
41*7c478bd9Sstevel@tonic-gate	:ab=\(*:ae=*\):\
42*7c478bd9Sstevel@tonic-gate	:sb=':se=':\
43*7c478bd9Sstevel@tonic-gate	:kw=and array assert begin case const div do downto else end file for\
44*7c478bd9Sstevel@tonic-gate	forward function goto if in label mod nil not of or packed procedure\
45*7c478bd9Sstevel@tonic-gate	program record repeat set then to type until var while with oct hex\
46*7c478bd9Sstevel@tonic-gate	external:
47*7c478bd9Sstevel@tonic-gateC|c:\
48*7c478bd9Sstevel@tonic-gate	:pb=^\d?*?\d?\p\d?\(\a?\)(\d|{):bb={:be=}:cb=/*:ce=*/:sb=":se=\e":lb=':\
49*7c478bd9Sstevel@tonic-gate	:le=\e':tl:\
50*7c478bd9Sstevel@tonic-gate	:kw=asm auto break case char continue default do double else enum\
51*7c478bd9Sstevel@tonic-gate	extern float for fortran goto if int long register return short\
52*7c478bd9Sstevel@tonic-gate	sizeof static struct switch typedef union unsigned void while #define\
53*7c478bd9Sstevel@tonic-gate	#else #endif #if #ifdef #ifndef #include #undef # define endif\
54*7c478bd9Sstevel@tonic-gate	ifdef ifndef include undef defined:
55*7c478bd9Sstevel@tonic-gateISP|isp|i:\
56*7c478bd9Sstevel@tonic-gate	:cb=!:ce=!|$:oc:\
57*7c478bd9Sstevel@tonic-gate	:kw=and begin decode define end eql eqv geq gtr if leave leq lss mod\
58*7c478bd9Sstevel@tonic-gate	neq next not or otherwise repeat restart resume sr0 sr1 srd srr sl0 sl1\
59*7c478bd9Sstevel@tonic-gate	sld slr tst xor:
60*7c478bd9Sstevel@tonic-gateSH|sh:\
61*7c478bd9Sstevel@tonic-gate	:pb=(;|^)\d?\p\(\)(\d|{):\
62*7c478bd9Sstevel@tonic-gate	:ab=\$#:ae=(\d?|\a?):\
63*7c478bd9Sstevel@tonic-gate	:bb={:be=}:cb=#:ce=$:sb=":se=\e":lb=':\
64*7c478bd9Sstevel@tonic-gate	:le=\e':tl:\
65*7c478bd9Sstevel@tonic-gate	:kw=break case cd continue do done \
66*7c478bd9Sstevel@tonic-gate	elif else esac eval exec exit export \
67*7c478bd9Sstevel@tonic-gate	fi for if in then while until \
68*7c478bd9Sstevel@tonic-gate	read readonly set shift test trap umask wait:
69*7c478bd9Sstevel@tonic-gateCSH|csh:\
70*7c478bd9Sstevel@tonic-gate	:cb=#:ce=$:sb=":se=\e":lb=':\
71*7c478bd9Sstevel@tonic-gate	:ab=\$\a?#:ae=(\d?|\a?):\
72*7c478bd9Sstevel@tonic-gate	:le=\e':tl:\
73*7c478bd9Sstevel@tonic-gate	:kw=alias alloc break breaksw case cd chdir continue default\
74*7c478bd9Sstevel@tonic-gate	echo else end endif endsw exec exit foreach \
75*7c478bd9Sstevel@tonic-gate	glob goto history if logout nice nohup onintr repeat set\
76*7c478bd9Sstevel@tonic-gate	setenv shift source switch then time \
77*7c478bd9Sstevel@tonic-gate	while umask unalias unset wait while @ env \
78*7c478bd9Sstevel@tonic-gate	argv child home ignoreeof noclobber noglob \
79*7c478bd9Sstevel@tonic-gate	nomatch path prompt shell status verbose :
80*7c478bd9Sstevel@tonic-gateldl|LDL:\
81*7c478bd9Sstevel@tonic-gate	:pb=^\p\::bb=\::be=;:cb=/*:ce=*/:sb=":se=\e":\
82*7c478bd9Sstevel@tonic-gate	:kw=constant functions grammar reswords tokens add1 addste\
83*7c478bd9Sstevel@tonic-gate	car cdr check colno cond cons copy defun divide empty enter\
84*7c478bd9Sstevel@tonic-gate	eq equal findattr firstchild ge getattr getfield gt hash label\
85*7c478bd9Sstevel@tonic-gate	lambda lastchild le leftsibling lookone lookup lt minus name ne\
86*7c478bd9Sstevel@tonic-gate	newnode nextcom nil null parent plus precnl prevcom prog progn\
87*7c478bd9Sstevel@tonic-gate	quote reglob return rightsibling self set setattr setfield setq\
88*7c478bd9Sstevel@tonic-gate	stjoin sub1 t times tnull tokno ttype:
89*7c478bd9Sstevel@tonic-gateIcon|icon|I:\
90*7c478bd9Sstevel@tonic-gate	:pb=^\d?procedure\d\p\d?\(\a?\):\
91*7c478bd9Sstevel@tonic-gate	:bb=(^\d?procedure\d\p\d?\(\a?\))|{:be=}|(^\d?end\d?$):\
92*7c478bd9Sstevel@tonic-gate	:cb=#:ce=$:\
93*7c478bd9Sstevel@tonic-gate	:sb=":se=\e":lb=':le=\e':tl:\
94*7c478bd9Sstevel@tonic-gate	:kw=break by case create default do dynamic else end every external\
95*7c478bd9Sstevel@tonic-gate	fail global if initial local next not of procedure record\
96*7c478bd9Sstevel@tonic-gate	repeat return static suspend then to until using while\
97*7c478bd9Sstevel@tonic-gate	&ascii &clock &cset &date &dateline &errout &fail &host &input\
98*7c478bd9Sstevel@tonic-gate	&lcase &level &main &null &output &pos &random &source &subject\
99*7c478bd9Sstevel@tonic-gate	&time &trace &ucase &version:
100*7c478bd9Sstevel@tonic-gateratfor|rat|r:\
101*7c478bd9Sstevel@tonic-gate	:pb=(subroutine|function)\d\p\d?\(\a?\):\
102*7c478bd9Sstevel@tonic-gate	:bb=(subroutine|function)\d\p\d?\(\a?\):be=^\d?end:\
103*7c478bd9Sstevel@tonic-gate	:cb=#:ce=$:\
104*7c478bd9Sstevel@tonic-gate	:sb=":se=\e":lb=':le=\e':oc:\
105*7c478bd9Sstevel@tonic-gate	:kw=DRETURN DRIVER arith break case character default define do\
106*7c478bd9Sstevel@tonic-gate	else elsedef enddef filedes for function goto if ifdef ifelse\
107*7c478bd9Sstevel@tonic-gate	ifnotdef include incr integer linepointer next opeq pointer\
108*7c478bd9Sstevel@tonic-gate	real repeat return select string subroutine substr until:
109*7c478bd9Sstevel@tonic-gatemodula2|mod2|m2:\
110*7c478bd9Sstevel@tonic-gate	:pb=(^\d?(procedure|function|module)\d\p\d|\(|;|\:):\
111*7c478bd9Sstevel@tonic-gate	:bb=\d(begin|case|for|if|loop|record|repeat|while|with)\d:\
112*7c478bd9Sstevel@tonic-gate	:be=\dend|;:\
113*7c478bd9Sstevel@tonic-gate	:cb={:ce=}:\
114*7c478bd9Sstevel@tonic-gate	:ab=\(*:ae=*\):\
115*7c478bd9Sstevel@tonic-gate	:sb=":se=":\
116*7c478bd9Sstevel@tonic-gate	:oc:\
117*7c478bd9Sstevel@tonic-gate	:kw=and array begin by case const\
118*7c478bd9Sstevel@tonic-gate	definition div do else elsif end exit export\
119*7c478bd9Sstevel@tonic-gate	for from if implementation import in\
120*7c478bd9Sstevel@tonic-gate	loop mod module not of or pointer procedure qualified\
121*7c478bd9Sstevel@tonic-gate	record repeat return set then to type\
122*7c478bd9Sstevel@tonic-gate	until var while with:
123*7c478bd9Sstevel@tonic-gateyacc|Yacc|y:\
124*7c478bd9Sstevel@tonic-gate	:cb=/*:ce=*/:sb=":se=\e":lb=':le=\e':tl:\
125*7c478bd9Sstevel@tonic-gate	:kw=%{ %} %% %union %token %type\
126*7c478bd9Sstevel@tonic-gate	#else #endif #if #ifdef #ifndef #include #undef # define else endif\
127*7c478bd9Sstevel@tonic-gate	if ifdef ifndef include undef:
128*7c478bd9Sstevel@tonic-gateC++|c++:\
129*7c478bd9Sstevel@tonic-gate	:pb=^\d?*?\d?\p\d?\(\a?\)(\d|{):bb={:be=}:cb=/*:ce=*/:ab=//:\
130*7c478bd9Sstevel@tonic-gate	:ae=$:sb=":se=\e":lb=':\
131*7c478bd9Sstevel@tonic-gate	:le=\e':tl:\
132*7c478bd9Sstevel@tonic-gate	:kw=asm auto break case char continue default do double else enum\
133*7c478bd9Sstevel@tonic-gate	extern float for fortran goto if int long register return short\
134*7c478bd9Sstevel@tonic-gate	sizeof static struct switch typedef union unsigned while void #define\
135*7c478bd9Sstevel@tonic-gate	#else #endif #if #ifdef #ifndef #include #undef # define endif\
136*7c478bd9Sstevel@tonic-gate	ifdef ifndef include undef defined\
137*7c478bd9Sstevel@tonic-gate	class const delete friend inline new operator overload private\
138*7c478bd9Sstevel@tonic-gate	protected public virtual:
139*7c478bd9Sstevel@tonic-gatefortran|FORTRAN|f77|fc|f:\
140*7c478bd9Sstevel@tonic-gate	:pb=(function|subroutine|program)\d\p\d?\(\a?\):\
141*7c478bd9Sstevel@tonic-gate	:bb=(function|subroutine|program)\d\p\d?\(\a?\):be=^\dend:\
142*7c478bd9Sstevel@tonic-gate	:cb=^c:\
143*7c478bd9Sstevel@tonic-gate	:ce=$:\
144*7c478bd9Sstevel@tonic-gate	:sb=':\
145*7c478bd9Sstevel@tonic-gate	:se=':\
146*7c478bd9Sstevel@tonic-gate	:oc:\
147*7c478bd9Sstevel@tonic-gate	:kw=call common complex continue dimension do double else elseif\
148*7c478bd9Sstevel@tonic-gate	end endif equivalence format function\
149*7c478bd9Sstevel@tonic-gate	goto if include integer \
150*7c478bd9Sstevel@tonic-gate	parameter precision real return stop subroutine:
151*7c478bd9Sstevel@tonic-gate#
152*7c478bd9Sstevel@tonic-gate# This entry makes use of new capabilities added to support the description
153*7c478bd9Sstevel@tonic-gate# of lisp-like languages (id, pl, and px).  The set of keywords given is a
154*7c478bd9Sstevel@tonic-gate# matter of taste.  It would be reasonable to add all the wired functions to
155*7c478bd9Sstevel@tonic-gate# the list.
156*7c478bd9Sstevel@tonic-gateMLisp|ml|Emacs Mock Lisp:\
157*7c478bd9Sstevel@tonic-gate	:cb=;:ce=$:lb=':le=\e':sb=":se=\e":bb=\(:be=\):\
158*7c478bd9Sstevel@tonic-gate	:id=_-$#@./,%&?!^*+~`|;<>'\::\
159*7c478bd9Sstevel@tonic-gate	:kw=defun if progn while:pl:px=\d\(defun:pb=^\d\(\p($|(\d\a$)):
160*7c478bd9Sstevel@tonic-gate#
161*7c478bd9Sstevel@tonic-gate# It's not obvious what constitutes a "procedure definition" in Russell.
162*7c478bd9Sstevel@tonic-gate# This entry doesn't even try...
163*7c478bd9Sstevel@tonic-gaterussell|Russell:\
164*7c478bd9Sstevel@tonic-gate	:cb=\(*:ce=*\):kw=cand cor do od if fi else enum record prod union\
165*7c478bd9Sstevel@tonic-gate	extend export hide with constants let use in ni val var func type\
166*7c478bd9Sstevel@tonic-gate	field characters readonly:sb=":se=":lb=':le=':
167