%!PS-Adobe-1.0 %%Creator: devps (Pipeline Associates, Inc.) %%CreationDate: Fri Sep 13 13:04:20 1996 %%Pages: (atend) %%DocumentFonts: (atend) /devps 180 dict def devps begin /res 10.000000 def /y_offset 843 def /X{exch}bind def /mm {transform round X round X itransform} bind def /r{rmoveto}bind def /m{moveto}bind def /l{lineto}bind def /rl{rlineto}bind def /st{stroke}bind def /gs{gsave}bind def /gr{grestore}bind def /cp{currentpoint}bind def /np{newpath}bind def /ct{curveto}bind def systemdict /setpacking known { /savepacking currentpacking def true setpacking } if /m0{0 0 moveto}bind def /xc{//res div}bind def /yc{//res neg div //y_offset add}bind def /lc{yc X xc X l st}bind def /mc{yc X xc X m}bind def /el{gs /a X def a div 1 X scale cp np a xc 2 div 0 360 arc st gr}bind def /ar{cp 7 2 roll np xc 5 1 roll atan 3 1 roll atan X arc st}bind def /sp{yc X xc X 6 2 roll yc X xc X 6 2 roll yc X xc X 6 2 roll ct}bind def /V{//res neg div //y_offset add currentpoint pop X m}bind def /H{//res div 0 transform X round X itransform pop currentpoint X pop moveto}bind def /h{//res div 0 r}bind def /v{//res neg div 0 X r}bind def /S{X H show}bind def /A{H //res div 1 index stringwidth pop sub 1 index length div 0 3 2 roll ashow}bind def /psize 10 def /height 0 def /cheight { height 0 ne { height } { psize } ifelse } bind def /slant 0 def /FF{findfont X dup 30 div 0 mm pop setlinewidth /psize X def [psize 0 cheight slant sin slant cos div mul cheight 0 0] makefont setfont}bind def /shade{gs /dy X def /dx X def np m 0 /dy rl /dx 0 rl 0 /dy neg rl /dx neg 0 rl closepath .9 setgray fill gr}bind def 1 setlinecap /resolution res 72 mul def /startFig { /SavedState save def userdict maxlength dict begin currentpoint transform DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix itransform moveto /ury exch def /urx exch def /lly exch def /llx exch def /y exch 72 mul resolution div def /x exch 72 mul resolution div def currentpoint /cy exch def /cx exch def /sx x urx llx sub div def /sy y ury lly sub div def sx sy scale cx sx div llx sub cy sy div ury sub translate /DefFigCTM matrix currentmatrix def /initmatrix { DefFigCTM setmatrix } def /defaultmatrix { DefFigCTM exch copy } def /initgraphics { DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix DefFigCTM setmatrix } def /showpage { initgraphics } def }bind def /clipFig { currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll exch lineto exch lineto exch lineto closepath clip newpath moveto }bind def /doclip { llx lly urx ury clipFig } def /endFig { end SavedState restore }bind def /globalstart { fontnum psize slant height resolution currentpoint pagesave restore gsave }bind def /globalend { grestore moveto /resolution exch def /height exch def /slant exch def /psize exch def /fontnum exch def F /pagesave save def }bind def /fontnum 1 def systemdict /setpacking known { savepacking setpacking} if end /BP{ save mark devps begin m0 /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap currentlinejoin currentdash currentgray currentmiterlimit ] cvx def }bind def /EP{ end cleartomark restore showpage}def /R{/Times-Roman FF}def /B{/Times-Bold FF}def /I{/Times-Italic FF}def %%EndProlog %%Page: 1 1 BP /slant 0 def /height 0 def 480 V 10 R 720(REF)S 913(\()S 955(1)S 1013(\))S 2696(Eighth)S (Edition)296 2989 A 4934(REF)S 5127(\()S 5169(1)S 5227(\))S 960 V 9 R 720(N)S 722(NA)S 790(AM)S 858(ME)S 940(E)S 1080 V 10 R 1080(ref)S 1218(-)S 1277(Display)S 1615(a)S 1685(C)S 1777(function)S 2137(header)S 1248 V 9 R 720(S)S 722(SY)S 774(YN)S 842(NO)S 910(OP)S 978(PS)S 1030(SI)S 1082(IS)S 1115(S)S 1368 V 10 B 1080(ref)S 10 R 1242([-t])S 1410([-c)S 10 I 1561(class)S 10 R (]...)109 1762 A ([-f)102 1909 A 10 I 2049(\256le)S 10 R (]...)109 2172 A 10 I 2319(tag)S 1536 V 9 R 720(D)S 722(DE)S 790(ES)S 848(SC)S 900(CR)S 962(RI)S 1024(IP)S 1057(PT)S 1109(TI)S 1167(IO)S 1200(ON)S 1268(N)S 1656 V 10 I 1080(ref)S 10 R 1221(quickly)S 1551(locates)S 1860(and)S 2034(displays)S 2392(the)S 2544(header)S 2842(of)S 2955(a)S 3029(function.)S 3443(To)S 3584(do)S 3713(this,)S 10 I 3912(ref)S 10 R (looks)217 4053 A 4299(in)S 4406(the)S 4558("tags")S 4831(\256le)S 4990(for)S 5138(the)S 1776 V 1080(line)S 1269(that)S 1458(describes)S 1871(the)S 2032(function,)S 2430(and)S 2613(then)S 2824(scans)S 3080(the)S 3241(source)S 3542(\256le)S 3709(for)S 3865(the)S 4026(function.)S 4449(When)S 4727(it)S 4821(locates)S 5138(the)S 1896 V 1080(function,)S 1484(it)S 1585(displays)S 1959(an)S (introductory)497 2099 A 2641(comment)S 3060(\(if)S 3201(there)S 3448(is)S 3560(one\),)S 3809(the)S 3977(function's)S 4430(declaration,)S 4948(and)S 5138(the)S 2016 V 1080(declarations)S 1592(of)S 1701(all)S 1827(arguments.)S 2184 V 9 R 720(S)S 722(SE)S 774(EA)S 832(AR)S 900(RC)S 962(CH)S 1024(H)S 1115(M)S 1117(ME)S 1199(ET)S 1257(TH)S 1315(HO)S 1383(OD)S 1451(D)S 2304 V 10 I 1080(ref)S 10 R 1219(uses)S 1419(a)S 1491(fairly)S (sophisticated)525 1737 A 2289(tag)S (look-up)312 2439 A 2778(algorithm.)S 3246(If)S (you)150 3341 A (supply)267 3519 A 3814(a)S 3887(\256lename)S 4262(via)S 10 B 4413(-f)S 10 I 4509(\256le)S 10 R 4632(,)S 4685(then)S 4886(elvis)S 5104(\256rst)S 2424 V 1080(scans)S 1334(the)S 1493(tags)S 1691(\256le)S 1856(for)S 2010(a)S 2091(static)S 2340(tag)S 2499(from)S 2731(that)S 2918(\256le.)S 3133(This)S 3348(search)S 3642(is)S 3745(limited)S 4066(to)S 4180(the)S 4339(tags)S 4537(\256le)S 4702(in)S 4816(the)S 4975(current)S 2544 V 1080(directory.)S 2712 V 1080(If)S (you)150 1177 A (supply)267 1356 A 1652(a)S 1726(classname)S 2169(via)S 10 B 2321(-c)S 10 I 2429(class)S 10 R 2630(,)S 2685(then)S 2888(elvis)S 3108(searches)S 3480(for)S 3628(a)S 3703(tag)S 3856(from)S 4082(that)S 4263(class.)S 4539(This)S 4748(search)S 5036(is)S 5133(not)S 2832 V 1080(limited)S 1397(to)S 1507(the)S 1662(current)S 1980(directory;)S 2403(You)S 2607(can)S (supply)267 2778 A 3076(a)S 3152(list)S 3306(of)S 3421(directories)S 3878(in)S 3987(the)S 4141(environment)S 4680(variable)S 10 I 5036(TAG-)S 2952 V 1080(PATH)S 10 R 1333(,)S 1394(and)S 10 I 1575(ref)S 10 R (will)157 1724 A 1918(search)S (through)312 2213 A 2562(the)S 2722("tags")S 3003(\256le)S 3169(in)S (each)185 3284 A 3506(directory)S (until)184 3907 A 4128(it)S 4221(\256nds)S 4453(a)S 4535(tag)S 4695(in)S 4810(the)S 4970(desired)S 3072 V 1080(class.)S 3240 V 1080(If)S 1175(that)S 1353(fails,)S 10 I 1579(ref)S 10 R (will)157 1718 A 1902(then)S 2102(try)S 2241(to)S (look)178 2346 A 2551(up)S 2678(an)S 2800(ordinary)S 3168(global)S 3447(tag.)S 3648(This)S 3855(search)S 4141(checks)S 4443(all)S 4572(of)S 4684(the)S 4835(directories)S 3360 V 1080(listed)S 1323(in)S 10 I 1426(TAGPATH)S 10 R 1870(,)S 1920(too.)S 3528 V 1080(If)S (you've)279 1176 A 1483(given)S 1734(the)S 10 B 1885(-t)S 10 R 1981(\257ag,)S 2185(then)S 10 I 2386(ref)S 10 R (will)157 2526 A 2711(simply)S 3012(output)S 3296(the)S 3447(tag)S 3598(line)S 3777(that)S 3956(it)S (found,)259 4040 A 4327(and)S 4500(then)S 4702(exit.)S (Without)329 4932 A 3648 V 10 B 1080(-t)S 10 R 1148(,)S (though,)303 1209 A 10 I 1548(ref)S 10 R (will)157 1696 A 1889(search)S 2183(for)S 2336(the)S 2494(tag)S 2652(line.)S 2888(It)S (will)157 2985 A 3177(try)S 3324(to)S 3437(open)S 3667(the)S 3825(source)S 4123(\256le,)S 4312(which)S (should)267 4593 A 4895(be)S 5025(in)S 5138(the)S 3768 V 1080(same)S 1327(directory)S 1731(as)S 1855(the)S 2018(tags)S 2220(\256le)S 2389(where)S 2676(the)S 2840(tag)S 3004(was)S 3202(discovered.)S 3729(If)S 3838(the)S 4002(source)S 4306(\256le)S 4476(doesn't)S 4813(exist,)S 5069(or)S 5194(is)S 3888 V 1080(unreadable,)S 1584(then)S 10 I 1794(ref)S 10 R (will)157 1943 A 2137(try)S 2286(to)S 2401(open)S 2633(a)S 2715(\256le)S 2881(called)S 3159(")S 10 I 3200(refs)S 10 R 3351(")S 3429(in)S 3544(that)S 3732(directory.)S 4182(Either)S 4465(way,)S 10 I 4694(ref)S 10 R (will)157 4842 A 5035(try)S 5183(to)S 4008 V 1080(locate)S 1346(the)S 1494(tag,)S 1667(and)S 1837(display)S 2152(whatever)S 2547(it)S 2628(\256nds.)S 4176 V 9 R 720(I)S 722(IN)S 755(NT)S 823(TE)S 881(ER)S 939(RA)S 1001(AC)S 1069(CT)S 1131(TI)S 1189(IO)S 1222(ON)S 1290(N)S 1381(W)S 1383(WI)S 1471(IT)S 1504(TH)S 1562(H)S 1653(E)S 1655(EL)S 1713(LV)S 1771(VI)S 1839(IS)S 1872(S)S 4296 V 10 I 1080(ref)S 10 R 1227(is)S 1330(used)S 1550(by)S 10 I 1686(elvis)S 10 R 1871(')S 1941(shift-K)S 2263(command.)S 2745(If)S 2849(the)S 3008(cursor)S 3296(is)S 3399(located)S 3726(on)S 3862(a)S 3943(word)S 4186(such)S 4406(as)S 4526("splat",)S 4859(in)S 4973(the)S 5132(\256le)S 4416 V 1080("foo.c",)S 1416(then)S 10 I 1614(elvis)S 10 R (will)157 1824 A (invoke)273 2006 A 10 I 2304(ref)S 10 R 2441(with)S 2645(the)S 2793(command)S 3214("ref)S 3393(-f)S 3486(foo.c)S 3715(splat".)S 4584 V 1080(If)S 10 I 1177(elvis)S 10 R 1391(has)S 1554(been)S 1773(compiled)S 2176(with)S 2384(the)S 2536(-DEXTERNAL_TAGS)S 3520(\257ag,)S 3725(then)S 10 I 3927(elvis)S 10 R (will)157 4141 A 4327(use)S 10 I 4490(ref)S 10 R 4631(to)S 4738(scan)S 4946(the)S 5099(tags)S 4704 V 1080(\256les.)S 1328(This)S 1537(is)S 1634(slower)S 1933(than)S 2136(the)S (built-in)296 2289 A 2614(tag)S 2766(searching,)S 3206(but)S 3363(it)S 3448(allows)S 10 I 3740(elvis)S 10 R 3954(to)S (access)258 4061 A 4348(the)S 4500(more)S (sophisticated)525 4736 A 4824 V 1080(tag)S (lookup)278 1228 A 1531(provided)S 1913(by)S 10 I 2038(ref)S 10 R 2150(.)S 2225(Other)S 2480(than)S 2678(that,)S 2879(external)S 3229(tags)S (should)267 3416 A 3708(act)S 3851(exactly)S 4167(like)S 4343(internal)S 4676(tags.)S 4992 V 9 R 720(O)S 722(OP)S 790(PT)S 842(TI)S 900(IO)S 933(ON)S 1001(NS)S 1069(S)S 5112 V 10 B 1080(-t)S 10 R 1440(Output)S 1744(tag)S 1892(info,)S 2104(instead)S 2414(of)S 2523(the)S 2671(function)S 3031(header.)S 5280 V 10 B 1080(-f)S 10 I (file)129 1173 A 10 R 1440(The)S 1633(tag)S 1792(might)S 2062(be)S 2193(a)S 2274(static)S 2523(function)S 2894(in)S 10 I 3008(\256le)S 10 R 3131(.)S 3217(You)S 3426(can)S 3603(use)S 3774(several)S 4097(-f)S 4202(\257ags)S 4429(to)S 4544(have)S 10 I 4771(ref)S 10 R 4920(consider)S 5400 V 1440(static)S 1678(tags)S 1865(from)S 2086(more)S 2318(than)S 2516(one)S 2686(\256le.)S 5568 V 10 B 1080(-c)S 10 I 1184(class)S 10 R 1440(The)S 1629(tag)S 1784(might)S 2050(be)S 2177(a)S 2254(member)S 2616(of)S 2732(class)S 10 I 2960(class)S 10 R 3161(.)S 3243(You)S 3448(can)S 3620(use)S 3787(several)S 4106(-c)S 4218(\257ags)S 4441(to)S 4552(have)S 10 I 4775(ref)S 10 R 4920(consider)S 5688 V 1440(tags)S 1627(from)S 1848(more)S 2080(than)S 2278(one)S 2448(class.)S 5856 V 9 R 720(F)S 722(FI)S 774(IL)S 807(LE)S 865(ES)S 923(S)S 5976 V 10 B 1080(tags)S 10 R 1440(List)S 1622(of)S 1731(function)S 2091(names)S 2373(and)S 2543(their)S 2753(locations,)S 3166(generated)S 3583(by)S 10 I 3708(ctags)S 10 R 3920(.)S 6144 V 10 B 1080(refs)S 10 R 1440(Function)S 1822(headers)S 2155(extracted)S 2550(from)S 2771(source)S 3059(\256les)S 3252(\(optional\).)S 6312 V 9 R 720(E)S 722(EN)S 780(NV)S 848(VI)S 916(IR)S 949(RO)S 1011(ON)S 1079(NM)S 1147(ME)S 1229(EN)S 1287(NT)S 1355(T)S 6432 V 10 B 1080(TAGPATH)S 6552 V 10 R 1440(List)S 1627(of)S 1741(directories)S 2197(to)S 2305(be)S 2430(searched.)S 2863(The)S 3050(elements)S 3438(in)S 3546(the)S 3699(list)S 3852(are)S 4006(separated)S 4417(by)S 4548(either)S 4809(semicolons)S 6672 V 1440(\(for)S 1624(MS-DOS,)S 2062(Atari)S 2301(TOS,)S 2548(and)S 2724(AmigaDos\),)S 3250(or)S 3365(by)S 3496(colons)S 3789(\(every)S 4078(other)S 4316(operating)S 4727(system\).)S 5121(For)S 6792 V (each)185 1440 A 1650(operating)S 2055(system,)S 10 I 2384(ref)S 10 R 2521(has)S 2680(a)S (built-in)296 2750 A 3071(default)S 3376(which)S 3647(is)S 3739(probably)S 4121(adequate.)S 6960 V 9 R 720(N)S 722(NO)S 790(OT)S 858(TE)S 916(ES)S 974(S)S 7080 V 10 R 1080(You)S 1292(might)S 1565(want)S 1800(to)S 1917(generate)S 2298(a)S 2382("tags")S 2665(\256le)S 2833(the)S 2995(directory)S 3398(that)S 3588(contains)S 3962(the)S 4124(source)S 4426(code)S 4655(for)S 4813(standard)S 5194(C)S 7200 V 1080(library)S 1383(on)S (your)184 1517 A 1735(system.)S 2098(If)S 2200(licensing)S 2597(restrictions)S 3079(prevent)S (you)150 3415 A 3599(from)S 3829(making)S 4164(the)S 4321(library)S 4623(source)S 4919(readable)S 7320 V 1080(by)S (everybody,)449 1205 A 1679(then)S (you)150 1877 A 2052(can)S 2217(have)S 10 I 2432(ctags)S 10 R 2669(generate)S 3036(a)S 3106("refs")S 3365(\256le,)S 3544(and)S 3714(make)S 3957("refs")S 4216(readable)S 4583(by)S (everybody.)449 4708 A 7903 V 720(Page)S 941(1)S 4455(September)S 4911(13,)S (1996)200 5061 A 8143 V EP %%Page: 2 2 BP /slant 0 def /height 0 def 480 V 10 R 720(REF)S 913(\()S 955(1)S 1013(\))S 2696(Eighth)S (Edition)296 2989 A 4934(REF)S 5127(\()S 5169(1)S 5227(\))S 960 V 1080(If)S (your)184 1185 A 1407(system)S 1724(doesn't)S 2058(come)S 2314(with)S 2531(the)S 2692(library)S 2999(source)S 3300(code,)S 3553(then)S 3764(perhaps)S (you)150 4115 A 4303(can)S (produce)324 4481 A 4843(something)S 1080 V 1080(workable)S 1480(from)S 1701(the)S 10 I 1849(lint)S 10 R 2008(libraries.)S 1248 V 9 R 720(S)S 722(SE)S 774(EE)S 832(E)S 913(A)S 915(AL)S 983(LS)S 1041(SO)S 1093(O)S 1368 V 10 R 1080(elvis\(1\),)S 1438(ctags\(1\))S 1536 V 9 R 720(A)S 722(AU)S 790(UT)S 858(TH)S 916(HO)S 984(OR)S 1052(R)S 1656 V 10 R 1080(Steve)S 1329(Kirkendall)S 1776 V (kirkenda@cs.pdx.edu)874 1080 A 7903 V 720(September)S 1176(13,)S (1996)200 1326 A 4990(Page)S 5211(2)S 8143 V EP %%Trailer %%DocumentFonts: Times-Roman Times-Bold Times-Italic %%Pages: 2