gdb.ps   [plain text]


%!PS-Adobe-2.0
%%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software
%%Title: gdb.dvi
%%Pages: 188
%%PageOrder: Ascend
%%BoundingBox: 0 0 596 842
%%EndComments
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -o gdb.ps gdb.dvi
%DVIPSParameters: dpi=600, compressed
%DVIPSSource:  TeX output 1999.09.23:1240
%%BeginProcSet: texc.pro
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
(LaserWriter 16/600)]{A length product length le{A length product exch 0
exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end

%%EndProcSet
TeXDict begin 39158280 55380996 1000 600 600 (gdb.dvi)
@start
%DVIPSBitmapFont: Fa cmcsc10 14.4 3
/Fa 3 118 df<DB0FFC14C092B5EAC0010207ECF003913A1FFC01FC07913A7FC0003E0F
4948C7EA0F9FD907FCEC07DF4948EC01FF4948804948157F495A4948153F4890C9121F5A
4848160F491607120FA248481603A2485A1801A2127FA24993C8FCA212FFAA0407B61280
127FA26DDA0003EBF00005005B003F715AA27F121FA26C7EA212077F6C7E7E6C7F6D7E6D
6C15FF6D7E6D6C5CD907FEEC03DFD901FFEC078F9026007FC0EB1F07DA1FFCEBFE010207
B5EAF800020002C090C7FCDB0FFEC9FC41417ABE4D>103 D<B500C0021FB5FC80A2C66D
020113F06D6C9138007FC06EED3F80F01F00EB77FED973FF150E01717FA201707F6E7E14
3F816E7E6E7EA26E7E6E7E6E7FA26E7F6F7E6F7EA26F7E6F7E6F7EA26F7E6F13806F13C0
A2EE7FE0EE3FF0EE1FF8A2EE0FFCEE07FEEE03FFA270138E7013CE177F18EEEF3FFE171F
A2170F17071703A201F815011700486C167E487E260FFF80153EB500F8151E180EA2403D
7CBC49>110 D<B600E0011FB5FCA3000101F0C7000113F06C499138007FC06D48ED3F80
F01F00A2180EB3B3013F161E6E151CA2183C011F16386E1578010F16706D6C15F04D5A6D
6C5D6D6C14076D6C4A5A6E6C013FC7FCDA1FE013FC91390FFC07F80203B512E002001480
DB0FFCC8FC403F7CBC49>117 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fb cmbxti10 14.4 1
/Fb 1 47 df<13FCEA03FF000F13804813C05AA25AA2B5FCA31480A214006C5A6C5A6C5A
EA0FE0121271912B>46 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fc cmr9 9 11
/Fc 11 121 df<14C01301EB0380EB0F00130E5B133C5B5BA2485A485AA212075B120F90
C7FC5AA2121E123EA3123C127CA55AB0127CA5123C123EA3121E121FA27E7F12077F1203
A26C7E6C7EA213787F131C7F130FEB0380EB01C01300124A79B71E>40
D<12C07E1270123C121C7E120F6C7E6C7EA26C7E6C7EA27F1378137C133C133EA2131E13
1FA37F1480A5EB07C0B0EB0F80A514005BA3131E133EA2133C137C137813F85BA2485A48
5AA2485A48C7FC120E5A123C12705A5A124A7CB71E>I<B512FEA3000113006C5AB3B3A7
487EB512FEA317337EB21C>73 D<153FEC0FFFA3EC007F81AEEB07F0EB3FFCEBFC0F3901
F003BF3907E001FF48487E48487F8148C7FCA25A127E12FEAA127E127FA27E6C6C5BA26C
6C5B6C6C4813803A03F007BFFC3900F81E3FEB3FFCD90FE0130026357DB32B>100
D<EB0FE0EB7FFCEBF83F3903F00F80D807E013C0390FC007E0381F800315F0EA3F001401
4814F8127EA212FEA2B6FCA248C8FCA5127E127FA26C1418A26C6C1338000F14306D1370
6C6C13E03901F003C03900FC0F00EB3FFEEB07F01D237EA122>I<EA0780EA0FC0EA1FE0
A4EA0FC0EA0780C7FCAAEA07E012FFA3120F1207B3A6EA0FF0B5FCA310337EB215>105
D<3903F01FC000FFEB7FF09038F1E0FC9038F3807C3907F7007EEA03FE497FA25BA25BB3
486CEB7F80B538C7FFFCA326217EA02B>110 D<EB07F0EB3FFE9038FC1F803901F007C0
3903C001E000078048486C7E48C7127CA248147E003E143E007E143FA300FE1580A8007E
1500A36C147EA26C147C6D13FC6C6C485A00075C3903F007E03900FC1F80D93FFEC7FCEB
07F021237EA126>I<EBFF06000713CE381F00FE003C133E48131E140E5A1406A27EA200
FE90C7FC6C7EEA7FFC383FFFC014F0000F7F6C7FC67FEB0FFF1300EC3F8000C0131F140F
6C1307A37E15006C5B6C130E6C5B38F7807838E1FFE038C07F8019237EA11E>115
D<1330A51370A313F0A21201A212031207381FFFFEB5FCA23803F000AF1403A814073801
F806A23800FC0EEB7E1CEB1FF8EB07E0182F7FAD1E>I<B53801FFF8A32603FE0013806C
48EB7C0000001478017E1370017F5B90383F81C090381F8380D90FC3C7FCEB07E614FE6D
5A6D5A6D7E80805B9038039F809038071FC09038060FE0EB0C0790381C03F0496C7E0170
7FEBF000000180000FECFF8026FFFC0313FCA326207F9F29>120
D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fd cmtt12 14.4 9
/Fd 9 118 df<913807FFF0023F13FE49B61280010715C04915E04915F0137F903AFFFC
003FF84801E0131F48138091C7FC485A4848EC0FF049EC07E0484891C7FC5B123F5B127F
5BA312FF90CAFCA97F127FA27F123F7F17FC6C6CEC01FE7F6C7E6C6C14036DEC07FC6C01
C0130F6C01F0EB1FF86C01FEEBFFF06DB612E06D15C0010F15806D1500010114FC6D6C13
F0020790C7FC2F3678B43E>99 D<EC1FF891B57E010314E0010F14F84980017F8090B7FC
48D9F80F1380DAC00113C048496C13E04848C7123F4848EC1FF049140F484815F8160748
4815FCA248481403A24915FEA200FF1501A290B7FCA517FCA290CAFC7FA2127FA27F123F
6D15FCA26C6CEC01FE7F6C6C14036C6C14076DEC0FFC6C6D131F6C01E0EB7FF86C9039FC
03FFF06DB612E06D15C06D158001071500010114FC6D6C13E0020790C7FC2F3679B43E>
101 D<923801FFC0030F13F0033F13FC92B512FE5C4A14FF5C4A1303EC1FF89238F001FE
EC3FE09238C000FC027F14005DAA003FB712F05AB812F8A36C16F0A2C7D87F80C7FCB3B3
003FB7FCA2481680A36C1600A2304A7CC93E>I<DA0FF0EB1FF0DA7FFEEBFFFC49B50083
13FE010714EF4991B6FC5B5B90267FF81F13F19026FFE007EB00FEDA8001147C4890C7EB
800049147F00038249143FA200078249141FA66D143F00035EA26D147F00015E6D14FF6C
6D4890C7FCECE00790397FF81FFE90B65A5E485D5E01F914802703F87FFEC8FCEC0FF091
CAFCA46C7EA213FF6C90B512F8EEFFC06D15F090B712FC4816FF4817804817C04848C700
0F13E0D81FF09138007FF04848ED1FF84915074848ED03FC90C91201A24817FE481600A5
6C1601A26C6CED03FC6D15076C6CED0FF8D81FF8ED3FF001FE15FF6C6C6C010313E06C01
FC017F13C06C90B71280C6EEFE006D5D011F15F0010715C001004AC7FC020713C038517D
B33E>I<143E147F4A7E497FA56D5B6EC8FC143E91C9FCAC003FB57E5A81A47EC7123FB3
B3007FB71280B812C0A56C16802A4A76C93E>105 D<ED07FC3B3FFF803FFF804891B512
E0B500C38002C78002CF806C01DF806C9038FFF80FD8003F9038C003FFED00014A7F4A81
5C177F5CA25CA35CB3A8003FB5D8C07FB51280486EB612C0B66C15E0A36C4A15C06C4A6C
14803B347FB33E>110 D<EC1FF0ECFFFE01036D7E010F14E04980017F14FC90B67E4890
38F01FFFECC00748D90001138048486D13C04848EC7FE049143F4848EC1FF049140F003F
16F8491407A24848EC03FCA448C8EA01FEAA6D1403007F16FCA26D1407A2003F16F86D14
0F6C6CEC1FF0A26C6CEC3FE06D147F6C6CECFFC06D5B6CD9C00713806CD9F01F13006C90
B55A6D5C6D5C010F14E001031480010049C7FCEC1FF02F3679B43E>I<EE07FE263FFFF8
90387FFFC0484AB512E0B5D8FC0714F05D4B14F86C5C6C91387FFC0FD80003EBFFC002FD
90380007F0DAFFFEEB03E003F890C7FC5D5DA25D5DA292C9FCA25CA45CB3A3003FB612FC
4881B7FCA37E6C5D35347CB33E>114 D<263FFF80EB7FFF4892B5FCB56C4880A36C806C
81D8003FEC007FB3AC17FFA25E5E80011F140F6E5B02FE90B612806DB812C06D17E08301
0114FE6DDAF83F13C0023F01E01480020790C9FC3B347FB23E>117
D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fe cmcsc10 17.28 3
/Fe 3 118 df<DC7FF814380307B56C1378033F02E013F84AB612F802079039F007FE01
021F90C7EAFF03DA3FFCEC1F87DAFFF0EC0FCF4901C0EC03EF4949EC01FF4948C9FC4948
167F4948163F4948161F017F170F495A48491607A2484916035A91CA12015A5B001F1800
A2123F5B1A78127FA34995C7FC12FFAE007F040FB612F87FA3003FDC0003EBFE00953800
7FFC6D60001F183FA26C7EA27E807E6C7FA26C7F6D7E6D7E131F6D6C167F6DB4FC6D6D15
FF6D6D5C6D01F0EC03E7DA3FFCEC0FE36EB46CEB3FC102079039F003FF00020190B54813
78DA003F02F81338030702C090C7FC9226007FFCC9FC4D4E79CB5C>103
D<B500F8031FB512E080A280C66C6C0301EBFE006D6D9138007FF8F11FE081013D6D6F5A
A2013C6D6F5A6E7E6E7EA26E7E6E7E82806E7F6E7FA26E7F6F7E82153F6F7E6F7EA26F7F
6F7F83816F7F707EA2707E707E83827013807013C0A27013E07013F0EF7FF8A2EF3FFCEF
1FFEA2EF0FFF7113877113C7A27113E77113F719FF848484A28484A284017E828413FF19
7F000301C0163F000F13F0B6161F190F1907A24B4A7AC958>110
D<B600FE021FB512E0A4000191C80001EBFE0026007FFC9238007FF86D48EE1FE0A2735A
A2735AB3B3A8190F011F95C7FC80A2010F5F191E6D6C163E193C6D6C167C616D6D5D6D16
016E6C4A5A6E6C4A5ADA1FF8EC1F806E6C027FC8FC6EB4EB01FE02019038E00FFC6E6CB5
12F0031F14C0030791C9FC9238007FF84B4C7AC958>117 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Ff cmtt12 13.14 13
/Ff 13 119 df<EC03C04A7E4A7EB2003FB712F84816FCB812FEA46C16FC6C16F8C7D80F
F0C7FCB26E5A6E5A2F307CB838>43 D<EA0F80EA1FC0EA3FE0EA7FF0EAFFF8A5EA7FF0EA
3FE0EA1FC0EA0F800D0D6B8C38>46 D<EA0F80EA1FC0EA3FE0EA7FF0EAFFF8A5EA7FF0EA
3FE0EA1FC0EA0F80C7FCB3A3EA0F80EA1FC0EA3FE0EA7FF0EAFFF8A5EA7FF0EA3FE0EA1F
C0EA0F800D2F6BAE38>58 D<EA3FFE487EB5FCA37E7EC67EACED3FC0913801FFF8020713
FE021F7F4A804A8091B67E03C07F9139FE001FF802F86D7E4A13034A6D7E5C707E4A8018
8091C8123FA318C0171FA9173F6E1580A2177FA26EECFF00A26E495A6E13034C5A6E495A
02FE133F6E6CB45A92B55A6E5C6E5C6E91C7FC6D6C13FCD91E0313F090C7EA7F8032447F
C238>98 D<ED1FFF4B7F5DA38181ED003FACEC7F80903803FFF0010F13FC013F13FF4914
BF90B7FC5A48EBC07F48EB000FD80FFC7F497F48487F497F485A167F485A163F90C8FCA2
5A5AA97E6C157FA36D14FF123F6D5B6C7E5D6C6C5B01FC5B6C6C133F2603FFC0B6FC6C90
B712806C03BF13C06D143F6D13FC6D01F814800107D9E01F1300010090C9FC32447CC238
>100 D<EC3FE0903801FFFC010713FF011F14C04980498090B67E489038E03FFC489038
0007FE48481301D80FF86D7E49804848158049143F003F16C049141F127F90C8FC17E016
0F5A90B7FCA617C048CAFC7E7EA27FA26C7EEE07C06C6CEC0FE07F6C7ED807FE141F6DEC
3FC06C01C013FF6CD9FC0713806C90B612006D5C6D5C010F5C010314E001001480DA1FFC
C7FC2B327AB038>I<91397FC003FC903A01FFF01FFF0107D9FC7F1380011F90B612C05B
5B90B8FC48903AC07FFE1F80913A001FF00F0048486D6CC7FC49130748486D7E49130100
0F81491300A76D130100075D6D13036C6C495A6D130F6C6C495AECC07F91B55A5E485D93
C8FCD807F713FC01E113F09038E07FC091CAFCA27F12037F6D7E6CB612C06C15FC4815FF
4816C048824882D81FF8C76C7ED83FE0EC07FC0180EC01FE48C9FC177F007E8200FE1780
48161FA66C163F007FEE7F006D5D6C6C4A5A01F01407D81FFEEC3FFC3B0FFFE003FFF86C
90B65A6C5EC61680013F4AC7FC010F14F8010314E09026003FFEC8FC324A7DAF38>103
D<387FFFFEB6FCA57EC77EB3B3B1007FB7FCB81280A56C1600294379C238>108
D<023FEB07E03B3FE0FFC01FF8D87FF39038E07FFCD8FFF76D487E90B500F97F15FB6C91
B612806C01C1EBF83F00030100EBE01F4902C013C0A24990387F800FA2491400A349137E
B3A73C3FFF03FFE07FFC4801879038F0FFFEB500C76D13FFA36C01874913FE6C01039038
E07FFC383080AF38>I<ED7FC03A3FFE01FFF8267FFF0713FEB5001F7F4A805C6C90B67E
6CECC07F3B007FFE001FE002F8130F4A805C16075C5CA391C7FCB3A6273FFFFE03B512E0
486D4814F0B6008F14F8A36C020714F06C496C14E035307FAF38>I<EEFFC0277FFFC007
13F8B5D8E01F13FC037F13FE92B5FC02E114FF14E36C01E713813A000FEFFC019139FFF0
00FE4B137C0380130092C8FCA25C5CA25CA25CA45CB2007FB67EB77E82A35E6C5D30307C
AF38>114 D<903907FF80F0017FEBF1F848B512FD000714FF5A5A5AEBFC00D87FE0131F
0180130F48C71207481403A5007FEC01F001C090C7FCEA3FF013FE381FFFF86CEBFFC000
0314F8C614FF013F1480010714E0D9003F13F0020013F8ED0FFC1503003CEC01FE007E14
0000FE15FF167F7EA37F6D14FF16FE01F013036DEB07FC01FF137F91B512F816F016E048
15C0D8FC3F1400010F13FCD8780113E0283278B038>I<263FFFE090B51280486D4814C0
B56C4814E0A36C496C14C06C496C1480D800FCC73807E0006D140F017E5DA36D4A5AA36E
133F011F92C7FCA26E5B010F147EA26E13FE01075CA2ECF00101035CA2ECF80301015CA2
ECFC0701005CA2ECFE0F027E5BA2EC7F1F023F5BA215BF021F90C8FCA215FF6E5AA36E5A
6E5A33307EAE38>118 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fg cmss10 10.95 3
/Fg 3 115 df<EB03F8EB1FFF017F13C090B57E488048803807FE07390FF801FC9038E0
00FE4848137E003F143E49133F90C77E5A127EED0F80B7FCA600FCC9FCA37E127EA2127F
A26C7EA26C7E6D14806C6C1303D807FC131F01FF13FF6C90B5FC7E6C6C14006D13FC010F
13E0010190C7FC212B7DA928>101 D<EB01FE90380FFFC0013F13F0497F90B57E000314
FF14033A07F8007F804848EB3FC04848EB1FE049130F4848EB07F0A290C712034815F8A2
007E140100FE15FCA96C14036C15F8A36C6CEB07F06D130FA26C6CEB1FE06C6CEB3FC001
FC13FF2607FF0313806C90B512006C5C6C5C013F13F0010F13C0D901FEC7FC262B7DA92D
>111 D<00FC137CEB03FC130F131F133F137FEBFFC038FDFE00EAFFF85B5B5BA25BA290
C7FCA25AB3A6162979A81F>114 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fh cmr7 7 2
/Fh 2 51 df<13381378EA01F8121F12FE12E01200B3AB487EB512F8A215267BA521>49
D<13FF000313E0380E03F0381800F848137C48137E00787F12FC6CEB1F80A4127CC7FC15
005C143E147E147C5C495A495A5C495A010EC7FC5B5B903870018013E0EA018039030003
0012065A001FB5FC5A485BB5FCA219267DA521>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fi cmr8 8 37
/Fi 37 124 df<123C127EB4FCA21380A2127F123D1201A312031300A25A1206120E5A5A
5A126009157AAD14>39 D<B512C0A412047F9018>45 D<130C133C137CEA03FC12FFEAFC
7C1200B3B113FE387FFFFEA2172C7AAB23>49 D<48B4FC000713E0381E01F8383800FC48
137E0060133E00F8133F7EA40030137FC7127E14FCEB01F8EB03F014E0EB0780EB0F00A2
131E131CA2131813381330A790C7FCA7137813FC487EA46C5A1378182F7CAE21>63
D<4A7E4A7EA34A7EA24A7EA3EC1BF81419A2EC30FCA2EC70FEEC607EA24A7EA349486C7E
A2010380EC000FA201066D7EA3496D7EA2011FB57EA29038180001496D7EA349147EA201
E0147F4980A20001ED1F801203000716C0D80FF0EC3FE0D8FFFC0103B5FCA2302F7EAE35
>65 D<B612FCEDFF803A03F8000FC00001EC03F06F7E6F7E82167E167FA6167E16FE5E4B
5A4B5AED0FE0ED7F8090B6C7FC16E09039F80003F0ED01FC6F7E167F821780161F17C0A6
1780163F17005E16FEED03FC0003EC0FF0B712C04BC7FC2A2D7DAC32>I<DA1FF013C091
38FFFE01903903F00F8390390F8001E3013FC71277017C143F4848141F4848140F484814
07A248481403121F491401123F90C8FC481500A300FE1600AB127F17C0A27E7F001F1501
6D1580120F6C6C1403EE07006C6C14066C6C140ED8007C5C013F147890390F8001E09039
03F00FC0902600FFFEC7FCEC1FF02A2F7CAD33>I<B612F815FF3A03F8001FE00001EC03
F0ED00F8167E82EE1F80160F17C0EE07E0A2EE03F0A217F81601A317FCAA17F8A3EE03F0
A217E0160717C0160FEE1F80EE3F00167E5EED03F00003EC1FE0B7128003F8C7FC2E2D7D
AC36>I<B712FEA23903F800010001EC003E828282A282A3178016011518A293C7FCA315
38157815F890B5FCA2EBF800157815381518A21760A392C712C0A4160117801603A21607
160F163F0003913801FF00B8FCA22B2D7EAC30>I<B712FCA23903F800030001EC007C16
3E161E160EA21606A3160716031518A21600A31538157815F890B5FCA2EBF80015781538
1518A592C7FCAB487EB512F8A2282D7EAC2E>I<90387FFFF0A201001300147EB3AD1238
12FEA314FE5C1278387001F86C485A381E07E03807FF80D801FCC7FC1C2E7DAC24>74
D<B512F8A2D803FCC8FC6C5AB3A7160CA41618A41638A2167816F81501ED07F00003141F
B7FCA2262D7EAC2C>76 D<D8FFF8923807FFC06D5D0003EFF00000015F01BE151BA2019F
1533A3D98F801463A2D987C014C3A2D983E0EB0183A3D981F0EB0303A2D980F81306A302
7C130CA26E1318A36E1330A291380F8060A2913807C0C0A3913803E180A2913801F300A3
EC00FEA2157C487ED80FF04B7EB5D93801B512C0A23A2D7DAC41>I<D8FFF8903803FFFC
7F00019138003FC06DEC0F006D1406EBBF80A2EB9FC0EB8FE0138780EB83F8138180EB80
FE147E147FEC3F80EC1FC0140F15E0EC07F0140315F8EC01FC140015FE157FED3F86151F
16C6ED0FE6150716F6ED03FE1501A21500167E163EA2486C141ED80FF0140EB5FC16062E
2D7DAC35>I<B612FCEDFF803A03F8000FE00001EC03F0ED00F882167E167F821780A617
005E167E5E5EED03F0ED0FE090B6128003FCC7FC01F8C9FCB2487EB512F0A2292D7EAC30
>80 D<B612C015FC3903F8007F0001EC0FC06F7E6F7E6F7E82150082A55E15015E4B5A4B
5A4B5A037FC7FC90B512FC15F09038F800FC153E6F7E150F826F7EA582A5170316F81503
1707486C903801FC0EB539F000FE1CEE3FF8C9EA07E0302E7DAC34>82
D<90383F80303901FFF0703807C07C390F000EF0001E13074813034813011400127000F0
1470A315307EA26C1400127E127FEA3FE013FE381FFFE06C13FC6C13FF00011480D8003F
13E013039038003FF0EC07F81401140015FC157C12C0153CA37EA215787E6C14706C14F0
6CEB01E039F78003C039E3F00F0038E07FFE38C00FF01E2F7CAD27>I<007FB712F8A290
39000FC003007C150000701638A200601618A200E0161CA248160CA5C71500B3A94A7E01
1FB512E0A22E2D7EAC33>I<B539F003FFFCA2D803FCC7EA3FC06C48EC0F001606B3AB16
0E0000150C7F161C017C1418017E14386D5C6D146090390F8001E0903907E00380902601
F80FC7FC9038007FFCEC0FF02E2E7DAC35>I<EAFFE0A3EAE000B3B3B3A7EAFFE0A30B43
79B114>91 D<13FF000713C0380F01F0381C00F8003F137C80A2143F001E7FC7FCA4EB07
FF137F3801FE1FEA07F0EA1FC0EA3F80EA7F00127E00FE14065AA3143F7E007E137F007F
EBEF8C391F83C7FC390FFF03F83901FC01E01F207D9E23>97 D<EA07C012FFA2120F1207
AC14FE9038C7FF809038CF03E09038DC01F09038F8007C49137E49133E497F1680A2150F
16C0A9ED1F80A216005D6D133E6D5B01B05B9038BC01F090380E07E0390607FF80260001
FCC7FC222F7EAD27>I<15F8141FA214011400ACEB0FE0EB7FF83801F81E3803E0073807
C003380F8001EA1F00481300123E127EA25AA9127C127EA2003E13017EEB8003000F1307
3903E00EFC3A01F03CFFC038007FF090391FC0F800222F7EAD27>100
D<EB1F80EBFFF03803E0783807C03E380F801E381F001FEC0F80123E007E130715C0127C
12FCA3B6FCA200FCC8FCA5127EA2003E14C0123F6C1301390F80038001C013003803E00F
3801F03C38007FF8EB1FC01A207E9E1F>I<EB03F0EB0FFCEB3E1EEB7C3F13F8EA01F0A2
3803E00C1400AAB512E0A23803E000B3A6487E387FFF80A2182F7FAE16>I<013F13F890
38FFC3FE3903E1FF1E3807807C000F140C391F003E00A2003E7FA76C133EA26C6C5A0007
1378380FE1F0380CFFC0D81C3FC7FC90C8FCA3121E121F380FFFF814FF6C14C04814F039
1E0007F848130048147C12F848143CA46C147C007C14F86CEB01F06CEB03E03907E01F80
3901FFFE0038003FF01F2D7E9D23>I<EA07C012FFA2120F1207ADEC1FFEA2EC0FF0EC07
C05D020EC7FC5C5C5C5CEBC3C013C7EBCFE0EBDFF013F9EBF0F8497EEBC07E143E80816E
7E14076E7E816E7E486C487E3AFFFE07FF80A2212E7EAD25>107
D<EA07C012FFA2120F1207B3B3A3EA0FE0EAFFFEA20F2E7EAD14>I<EB1FE0EB7FF83801
F03E3803C00F3907800780390F0003C04814E0003EEB01F0A248EB00F8A300FC14FCA900
7C14F8A26CEB01F0A26CEB03E0A2390F8007C03907C00F803901F03E0038007FF8EB1FE0
1E207E9E23>111 D<90380FE01890387FF8383801F81C3903E00E783807C007390F8003
F8001F1301EA3F00A2007E1300A212FE5AA8127EA36C13017EEB8003380FC0073803E00E
3801F03C38007FF0EB1FC090C7FCA94A7E91381FFFC0A2222B7E9D25>113
D<380781F838FF87FEEB8E3FEA0F9CEA07B813B0EBF01EEBE000A45BB0487EB5FCA2181E
7E9D1C>I<3801FE183807FFB8381E01F8EA3C00481378481338A21418A27E7EB41300EA
7FF06CB4FC6C13C06C13F0000113F838001FFC130138C0007E143EA26C131EA27EA26C13
3CA26C137838FF01F038E3FFC000C0130017207E9E1C>I<D807C013F800FF131FA2000F
130100071300B21401A314033803E007EC0EFC3A01F81CFFC038007FF890391FE0F80022
1F7E9D27>117 D<3BFFFC3FFE07FFA23B0FE003F001F801C09038E000F00007010114E0
812603E00314C0A2913807F8012701F006781380A29039F80E7C030000D90C3C1300A290
397C181E06A2151F6D486C5AA2168C90391F600798A216D890390FC003F0A36D486C5AA3
6DC75A301E7F9C33>119 D<3AFFFC07FF80A23A0FF003FC000003EB01F0000114C06D48
5A000091C7FCEB7C06EB3E0E6D5A14B8EB0FB0EB07E013036D7E497E1307EB067C497EEB
1C1F01387FEB700F496C7E6E7ED803C07F00076D7E391FE003FC3AFFF007FFC0A2221D7F
9C25>I<3AFFFC01FFC0A23A0FE0007E000007147C1538000314306D137000011460A26C
6C5BA2EBFC01017C5BEB7E03013E90C7FCA2EB1F06A2148EEB0F8CA2EB07D8A2EB03F0A3
6D5AA26D5AA2495AA2130391C8FC1278EAFC06A25B131CEA7838EA7070EA3FE0EA0F8022
2B7F9C25>I<B712C0A22202809223>123 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fj cmsy9 9 2
/Fj 2 106 df<EB0180EB03C01307A21480130FA2EB1F00A2131E133EA25BA2137813F8
A2485AA25B1203A2485AA25B120FA248C7FCA2121E123EA25AA2127812F8A41278127CA2
7EA2121E121FA26C7EA212077FA26C7EA212017FA26C7EA21378137CA27FA2131E131FA2
EB0F80A2130714C0A21303EB0180124A79B71E>104 D<126012F07EA21278127CA27EA2
121E121FA26C7EA212077FA26C7EA212017FA26C7EA21378137CA27FA2131E131FA2EB0F
80A2130714C0A41480130FA2EB1F00A2131E133EA25BA2137813F8A2485AA25B1203A248
5AA25B120FA248C7FCA2121E123EA25AA2127812F8A25A1260124A7CB71E>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fk cmbx12 13.14 62
/Fk 62 122 df<923807FFE092B512FC020714FF021F81027F9038007FC0902601FFF0EB
0FE04901C0497E4990C7487ED90FFC147F011F824A14FF495AA2137F5CA2715A715A715A
EF078094C8FCA7EF07FCB9FCA526007FF0C7123F171FB3B3A2003FB5D8E00FB512F8A53D
4D7ECC44>12 D<157815F81401EC03E0140FEC1FC0EC3F80EC7F0014FE5C1301495A495A
130F5C131F495AA2495AA249C7FC5AA2485AA3485AA2120F5BA2121FA25BA2123FA35B12
7FA612FFA25BAF7FA2127FA6123F7FA3121FA27FA2120FA27F1207A26C7EA36C7EA27E6D
7EA26D7EA26D7E130F8013076D7E6D7E130080147FEC3F80EC1FC0EC0FE01403EC01F814
0015781D6D75D130>40 D<127012F8127C7EEA3F806C7E6C7E6C7E6C7E12017F6C7E137F
80133F806D7EA26D7EA26D7E80A26D7EA36D7EA215807FA215C0A2147FA215E0A3143F15
F0A615F8A2141FAF143FA215F0A615E0147FA315C0A214FFA21580A25B1500A2495AA349
5AA25C495AA2495AA2495A5C137F91C7FC13FE485A5B1203485A485A485A485A003EC8FC
5A5A12701D6D79D130>I<B7FCAA200A7F9D29>45 D<EA07E0EA1FF8EA3FFCEA7FFEA2B5
FCA6EA7FFEA2EA3FFCEA1FF8EA07E01010778F22>I<177817F8EE01FCA21603A2EE07F8
A217F0160FA217E0161FA2EE3FC0A21780167FA217005EA24B5AA25E1503A24B5AA25E15
0FA25E151FA24B5AA25E157FA24BC7FCA25D1401A25D1403A24A5AA25D140FA24A5AA25D
143FA25D147FA24AC8FCA25C1301A25C1303A2495AA25C130FA2495AA25C133FA25C137F
A249C9FCA25B1201A2485AA25B1207A25B120FA2485AA25B123FA25B127FA248CAFCA25A
A2127CA22E6D79D13D>I<EC0FFC91B512C0010714F8498090393FFC0FFF90267FE0017F
49486C7F48496D7E4890C76C7E49141F000782000F8249140F001F82A3003F824980A200
7F1780A600FF17C0B3A4007F1780A6003F17006D5CA2001F5EA3000F5E6D141F00075E6D
143F6C5E6C6D495A6C6D495A90267FF0035B90263FFC0F90C7FC010FB512FC6D5C010014
C0DA0FFCC8FC32487BC63D>I<15F014011407141F147FEB03FF137FB6FCA313FC1380C7
FCB3B3B2007FB712E0A52B4777C63D>I<ECFFF80107EBFF80013F14F090B612FC488148
0101EBFF802707F8003F13C0D80FE0010F13E0D81F806D13F0003F80D87FF06D13F86D15
FC6D7F00FF16FE6D147FA217FF82A36C5A6C5A6C5A6C5AC95A17FEA3EEFFFCA24B13F817
F05D17E04B13C017804B13004B5A4B5A5EED7FE04B5A4A5B4A90C7FCEC07FC4A5A4A5A4B
131FEC3F804AC7FC14FE4948143E495AEB07E0495A4948147E49C8FC017E15FE90B7FC48
16FC5A5A5A5A5A5AB8FC17F8A430477AC63D>I<EC3FFE0103B512E0010F14FC013F14FF
90267FE01F7F9026FF000713E0D801FC6D7FD803F07F486C6D7FD80FFE817F486D80167F
A3805C16FF7E91C75B6C5A6C5AD80020495B90C75C5D5F4B5B5F031F90C7FCED3FFC4AB4
5A49B512E0168016E016FC90C7EA3FFF030713C06F7F6F7F6F7F83707E83A2701380A318
C0EA07E0EA1FF8487E487EA2B5FCA31880A25E491600127F494A5A6C485D01E05B001F4A
5BD80FFC495B2707FFC03F13C06C90B65AC64BC7FC013F14F8010714E09026007FFEC8FC
32487BC63D>I<EE07E0160FA2161F163F167F16FFA25D5D5DA25D5D5DA2157D15FDEC01
F915F1EC03E11407EC0FC1EC1F811501143F147E14FC14F8EB01F01303EB07E014C0EB0F
80131FEB3F00133E5B13FC485A485A5B1207485A485A90C7FC123E127E5AB912FCA5C800
03EBE000AD023FB612FCA536487DC73D>I<D8038015E001E0140301FC143F9039FFE003
FF91B612C017801700A25E5E16F05E5E93C7FC15FC15F001E790C8FC01E0C9FCAAEC1FFC
01E1B512C001E714F001EF14FC9039FFE01FFFDA0007138001FC6D13C001F06D13E04915
F0497F17F8C913FC167F17FEA417FFA3EA0FC0EA3FF0487EA2487EA317FEA34914FF6C48
15FC5B018015F86CC74813F07F6C6C4913E0D80FF04913C0D807FC011F13806CB46CB512
006C90B512FC6C5D013F14C0010F91C7FC010113F030487AC63D>I<ED7FF8913807FFFE
021F6D7E027F80903A01FFF01FE0010790388003F04948486C7E49486D7ED93FF0130749
48130F01FF4A7E4849133F5C5A4890C7FCA25A705A48486E5A705A003F92C8FCA3485AA2
1520913807FFE0021F13FC00FF497F4A6D7EDAFC017F9026FDF0007F4A6D7ED9FFC06D7E
4A6D7E8391C7FC8382491680A318C05BA3127FA6123FA27F001F1780A3000F4B1300A26C
6C5DA26C6D495A6C6D5C6C6D495A6D6C48485A90263FFC075B6DB65A6D4AC7FC01035C01
0014F0020F90C8FC32487BC63D>I<121F7F7F13FE90B812E0A45A18C0188018005F5FA2
5F485E90C8EA07E0007E4B5A5F007C151F4CC7FC167E5E485D15014B5A4B5AC8485A4B5A
A24BC8FC157EA25D1401A24A5A1407A24A5AA2141FA24A5AA2147FA314FFA3495BA45BA5
5BAA6D5BA26D90C9FCEB007C334B79C93D>I<EC1FFF49B512F0010714FC011F14FF9026
3FF00713C049C77F01FCEC3FF04848EC0FF848481407000782491403000F821601A2121F
7FA27F13FE6D140302C05C14F002FC495A6C6D130FDAFF805B9238E01FE06C6E485A9238
FCFF806C91B5C7FC6C15FC6C5D7F6D14FE6D806D15C06D81011F81017F81D9FFDF804813
072603FE018048486C804848133F4848010F1480003F8049130148486D6C13C0161F8248
48140382A282A2177FA218807F127FEFFF007F6C6C4A5AA2D81FFC4A5A6C6CEC0FF86C6C
6CEB3FF06C9039F003FFE06C90B612806C6C92C7FC011F14FC010714E09026003FFEC8FC
32487BC63D>I<EC1FFE49B512C0010F14F04914FC90397FFC0FFE903AFFE003FF804849
C67F48496D7E4890C7FC486F7E484881161F003F825B007F82A28300FF81A31880A518C0
A45E127FA3003F5D7F121F5E120F6C6C91B5FC6C90388001EF6CEBC0036C9038E00FCF6D
B5128F011F140F010701FE1480010113F8903800010091C7FCA24C1300A3D803F85D487E
487E486C4A5AA25F4C5AA24C5A49495B6C485D49010790C7FC01E0495AD807F8EB3FFC6C
B448B45A6C90B55A6C15C06D91C8FC011F13FC010313C032487BC63D>I<EE01F8A24C7E
A34C7EA24C7EA34C7FA24C7FA34C7FA293B57EA34B8016F303038016E316E103078016C0
030F805E83031F814C7E4B81153E83037E81037C7F03FC815D830201824B7F0203825D83
0207824B7F020F825D84021F8392B8FC4A83A34A83027CC8120F02FC835C840101844A81
0103845C840107844A81010F845C85011F85496C82B600C091B712F0A5544D7CCC5D>65
D<B912F0F0FF8019F019FC19FFD8001F0180C780061F7F727F727F727F727FA2727FA219
7F86A84F5AA2626062604E5B4E5B4E1380067F90C7FC943803FFFC92B712F0198019F019
FC0380C7383FFF80060F7F060313F0727F727F737E86851B80851BC0A21BE0A48561A41B
C0A2611B80611B0096B5FC4E5B4E5B060F5B067F5BBB12C097C7FC19FC19F04EC8FC4B4B
7CCA57>I<93261FFF80EB01C00307B500F81303033F02FE13074AB7EAC00F0207EEE03F
021F903AFE007FF87F027F01E0903807FCFF91B5C70001B5FC010301FC6E7E4901F0151F
4901C0814949814990C97E494882494882485B48197F4A173F5A4A171F5A5C48190FA248
5B1A07A25AA297C7FC91CDFCA2B5FCAD7EA280A2F207C07EA36C7FA26C190F6E18807E6E
171F6C1A006E5F6C193E6C6D177E6D6C5F6D6C4C5A6D6D15036D6D4B5A6D01F04B5A6D01
FCED3FC0010001FFEDFF806E01E0D903FEC7FC021F01FEEB3FFC020790B612F002015EDA
003F92C8FC030714FCDB001F13804A4D79CB59>I<B912F0F0FF8019F019FC19FFD8001F
902680000114C0DD001F7F060713F806017F726C7E737E737F737F737F8587737F8587A2
747EA38786A21C80A51CC0A586A462A51C80A51C00A26263A2631AFF636163614F5B634F
5B073F90C7FC4F5A4F5A06035B061F5B4DB512C0BBC8FC19FC19F0198006F0C9FC524B7C
CA5E>I<BB12C0A486D8000F01E0C77E18071801F0007F193F191F190F1907861903A319
01A3EF0F80A2737EA497C7FC171FA2173F177F17FF160392B6FCA5EDE0031600177F173F
171FA2050FEC0F80A3F21F00A494C8FC621A3EA21A7EA31AFE6219011903A21907190FF1
3FF819FF1803183FBBFCA262A3494A7CC951>I<BBFCA41A80D8001F01C0C7FC181F1803
8484197F193F191F1AC0190FA31907A4171FF103E0A496C7FCA25FA25F5F5E160792B6FC
A5EDC0071601828383A283A794C9FCB1B8FCA5434A7CC94D>I<93261FFF80EB01C00307
B500F81303033F02FE13074AB7EAC00F0207EEE03F021F903AFE007FF87F027F01E09038
07FCFF91B5C70001B5FC010301FC6E7E4901F0151F4901C0814949814990C97E49488249
4882485B48197F4A173F5A4A171F5A5C48190FA2485B1A07A25AA297C8FC91CEFCA2B5FC
AD6C040FB712C0A280A36C93C7001FEBC000A2807EA27E807E807E806C7F7E6D7E6D7E6D
7F6D01E05D6D6D5D6D13FC010001FF4AB5FC6E01E0EB07F9021F01FFEB3FF0020791B5EA
E07F0201EEC01FDA003FED0007030702F81301DB001F018090C8FC524D79CB61>I<B7D8
FC01B712F8A5D8001F01C0C8001FEBC000B3AA92B9FCA503C0C8121FB3AEB7D8FC01B712
F8A5554B7BCA60>I<B712FEA5D8000FEBE000B3B3B3ABB712FEA5274B7DCA2E>I<B700F8
027FB512F0A5D8001F01C0C9EBC00074C7FCF101FE4F5A4F5AF10FE04F5A4F5A4FC8FCF0
01FE4E5A4E5AF00FE04E5A4E5A4EC9FCEF01FE4D5A4D5AEF0FE04D5A4D5A4DCAFCEE01FE
16034C7E4C7F5E4C7F93B57E03C18015C303C780DBCFE77FDBDFC37FEDFF8104017F4B6C
804B7F4B6D7F03E0814B6D7F8385717F717F83857180727F8486727F8486727F727F8486
7280737F8587737F87B700F8010FB612FCA5564B7CCA60>75 D<B8FCA5D8001F01C0C9FC
B3B3A4193EA4197E197CA519FCA31801A2F003F8A21807180F181F183F187FEF01FF1707
173FBA12F0A53F4B7BCA4A>I<B600E04DB612806F5FA26F5FA2D8001F09FCC7FC6FEF0F
7FA2DABFFE171EA2DA9FFF173CA3028F6D1678A202876D16F0A202836DED01E0A302816D
ED03C0A202806DED0780A26F6CED0F00A36F6C151EA26F6C5DA26F6D5CA26F6D5CA36F6D
495AA26F6D495AA26F6D495AA3706C49C7FCA2706C131EA2706C5BA3706D5AA2706D5AA2
70EBE1E0A370EBF3C0A270EBFF80A27190C8FCA2715AA3715AA2715A497EB600F06D4801
03B71280A3715A715A694B7BCA74>I<B600E092B612F88181A281D8001F6D9239001FE0
006F705A82A28202BF7F029F7FA2028F7F02877F02837F8214810280806F7F6F7F83816F
7F6F7F6F7F83816F80707F707F8482707F707F707FA2707F7014807113C019E0837113F0
7113F87113FC19FE837113FF71148F7213CF1AEF847213FF8484A284848485A2858585A2
85858585497EB600F8167F1A3F1A1F1A0FA2554B7BCA60>I<EEFFF8031FEBFFC04AB612
FC020715FF021FD9C01F13C091277FFE000313F0902601FFF09038007FFC49496E7E4901
80EC0FFF4990C86C7F49486F7F49486F7F017F8449486F7F4849707EA24849707E4885A2
4849701380A2481AC04A82A2481AE0A34890CA6C13F0A5B519F8AE6C1AF0A26E5EA36C1A
E0A26E5E6C1AC0A26C1A806E5E6C1A006E5E6C616E16FF6C616C6D4B5B6D6C4B5B6E5D6D
6D4A5B6D6D4A5B01076D4A90C7FC6D01F8ECFFFE6D01FE01035B9028007FFFC01F13F002
1F90B612C0020793C8FC020115FCDA001F14C0030101FCC9FC4D4D79CB5C>I<B912C018
FCF0FF8019F085D8001F902680000713FE05007F063F1380060F13C07213E01AF0841AF8
A27213FCA31AFEA81AFCA34E13F8A21AF0601AE04E13C0063F138095B51200050713FC92
B75A19E096C7FC18F803C0CAFCB3ABB712FCA5474B7BCA54>I<B9FC18F8F0FF8019E019
F8D8000F9026C0000713FE9439007FFF80061F7F727F727F727F84868684A286A862A24E
5BA2624E5B4E5B4E5B4E5B95B5C8FC050713FC92B712F0198006FCC9FC18FF9226C0003F
13C0050713F0717F717F717F187F85727FA28486A786A71C3E86A28474137E72157C726D
13FCB700FC6D9038FE01F872EBFF8373EBFFF0071F14E007031480CD383FFE00574C7CCA
5C>82 D<DA7FFCEB01C00103B5EAC003011FECF00749ECFC0F90B7121F48D9E00F13BF48
90C713FFD807FC141F4848804848140382484880177F485A173F171F12FFA2170F7FA217
077F7F7F6D92C7FC6D7E6C13F014FF15F86CECFF8016F86C15FF6C16C0836C826C826C82
6C82013F816D1680010716C01300020F15E01400030714F0ED007F160F16037013F88217
7F127800F8163FA3171FA27E18F0A27EA26CEE3FE07F18C001E0157F6DEDFF8001FC1600
01FF140302E0EB0FFED97FFEEB3FFC486CB612F0D8FC0F5DD8F803158048C66C49C7FC48
010313F0354D79CB44>I<003FBB12C0A5DA80019038FC001FD9FC001601D87FF0943800
7FE001C0183F49181F90C7170FA2007E1907A3007C1903A500FC1AF0481901A5C894C7FC
B3B3A749B812FCA54C4A7CC955>I<B700F8023FB512F8A5D8001F01C0C9380FE000745A
B3B3AD6D180F63811A1F6D96C7FC626D7F1A7E6D7F6D606E6C4B5A6E6CED07F06E6C4B5A
6E01C0EC3FC06E01F049B45A020101FF011F90C8FC6E91B55A033F15F8030715E0030092
C9FC040713F0554C7CCA5E>I<B700F00203B6FCA5D8001F01E0C93803FC00745A6D6181
1A036D6D5F1A076D6D5F1A0F6D616F161FA26D6D94C7FC626E6D153E1A7E6E177C7015FC
6E5F8219016E6D5D19036E5F7014076E5F82190F6E6D5D191F6E6D92C8FC616F153E8319
7E6F6D137C19FC6F6D5B18016F5DEFF003A26F01F85B18076F01FC5B180F6F5DEFFE1F6F
92C9FC17FF607013BE18FE705BA2705BA3705BA2705BA2705BA3705BA27090CAFCA2177E
A2584C7ECA5D>I<B7D8E007B791B612C0A5D8003F0180C7000101FCC9387F80006F7070
C7FC6D70183EA26F70167E6D71177C876F1BFC6D715F6F831E016D656F4B6D14036D6587
6F92B515076D656F4A8007F3160F6E647001036E141F6E04E194C8FCA27001076E5C6E04
C0163E8770010F177E6E4C6C157C70011F814F6C15FC6E637049EDC0016E033E6D5D1CE0
70017E16036E037C6D5D7001FC15F04E6D14076E63DCFF01EEF80F6F4A6D5DA20583EEFC
1F6F4A6D92C9FC1CFE05C75F6F4A6D143E05EF16FF4E6E137E6F197C05FF17FC6F91C86C
5BA36F496F5BA24D816F61A26F496F5BA370486F5BA370486F90CAFCA24D81041F5FA270
48167C7A4C7ECA7F>I<B700F84AB6FCA5D8001F01F0C93803FC006F705A6D4E5A6D6D4C
5A816D4E5A6D6D4C5A826D4EC7FC6E6D5D70157E6E5F6E7F704A5A6E4C5A6E7F704A5A6E
4C5A6E7F71495A6E4CC8FC6F7F71137E6F5D6F7F71485A6F4A5A6F13FC71485A6F4A5A6F
13FFF09F806F02BFC9FC7013FF60705B8260705B8260B3A7037FB612FEA5584B7ECA5D>
89 D<ECFFFC010FEBFFC0017F14F090B612FC489038803FFE3B03FC0007FF80486C6D7F
6D7F486D6C7F83167F83A2707E6C90C7FC6C5A6C5AC9FCA5ED1FFF021FB5FC49B6FC130F
013FEBC03F9038FFFE00000313F04813C04890C7FC485A485AA2485AA2485AA4167FA26D
14FF007F15EF6D01017F6C6C903907CFFF806C6CD90F8F13FE6C9038E07F076C9038FFFE
0300014A7ED8003F9038F0007F0103018090C7FC37347CB23C>97
D<EB7FC0B5FCA512037EB3ED07FF037F13E002C1B512FC02C714FF9126CFF80F7F9126DF
C0017F02FFC77F4AEC3FF002F8814A6E7E717E4A81831980A37113C0A319E0AC19C0A35F
1980A219005F606E141F6E5D4D5A6E4A5A02BF4A5A91261FC0035B9027FE0FF01F5B496C
B548C7FCD9F80114F8496C6C13E0C8D80FFEC8FC3B4D7CCB44>I<91380FFF8091B512F8
010314FF010F15804948C613C0D97FF8EB1FE0D9FFE0EB3FF04849137F4849EBFFF84890
C7FCA2485A121FA24848EC7FF0EE3FE0EE1FC0007F92C7FC5BA212FFAC127FA27FA2123F
A26C6C153EA26C6C157E177C6C6D14FC6C6D14F86C6D13036C6DEB07F0D97FFCEB1FE06D
B4EBFFC0010F90B5120001035C010014F0020F13802F347CB237>I<EF1FF0EE3FFFA516
00177FB3EC0FFF91B512E0010314F8010F14FC013FEB01FF903A7FF8003FFFD9FFE0130F
48497F48497F4890C77E48815B121F5B123FA2127F5BA312FFAC127FA36C7EA3121F6D5C
120F6C6C5C6C6D5B6C5D6C01E0013F7F6D6C49EBFFE090393FFE03FE6DB512F801075C01
00148091261FFC00EBC0003B4D7CCB44>I<EC0FFF91B512F0010314FC010F14FF90263F
FE077F90267FF0007F49486D7E4801806D7E486F7E4890C7120F484881707E121F491403
003F82A2127F5B701380A212FFA390B8FCA401F8CAFCA5127FA27FA2123FA26C6CED0F80
A26C6C151F6C17006E5C6C6D147E6C6D5C6C6D495AD93FFCEB07F0903A1FFF803FE00107
90B55A010192C7FC6D6C13FC020713C031347DB238>I<ED7FF0913807FFFC023F7F4A7F
902601FFE0138049018113C049484813E0EB0FFCEB1FF8A2EB3FF0A2017F6D13C04A6C13
80EE7F00163E93C7FCACB77EA526007FF0C8FCB3B3A3003FB512F8A52B4D7DCC26>I<DA
7FFCEB0FE00103B538807FF8010F9138E1FFFC013F02FB13FE903A7FF01FFFF39026FFC0
07138348D90001130348168348486DEBC1FCEFC0F8000FEEE00049147F001F82A9000F5E
6D14FF00075EA26C6C495B6C93C7FC6C9038C007FE9138F01FFC4890B55A01EF14E0D803
C314809026C07FFCC8FC000790CAFCA47FA27F13FC90B612FCEEFFC06C16F817FE6C8218
806C17C06D16E00003B812F0120FD81FFCC7000F13F8D83FF0140049153F4848ED1FFC00
FF160F491507A56D150F007F17F86D151F6C6CED3FF06C6CED7FE0D80FFE913801FFC06C
6C6C010713806C01F8017F1300C690B612FC013F15F001071580D9003F01F0C7FC37497D
B13D>I<EB7FC0B5FCA512037EB3923801FFC0030F13F8033F7F4B13FFDBFE077F9138C1
F0039126C3E0017FDAC78080ECCF0014DE02DC6D7F14FC5CA25CA35CB3AAB6D8C07FEBFF
E0A53B4C7BCB44>I<13FCEA03FF487F487FA2487FA66C5BA26C5B6C90C7FCEA00FC90C8
FCABEB7FC0B5FCA512037EB3B3A2B61280A5194D7BCC22>I<EC01F8EC07FE4A7E4A1380
A24A13C0A66E1380A26E13006E5AEC01F891C8FCABEDFFC049B5FCA5EB000380B3B3AC12
02EA1FC0EA3FE0EA7FF0EAFFF84A1380A216005C5D6C48485A49485A003FEB7FF06CB55A
6C1480000349C7FC38007FF0226386CC26>I<EB7FC0B5FCA512037EB3A293383FFFFEA5
040390C7FC17FC4C5AEE0FE0EE3FC04C5A4CC8FC4B5AED03F8ED0FF04B5A4B5A4B5A4BC9
FC14C302C77F02CF7F02DF7F91B5FC824A7F4A6C7EECF83F9138E01FFE02C07F6F7F816F
7F836F7F81707E83707E161F707E84707F84B6D8803FEBFF80A5394C7CCB41>I<EB7FC0
B5FCA512037EB3B3B3AAB61280A5194C7BCB22>I<90287FC001FFC0EC7FF0B5010F01FC
0103B5FC033F6D010F804B6D4980DBFE079026803F817F9126C1F801903AC07E007FF000
03D9C3E0DAE0F8806C9026C78000D9F1E06D7E02CFC7EBF3C002DEEDF780DD7FFF6E7E02
FC93C7FC4A5DA24A5DA34A5DB3AAB6D8C03FB5D8F00FB512FCA55E327BB167>I<903A7F
C001FFC0B5010F13F8033F7F4B13FFDBFE077F9138C1F00300039026C3E0017F6CD9C780
80ECCF0014DE02DC6D7F14FC5CA25CA35CB3AAB6D8C07FEBFFE0A53B327BB144>I<9138
07FF80027F13F80103B6FC010F15C090261FFE017F903A7FF0003FF849486D7E480180EB
07FE4890C76C7E4817804980000F17C048486E13E0A2003F17F0A249157F007F17F8A400
FF17FCAB007F17F8A46C6CEDFFF0A2001F17E0A26C6C4A13C0A26C6C4A13806C6D491300
6C5E6C01E0EB1FFC6D6C495A903A3FFE01FFF0010FB612C0010392C7FCD9007F13F80207
138036347DB23D>I<90397FC007FFB5017F13E002C1B512FC02C714FF9126CFF80F7F91
26DFC0037F000301FFC77F6C496E7E02F8814A6E7E717E4A81831980A28319C0A37113E0
AC19C05FA319805F19005F606E143F6E5D4D5A6E4A5A02FF495BDBC0075B9126EFF01F5B
02E7B548C7FC02E114F8DAE07F13E0DB0FFEC8FC92CAFCAFB612C0A53B477CB144>I<90
39FF803FE0B5EBFFF8028113FE02837FDA87E11380EC8F830003D99F0713C06C139E14BC
A214F8A24A6C13806F13006F5A4A90C7FCA45CB3A8B612E0A52A327CB132>114
D<903907FF8070017FEBF1F048B6FC1207380FFC01391FE0003F4848130F491307127F90
C71203A2481401A27FA27F01F090C7FC13FCEBFFC06C13FEECFFE06C14FC6C806CECFF80
6C15C06C15E06C15F06C7E011F14F8010114FCEB000FEC007FED1FFE0078140F00F81407
15037E1501A27E16FC7E15036D14F86D13076D14F001F8EB1FE001FFEBFFC04890B51280
486C1400D8F81F13FCD8E00313C027347CB230>I<14F8A51301A41303A21307A2130FA2
131F133F137F13FF1203000F90B512F0B7FCA426007FF8C7FCB3A7167CAA013F14F880A2
90391FFE01F0010F1303903907FF87E06DEBFFC06D14806D6C1300EC0FFC26467EC430>
I<D97FE0EC3FF0B5EC7FFFA5000315016C81B3AC5EA25EA25E7E6EEB0F7F017F021E7F6E
017CEBFFE090393FFE01F86DB512F0010714E0010114C09027003FFE00EBC0003B337BB1
44>I<B600C090387FFFF0A5C601F0C73803F8006E5D017F5E801707013F5E6E140F011F
5E6E141F6D93C7FC6F5B6D153E81177E6D157C6F13FC6D5DEDF0016D5DEDF803027F5CA2
EDFC07023F5CEDFE0F021F5CEDFF1F6E91C8FC169F16BF6E13BE16FE6E5BA26E5BA26E5B
A36F5AA26F5AA26F5AA23C327EB041>I<B60081B500FC90387FFFF0A500019026E00003
90C73801FC006E6F5C6C6F5E6E6F1303017F61A26E6F1307013F4A5E846E49150F011F61
6E6F131F6D4A93C7FC179F03806E5B6D021F153EEF0FFE6DD9C03F5DEE3E0703E06E13FC
6D027E5DEE7C0303F015816D4A6C5C03F815C3DA7FF95E4C7E03FD15E7DA3FFF5E4C137F
19FF6E496D5BA26E94C8FC4C7FA26E5E93C7120FA26E486E5AA202015E4B1403A26E486E
5A54327EB059>I<B6D88007B512C0A526007FF8C7387F80006D6C92C7FC6E14FE6D6C49
5A6D6D485A6D01C05B6D4A5A6F485A6DEBF01F6D6D485A6E6C48C8FC023F137E6F5A6E6C
5A806E5B6E5BA26E7F6E7F6F7E15FF4A7F4A7F4A8003E77FEC0FC3DA1F837FDA3F817F4A
C67F02FE6D7E4948133F4A8049486D7E01076E7F49486D7F49487F494881017F6E7FB500
F8011FEBFFF0A53C317EB041>I<007FB500C090387FFFE0A5C601F0C73803F8006E5D01
7F5E6E1407013F5E80170F011F5E6E141F6D93C7FC6F5B6D153E6F137E6D157C6F13FCA2
6D6D5B16016D5DEDF803027F5CEDFC07023F5CEDFE0F021F5C15FF161F6E91C8FC16BF6E
13BE16FE6E5BA26E5BA36E5BA26F5AA26F5AA26F5AA393C9FC5D153E157E157CD81F8013
FC486C5B387FE001D8FFF05B14035D14074A5A49485A007F133F4948CAFC383F81FE381F
FFF86C5B6C13C0C648CBFC3B477EB041>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fl cmsltt10 10.95 42
/Fl 42 123 df<131E137F5B1480A3481300A55BA21203A35BA5485AA65B120FA45BA312
1FA25B120F6C5AC8FCA8121C127F5A7FA390C7FC127E123C11396CB830>33
D<021E131E023F133F03801380A2027F137FA203001300A24A5BA24A5BA201011301A202
FC5B0007B712E04816F05AA37E6C16E03B000FE00FE000A2011F131FA202C05BA2013F13
3FA202805BA2017F137FA2020090C7FC007FB612FE82B81280A36C16005E2703F803F8C7
FC00071307A201F05BA3000F130FA201E05BA401C05B6C486C5A2C387AB730>35
D<EC0FC0EC3FE04A7E4A7E497F5B14F849487EECE07E130F14C015FE011F5B1480A21481
5D1483913987F0FFF003F113F8EC8FE1EC9FC114BFDAFF8013F0923801FC0002FE5BECFC
0302F85BECF007D93FE05B90387FC00F01FF5C48EBE01F485D48143FD80FF749C7FC381F
E7F001C313FE393F83F8FCEB81F9397F01FBF814FF486C5B485C027F130EEDC01FDA3F80
1380027F133FDAFFC013005B01076D5AD8FF1FEBF8FE397FFFF7FF02E35B6C01C15B6C01
005B6C48EB3FE0D803F0EB0F802D3A7BB830>38 D<137C13FE487E1480A214C0A3EA007F
130F131F1480A3133F14005B137E13FE485A1203485AEA1FF0485AB45A5B90C7FC127C12
38121D6BB730>I<1578EC01FC1403140FEC1FF8EC3FE0EC7FC0ECFF80903801FE00495A
495A495A495A495A495AA249C7FC485A5B12035B12075B120F5B121F5BA2485AA3127F90
C8FCA45A5AAB7E7EA46C7EA36C7EA26C7E7F12077F6C7E6C7E6C7E806D7E6D7E131F1307
6D5A1E476DBE30>I<007FB612E0B712F016F8A316F06C15E02507769E30>45
D<EA0F80EA3FC0EA7FE013F012FFA413E0127FEA3FC0EA1F000C0C6D8B30>I<EC07F8EC
1FFEEC7FFF49B512C04914E04914F090380FF81F90391FE00FF890383FC00790397F8003
FC9038FF00014914FE48481300485A16FF4848147FA2485AA2485AA25B123FA348C8FCA5
00FE15FEA4ED01FCA3ED03F8A215076C15F0150F6C15E0151F6D14C0ED3F80003F147F6D
EBFF004A5A381FE0036D485A390FFC1FF86CB55A6C5C6C14806C91C7FCEB7FFCEB0FE028
3A78B830>48 D<EC03C0EC07E0A2140F141FA2143FEC7FC014FF1303130F90B5FC5A4814
8014BFEBFE3FEA01F8C7FC147F1500A55C5CA513015CA513035CA513075CA5130F5CA200
7FB512F8B612FCA46C14F81E3976B830>I<000FB712C04816E017F0A317E06C16C0CBFC
A7003FB7FC481680B8FCA37E6C16002C157AA530>61 D<EB0FFF017F13F048B512FC0007
80001F80481580D9F80113C0397FC0003F4848131F90C713E0150F151F4815C0A2007C14
3F0030ECFF80C712034A1300EC1FFE4A5AEC7FF0ECFFC0495B4948C7FC495A495A5C495A
5C133F5C137F91C8FCA45B5B137E133C90C9FCA813E0EA03F812077FA35B6C5A6C5A2339
72B830>63 D<913903FC01E091391FFF81F0027F13E391B512F7010314FF5B4913079026
1FF80113E049487ED97FC0137F495A91C7123F485A484815C0A2485A5B120F5B001FED1F
80491500003F92C7FC5BA3127F90CAFCA45A5AA716F86C4A7EA26C14035EA26D1307003F
5D6D130F001F4A5A6D133F6C6C495A6D495A2607FF0790C7FC6CEBFFFE6C5C6C5C6D13E0
011F1380D907FCC8FC2C3A78B830>67 D<013FB7FC49168090B812C0A27F7FD903F8C7EA
3F80A4177F13074A150083171E94C7FCA2130F5CED01E04B7E821507131F91B55AA55B91
38800FE0A46F5A017F90C9FC91CAFCA417F0494A7E491403A416071201495DA2003FB7FC
5AB8FCA26C5E6C5E32387EB730>69 D<D93FF8ECFFE0496C4913F0496C4913F8A2017F4A
13F0013F16E0010F91380FFE0002DE147E02DF131FA2EE3EFE131F029FEB7EFC167C16FC
16F8ED80F9013F1381021FEBF1F8158316E1EC0F8716C3137F017E018F5B1683159F1603
16079038FE07BE01FC01FE5B15FCA215F8160F0001EB03F09026F801E05B91C7FCA3161F
1203495DA4163F12074992C7FCA2D87FFC903803FFE0486C497FA46C486D5B35387EB730
>77 D<013FB512FC4914FF90B712C017E06D15F06D15F8903A03F8003FFC160FEE03FE16
01A20107EC00FF5CA2177FA3010F15FE5CA2160117FC1603011FEC07F84A130FEE1FF0EE
7FE0923801FFC091B612804915005E16F816E093C7FC0280C8FC137F91C9FCA55B5BA512
015BA2383FFFC0487FB57EA26C5B6C5B30387EB730>80 D<913907FC01E091393FFF81F0
91B512E3010314FB4914FF5B90381FFC0790263FF00113E0ECC0004948137F49C7123F5B
A24848EC1FC0A5EE0F806D91C7FCA27F6C7F14F86DB47E6D13F86D13FF6D14C06D800100
80021F7F02017FEC001FED03FE1501A26F7EA3D80F8080121F6D5C003F5D5BA26D13015E
1503486C495A6D495A6D133F9039FF80FFE091B55A5E00FE92C7FC486C13FC011F13F0D8
780113802C3A7BB830>83 D<1278127C12FEA27EA27EA27FA2123F7FA2121F7FA2120FA2
7FA212077FA212037FA21201A27FA212007FA27F80A2133FA280A2131F80A2130F80A213
0780A21303A280A2130180A2130080A280A21580A2143F15C0A2141FA3140FEC07801A47
71BE30>92 D<003FB612F05AB712F8A36C15F07E25077C7D30>95
D<903801FFC0010F13F8013F13FE497F90B67E48819138007FE049131F48486D7E000114
075BEA007090C77FA25EA2EC3FFF0103B5FC131F90B6FC1203485D48EBE00F381FFE00EA
3FF0D87FC0131F5B48C75B5AA2153FA2157F6C4A5A387F8003D9E03F13FF6CB7128017C0
6C14DF6C028713800003D9FC01130026007FE0C8FC2A2A7AA830>97
D<EA3FF8487E487EA2127F123FEA01FCA512035BA4EC1FF00007EBFFFC01F313FF01F714
8090B612C016E09138F03FF048EB800F9039FE0007F85B49EB03FC4913015B121F5B16FE
1500A21501003F15FC5BA3150316F8127F1507ED0FF0A2ED1FE06DEB3FC000FF147F6DEB
FF80D9F00313009038FC1FFE90B55A5D485C486C13C0D8781F90C7FC380007F8273977B7
30>I<EC1FFC91B51280010314C0010F14E04914F0137F9039FFF00FF848EB8007489038
000FF0D807FC13074914E04848EB01C0484890C7FCA2485A5B127F90C9FCA35A5AA77E6C
EC0F806D131FED3FC06C6C14806D137FD81FF8EBFF00380FFE0390B55A6C5C00015C6C14
E0013F1380D907FCC7FC252A77A830>I<ED07FF4B13804B13C0A281819238003F80A416
7FA21700A491387FC0FF903803FFF0010FEBFCFE4913FE017F13FF90B6FC48EBE07F48EB
001F48486D5A49130748481303485A5B485A495C127FA290C7FC15075A485DA4150FA25E
151F6C143F7E157F6D13FF6C6C485BEBE007261FF81F13FF6CB71280A26C14BF0001141F
6CD9FC0F1300D91FE0C8FC2A397AB730>I<EC1FE0ECFFFC010313FF010F1480013F14C0
4914E09039FFF03FF048EB800F3A03FE0007F8484813035B485A4848EB01FC5B123F5B12
7F90C7FC90B6FCA2B712F8A316F048C9FCA37E7EED03C06DEB07E0003FEC0FF07F6C6CEB
1FE06DEB7FC0390FFE03FF6CB612806C15006C14FC6C6C5B011F13E0010390C7FC262A79
A830>I<EEFF80030713E0031F13F0157F92B512F85C4AEB07F0EC07FC03F813E091390F
F001C04BC7FCA2141F5DA548B612FE48815AA36C5DC7D87F80C7FC92C8FCA55C5CA51301
5CA513035CA513075CA2007FB512FEB7FCA46C5C2D397CB830>I<913907F801FE913A3F
FF0FFF804A13BF49B712C05B5B90260FFC0FEB1F8090271FF007F8130049486C6CC7FCEC
C001EB7F801400A25B5BA315034B5A7F6D495A9138803FE090383FE0FF49B55A90B65A93
C8FC4814FC01F913F09038F87F80000390CAFC5BA27F120190B512FCEDFF8016E04815F8
488148813A1FF00007FFD83FC01300498048C86C7E007E151F12FE5AA2163F94C7FC5E5E
6C4A5AD87F80EB07FC6D131F3A3FFC01FFF86CB612E06C5D6C92C8FC000114FC6C6C13F0
010F90C9FC323E7EA730>I<EB3FF8497E497EA2137F133FEB01FCA513035CA4ED0FF001
07EB7FFE02F1B5FC02F7148091B6FC17C0EDF03F499038801FE015004A130F14F8A24A13
1F494814C0A25CA3163F133F4A1480A4167F137F91C71300A45E5B495CA23B7FFFF81FFF
F8B56C4813FC5DA2816C496C13F82E387FB730>I<15E0EC03F8140781A35D6E5A6E5A91
C8FCA990B512C048805AA27E7EEB001F5DA5143F5DA5147F92C7FCA55C5CA513015CA200
7FB61280B712C016E0A216C06C1580233979B830>I<EB3FF8497E80A3133FEB00FCA513
015CA5010390380FFFFE4A487F1880A218006F5B0107010013804A4890C7FCED03FC4B5A
ED1FF04B5A010FEB7F804A48C8FCECC3FEECC7FCECCFF8ECDFFCEB1FFF814A7E4A7E02F8
7FECE03F49486C7E02807FEC000F6F7E8215034980017E13016F7E3B3FFFF80FFFF0486D
487FB56C5AA26C497E6C496C5B31387FB730>107 D<90383FFFF8497F81A37F90380001
FCA514035DA514075DA5140F5DA5141F5DA5143F5DA5147F92C7FCA55C5CA2003FB612F0
4815F8B712FCA26C15F86C15F026387BB730>I<913903F001F83B01FF0FFC07FE489039
BFFE1FFF91B5007F138093B5FC18C06C9039FC3FFE1F3B003FF81FFC0F02E013F002C013
E0A2028013C09139003F801F491680A2017E1400A401FE49133F49017E1400A5000102FE
5B4949137EA50003010114FE01F0495BA23C3FFE07FF03FF80486C48018713C0B5009F01
CF13E0A26C010F018713C06C486C01031380332881A730>I<ED0FF03A01FFE07FFE4801
F1B5FC4801F7148091B6FC6C16C06CECF03FD8000F9038801FE015004A130F14F8A24A13
1F494814C0A25CA3163F133F4A1480A4167F137F91C71300A45E5B495CA23B7FFFF81FFF
F8B56C4813FC5DA2816C496C13F82E287FA730>I<EC1FE0ECFFFC010313FF010F148049
14E0137F9039FFE07FF0489038800FF83903FE000749EB03FC48481301484814FE491300
485A123F5B167F48C8FCA300FE15FEA4150116FCA26CEC03F8150716F06C6C130FED1FE0
6DEB3FC06C6C137F3A1FF001FF80D9FC0713006CB55A6C14F86C5C6C14C06C6C90C7FCEB
0FF8282A79A830>I<ED03FE903A3FFC1FFF8090267FFE7F13E001FF90B57E91B67E6D81
6D9038FE07FE0101EBF0019238C000FF5D92C7EA7F804A143F5C13035C18C0171FA2173F
010716805CA3177F1800130F5F4C5AA24C5A6E495A011F140F6E495A6EEB7FE09139FF83
FFC092B55A94C7FCD93FDF5B028F13F8028313E0028090C8FC92C9FC137FA291CAFCA45B
A25BA4387FFFF0B57E80A25C6C5B323C82A730>I<91383FE00F903A01FFF81F800107EB
FE3F011F13FF4914FF5B9038FFF03F48EB800F48496C1300D807FC7F48487F5B485A4848
7F5E5B127F90C8FC15015A485DA41503A25E6C1407150F6C141F7F6C6C133FEDFFF0381F
F001EBFC0F6CB6FC7E6C14EF6CEC8FE039007FFE0FEB0FF090C7FC151F5EA5153F5EA591
381FFFFE4A7F5CA2806E5B293C7AA730>I<EE3FE03B01FFFC01FFF848D9FE0F13FC485C
037F13FE6C91B5FC6C90B512E1D80001EC01FC15FC9238F000704B13005D5D4990C8FC5C
A25CA25C13075CA5130F5CA5131F5CA2007FB512FCB67EA46C5C2F287DA730>I<91387F
F838903903FFFE7C011FEBFFFC5B5B90B6FC48EBC01F3903FC0007491303484814F85BA3
ED01F06D90C7FCEA03FEEBFFF06CEBFF806C14F06D13FC011F13FF01071480D9007F13C0
020113E0EC001F001FEC0FF06D1307003F1403A27FA21507486CEB0FE0151F6DEB3FC090
39FC03FF8090B6FC1600B612FC00FC5C013F13E0267807FEC7FC262A79A830>I<EB03C0
497E80A3130F5CA5003FB612E04815F0B7FCA36C15E026003FC0C7FC5CA5137F91C8FCA5
5B5BA50001EC0F8049EB1FC0A3153F1680157F15FF6D4813009038FF07FE6CEBFFFC5D6D
5B6D5B010F1380D903FCC7FC243378B130>I<D83FFCEB3FFC486C497E00FF14FFA2007F
147F003F143F00011401495CA415031203495CA415071207495CA4150F120F495CA3151F
153F001F147F4B5A000F5BD9F80F13FF90B712807EA26C149FC6D9FE0F1300D93FF0C8FC
29287AA630>I<3B3FFFC07FFF80486DB512C0B515E0A26C16C06C496C13803B03F00007
F0006D5C150F00015D151F5E153F6D91C7FC5D0000147E15FE5D140101FE5BA290387E03
F0A24A5AA24A5A137F4A5A133F4AC8FCA2147E14FE5C131F5CA25C6D5A2B2778A630>I<
903AFFFE07FFF0486D4813F84816FCA26C16F86C496C13F0903A07F001FC006D6C485A6D
6C485A4B5A6D6C485A4B5ADA7F7FC7FC157EEC3FFE6E5A5D6E5A5DA24A7E143F4A7EA2EC
FCFCEB01F8903803F07E903807E07F49487E011F8090383F801FD97F007F01FE6D7E263F
FFC0B5FC4801E11480B515C0A26C16806C01C014002E277DA630>120
D<90B53801FFFE4802837F481780A26C17006C02015B903A07E0001FC05F163F6E91C7FC
A20103147EA25E804B5A13014B5AA26E485AA20100495AA24B5AA2027E90C8FC5D153E15
7E157C143E5D143F5DA26E5AA25DA25DA2143F92C9FC5C147E14FE5C1301003C5B387E03
F0EAFF07495A48485AEB7F80B5FC91CAFC13FC6C5AEA3FE0EA1F80313C7EA630>I<017F
B612F090B712F85AA317F0D803FCC7EA3FE049EC7FC0EEFF80923803FE004B5A6C48495A
C8485AED7FC04B5A4A90C7FC4A5A4A5AEC1FF04A5A4A5A4A5A4990C8FCEB07FC495A495A
4948130F4948EB1F804848C713C04848143F485A48481580485A007FB7FCA3B8FC6C1600
5E2D277DA630>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fm cmb10 10.95 50
/Fm 50 123 df<913803FFC0023F13F049B512FC01078049EB01FF90393FF8007FD97FE0
EBFF804A4813C049485A481300A25A5BA26F13806F1300163C93C7FCA6EE3FC0B8FCA500
03EB000181B3ABB5D8FC3F13FFA530407FBF33>12 D<EA0FC0EA1FE0EA3FF0EA7FF8EAFF
FCA313FEA3127F123F121FEA0FDEEA001EA2133E133CA2137CA2137813F813F01201EA03
E0EA07C0A2EA0F80EA1F00121E120C0F207BBE19>39 D<147814F81301EB03F0EB07E0EB
0FC0A2EB1F80133FEB7F00A213FEA2485A1203A25B1207A2485AA3121F5BA2123FA4485A
A612FFB3A2127FA66C7EA4121FA27F120FA36C7EA212037FA212016C7EA2137FA2EB3F80
131FEB0FC0A2EB07E0EB03F0EB01F813001478155A78C323>I<127012F87E127E7E6C7E
A26C7E7F6C7EA26C7EA26C7E7FA212007FA2EB7F80A314C0133FA214E0A4EB1FF0A614F8
B3A214F0A6EB3FE0A414C0A2137F1480A3EBFF00A25B1201A25B485AA2485AA2485A5B48
5AA248C7FC127E5A5A1270155A7BC323>I<EA0FC0EA1FE0EA3FF0EA7FF8EAFFFCA313FE
A3127F123F121FEA0FDEEA001EA2133E133CA2137CA2137813F813F01201EA03E0EA07C0
A2EA0F80EA1F00121E120C0F207B8D19>44 D<B512FEA917097F981E>I<EA0FC0EA1FE0
EA3FF0EA7FF8EAFFFCA6EA7FF8EA3FF0EA1FE0EA0FC00E0E7B8D19>I<ED0380ED07C015
0FA2151F1680A2153F1600A25D157EA215FE5DA214015DA214035DA214075DA2140F5DA2
141F5DA2143F92C7FCA25C147EA214FE5CA213015CA213035CA313075CA2130F5CA2131F
5CA2133F91C8FCA25B137EA213FE5BA212015BA212035BA212075BA2120F5BA2121F5BA2
123F90C9FCA25A127EA212FE5AA25A1278225B7BC32D>I<EB01FE90380FFFC0013F13F0
90B512FC48EB87FE3903FE01FF48486C1380A24848EB7FC0001F15E049133FA2003F15F0
A3007F15F8A500FF15FCB3A3007F15F8A6003F15F0A36C6CEB7FE0A2000F15C06D13FF00
0715806C6C4813003901FF87FE6CEBFFFC013F13F06D5BD901FEC7FC263D7DBB2D>I<14
3C147CEB01FC1307131FEA03FFB5FCA4EAFC1F1200B3B3A8007FB6FCA5203C7ABB2D>I<
ED1F80A2153F157FA215FF5C5CA25C5CA25C5CA25C91B5FC14FBEB01F31303EB07E314C3
EB0F83131F1403133E137E137C13F8120113F0EA03E01207EA0FC01380EA1F005A123E5A
12FCB8FCA5C700071380AA010FB6FCA5283C7EBB2D>52 D<000E1407D80F80133F9038F8
01FF90B6FC5D5DA25D5D5D158092C7FC14FC14F00180C8FCA9EB87FE90389FFFC090B512
F0819038FC0FFC9038F007FE9038C003FF0180148016C0497EC714E0A416F0A21207EA1F
C0EA3FE0EA7FF012FF13F8A316E013F0A26C484813C01380D87E0014806C491300391FC0
0FFE390FF03FFC6CB55A6C5C6C14C06C91C7FCEB1FF8243D7CBB2D>I<121F7F13F090B6
12FCA45A16F816F016E0A216C016805A007EC7EA3F00157E007C147C15FC4A5A4A5A485C
14074A5AC75B141F4AC7FCA25C14FEA21301A2495AA31307A2130FA25C131FA3133FA613
7FAA6D5A6D5A6D5A263F7BBD2D>55 D<EB07FE90383FFF8090B512E0488048EB0FF84848
6C7E48486C7E001F80497E003F1580A2127F16C0A212FF16E0A516F0A6127FA3003F5BA2
121FA26C6C5A6C6C5A6CB6FC7E38007FFDD91FF913E0EB00C11401A3D807E014C0EA0FF0
486C5AD83FFC1480A316004A5AA249485AD81FF05B9038E03FF0000F495A90B55A6C5C6C
91C7FCC613FCEB3FE0243D7CBB2D>57 D<EA0FC0EA1FE0EA3FF0EA7FF8EAFFFCA6EA7FF8
EA3FF0EA1FE0EA0FC0C7FCACEA0FC0EA1FE0EA3FF0EA7FF8EAFFFCA6EA7FF8EA3FF0EA1F
E0EA0FC00E287BA719>I<007FB912E0BA12F0A4003F18E0CDFCB0003FB912E0BA12F0A4
6C18E03C1C7BA447>61 D<DB7FF8130E0207B5131E023FECC03E91B6EAF07E0103EDF9FE
499038F807FF011FEBC0004990C7123FD97FFC141F4948140F48491407484914035C4849
14015A91C9FC5A187E485AA3007F173EA25BA200FF1700AE127F183E7FA2123FA2187E6C
7E187C7E6E15FC6C6D15F86C16016EEC03F06C7F6C6DEC07E06D6CEC0FC06DB4EC3F806D
01C0EBFF0001079038F807FE6D90B55A010015F0023F5C020714809126007FF8C7FC3740
7BBE42>67 D<B712FCEEFFC017F017FC17FFC69026F0003F7F04077F040113F082717E71
7E717E170F84831980A219C083A219E0A519F0A483A55FA419E0A519C0A25F1980A24D13
00A24D5A4D5A177F4D5A4C5B04075B043F5BB9C7FC5F17F817C004FCC8FC3C3E7CBD46>
I<B812FEA483C69038F8003F16071601828383A2EF1F80A3170FED01F0A3EF07C0A31503
94C7FCA21507151F91B5FCA5ECF81F1507150318F8A21501EF01F0A592C71203A218E0A2
1707A2170F171F18C0173F17FF1603161FB9FCA21880A3353D7CBC3C>I<B500F891B512
FC80A28080C6933800FC008181A28181A201FD7F01FC7FA26E7E6E7E80826E7F80826E7F
6E7FA26E7F6F7EA26F7E6F1380A26F13C06F13E0A26F13F06F13F8A26F13FCEE7FFEA2EE
3FFF82A28282A2828282A2177F173FA2171F170FA21707B500FC1403A217011700A23E3E
7CBD47>78 D<913801FFC0021F13FC91B67E010315E04901807F903A1FFE003FFCD93FF8
EB0FFE49486D7E49486D7F48496D7F48834A7F48834890C86C7EA2488349153FA2003F83
A249151F007F83A400FF1880AE007F1800A36D5DA2003F5FA36C6C4B5AA26C5F6E14FF6C
5F6C6D495B6E5B6C5F6C6D495B6D6C4990C7FCD93FFEEB3FFE6D6C6CB45A010790B512F0
6D5D01001580021F01FCC8FC020113C039407BBE44>I<913801FFC0021F13FC91B67E01
0315E04901807F903A1FFE003FFCD93FF8EB0FFE49486D7E49486D7F48496D7F48496D7F
A24890C86C7E488349153F001F83A249151F003F83A3007F834981A300FF1880AE007F18
00A46D5D003F5FA36C6C4B5AA2000F027F5C903AFF01FF807F6C4901E05B6C01876D485A
15C16C9026CF80795B6C9026EF007F5B6DB46D90C7FC6D5D6D01805B01079038C0FFF06D
90B55A0100ED8001021FED03800201EBCFC091C7EA0FE01807EFF81F94B5FCA3701400A4
705BA2705B60705B715AEF1FC039517BBE44>81 D<003FB812FCA5D9FC03EBE01FD87FE0
ED07FE01C01501018015001300007E177EA3007C173EA400FC173F48171FA5C71600B3AF
013FB612FEA5383D7DBC3F>84 D<B600F890B512F8A5C601F8C8EAF800B3B3A5017F1501
60A280013F1503606D6C1407010F4B5A6E4A5A6D6D133F6D6D01FFC7FC6D9038F807FE6D
6CB55A6E5C020F14E0020314809126003FFCC8FC3D3F7CBD46>I<B600E0B6D8F007B512
80A500019026F0000101F8C73807C00070160F6C6D6184177F6D6C4EC7FC84173F6D6C18
3E177F846E187E6D92B5147C856F17FC6D4A5E05F77F03C016016D02035E05E313E003E0
16036D02075E05C113F003F016076D61DC0F8013F803F8160F6D6193391F007FFC03FC16
1F027F95C8FC4C14FE043E013F5BDA3FFE163E047E14FF047C6D137EDA1FFF167C04FC15
FC4C7F6E5FA24C7F6E5FA24C7F6E5FA24C7F6E5FA24C7F6E5FA293C8127FA26F93C9FC03
7E81033E153E593F7EBD5E>87 D<136013F01201EA03E0EA07C0A2EA0F80EA1F00121E12
3E123C127CA21278A212F85AA2EAF7E0EAFFF013F813FC13FEA3127FA3EA3FFCEA1FF8EA
0FF0EA07E00F207CBE19>96 D<EB0FFE90387FFFC048B512F04814FC3907FC0FFE48486C
7E6D6C7F486C7E82A26E7FA36C5A6C5AEA01E0C8FC5C49B5FC131F90B6FC000313F84813
C0481300EA1FFC485A127F5B12FF5BA45CA26C6C5A16F83B3FF807BFFF80391FFC1F3F39
0FFFFE1F6C497E0001EBF80326003FE0C8FC292B7EA92C>I<13FFB5FCA512077EAF4AB4
FC020F13E0023F13F891B57E9138FE07FFDAF8011380DAE00013C05C4AEB7FE017F0A3EE
3FF8A317FCAC17F8A3EE7FF0A217E06E13FF17C06E481380DAF80313009138FE0FFE9039
FC7FFFFC496C13F0496C13C0C7D803FEC7FC2E407FBE33>I<EB03FF011F13E0017F13F8
90B57E48EB83FE3903FE01FF00075B4848481380121F13F8123FA2127F496C13006E5AEC
007800FF91C7FCAC127FA27F003FEC07C0A26C6C130F16806C6C131F000715006C6C137F
6CEBC1FE6CEBFFFC6D13F0011F5B010390C7FC222B7DA928>I<16FF92B5FCA5150781AF
EB01FF011F13E3017F13FB90B7FC4813C148EB003F48487F48487F001F805B123FA2485A
A312FFAC127FA36C7EA3001F5C6C6C5B00074A13806D4913FC2603FF83B5FCC690B6FC6D
13F7011F13C7903A03FE07FC002E407DBE33>I<49B47E010F13F0013F7F90B512FE48EB
C3FF48010013804848EB7FC04848133F001F15E05B003FEC1FF0A2485A150F16F8A212FF
A290B6FCA401F0C8FCA5127FA37F003F15F8A26C6C1301000F15F06D13036C6CEB07E06C
9038800FC06C9038F07F806C6CB512006D5B010F13F8010013C0252B7EA92A>I<EC1FF8
ECFFFE01077F491480D91FF813C0D93FE013E0EB7FC1EBFF81481301A348486C13C0ED7F
80ED3F0092C7FCAAB6FCA5000390C8FCB3ACB6FCA523407EBF1C>I<D907FE13FC90393F
FFC3FE90B5EAF7FF4891B5128048130F3907FC03FE3A0FF801FF7F001FEDFF00496C13BE
1680003F81A7001F5DA26D5A000F92C7FC6C6C485A3903FF0FFCECFFF8485CD80F3F13C0
D907FEC8FC90CAFC5AA27FA213E090B512F015FF6C15C0826C816C8182120F4881393FE0
003FD87F80EB07FF150148C7FC81A56D5B007F5D6D13036C6C495AD81FF8EB1FF86CB4EB
FFF06C90B55A000115806C6C49C7FC010713E0293D7EA82D>I<13FFB5FCA512077EAFED
7FE0913801FFF802077F4A7F91381FC3FFDA3E031380147CEC780102F014C014E0A214C0
A31480B3A4B5D8FE1F13FFA5303F7EBE33>I<EA01F8487E487E487E481380A66C13006C
5A6C5A6C5AC8FCA913FFB5FCA512077EB3ABB512F8A515407EBF19>I<13FFB5FCA51207
7EB092B512E0A592380FE0004B5A4B5A4BC7FC15FE4A5A4A5A4A5A4A5A4A5A143FECFFE0
A28181A2ECDFFCEC8FFE140F6E7E6E7FA26E7F6E7FA26F7E6F7EA26F7E6F7EB539FC7FFF
F8A52D3F7FBE30>107 D<13FFB5FCA512077EB3B3AFB512FCA5163F7EBE19>I<01FFD97F
E0EB3FF0B52601FFF8EBFFFC0207D9FC037F4A6D487F91281FC3FF0FE17FDA3E03D99F01
7F0007017C14BE6CD97801EBBC0002F002F88002E05CA202C05CA302805CB3A4B5D8FE1F
D9FF0FEBFF80A549297EA84C>I<01FFEB7FE0B53801FFF802077F4A7F91381FC3FFDA3E
0313800007137C6CEB780102F014C014E0A214C0A31480B3A4B5D8FE1F13FFA530297EA8
33>I<49B47E010F13F0013F13FC90B6FC48018113803A03FE007FC04848EB3FE0000F15
F049131F001F15F8A24848EB0FFCA2007F15FEA400FF15FFAB007F15FEA3003F15FC6D13
1F001F15F8A26C6CEB3FF0000715E06C6CEB7FC03A01FF81FF806C90B51200013F13FC01
0F13F001011380282B7EA92D>I<9038FF01FFB5000F13E0023F13F891B57E9138FE0FFF
DAF80313800003D9E00113C014C04A6C13E017F0167FA217F8A2163F17FCACEE7FF8A317
F016FF17E0804B13C06E481380DAF80713009138FE0FFE91B55A02BF13F0029F13C0DA83
FEC7FC0280C8FCACB512FEA52E3B7FA833>I<49B4130F010FEBC01F013FEBF03F90B56C
5A48EBC1FC489038807EFF48497E48487F48487FA2003F805B127F81A2485AAC127F7FA2
003F5CA26C6C5BA26C6C5B00075C6D5B000101C3B5FC6C90B6FC6D13E7011F13C7903803
FE0790C7FCAC4AB512FCA52E3B7DA830>I<3901FE07F800FFEB0FFE91383FFF804A13C0
EC7C7F9138F8FFE03807FFF06C5B5CA2ED7FC09138803F80ED1F0092C7FCA291C8FCB3A3
B6FCA523297FA827>I<90387FE1E03803FFFB4813FF5A381FE07F383F801F387F000F00
7E130712FE1403A27EA26DC7FC13F013FF6C13F014FC6C13FF15806C14C07E6C14E00001
14F06C7E010313F8EB003F140F0078130712F814037EA36C14F06C1307A29038800FE090
38F03FC090B51280150000F813FC38E03FF01D2B7DA924>I<131FA65BA55BA25BA25A5A
5A001FEBFFC0B6FCA4000790C7FCB3EC03E0A97EEC87C0A26CEBCF806C13FF6D1300EB1F
FEEB07F81B3B7EB923>I<D9FF80EB7FC0B5EB7FFFA5000714036C80B3A55DA35D7E4B13
E0DAC01E13FF6CEBE07E6DB45A6D5B010F13E0010101801300302A7EA833>I<B539FC1F
FFE0A5000390398000F800ECC0016C5DA2ECE0036C5D1507D97FF05BA2ECF80F013F5CA2
ECFC1F011F91C7FC5D90380FFE3EA2157E903807FF7CA215FC6D5BA26D5BA36D5BA36E5A
A26E5AA36EC8FC2B287EA730>I<B500E1B53887FFF8A50007903B801FF0003F006C6F13
3E150F02C0157E6C4A6C137CA26C01E05D4B7EA2D97FF04A5AED7FFF157DD93FF84A5A03
FD138303F81387D91FFCECC7C014FD9238F07FCFD90FFFECEF80A29238E03FFF6D93C7FC
A24B7E6D5DA2ED800F6D5DA2ED00076D5DA24A1303027E5C027C13013D287EA742>I<B5
39FC1FFFE0A5000390398000F800ECC0016C5DA2ECE0036C5D1507D97FF05BA2ECF80F01
3F5CA2ECFC1F011F91C7FC5D90380FFE3EA2157E903807FF7CA215FC6D5BA26D5BA36D5B
A36E5AA26E5AA36EC8FCA25C143EA2000E5BEA3F80387FC0FC486C5AA2EBE1F0A2EBE3E0
13C7387FCFC0387D3F80D83FFFC9FC5BEA0FF8EA07E02B3B7EA730>121
D<001FB61280A4D9F80F1300EBE01F01C05B49485A130048495A4A5AA2D83E015B5B5D49
5BA2C64890C7FC5B5C495A017FEB0F8014F8EBFFF0A248EBE01F48150014C0481380A248
495A485A5D48485B007F5B9038F80FFEB6FCA421287EA728>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fn cmsl10 10.95 60
/Fn 60 123 df<9339FFC003F8030F9038F01FFE923A3FC07C7E0F923BFE001FF81F80DA
03F890383FF07F4A48D9FFE013C0EC1FE04A4848EBC0FF03804A1380DA7F00157F4A9238
003E004A6D91C7FC8301015D4A5CA4160113034A5CA416030007B812FCA3290007F00003
F8C8FCA21607130F4A5CA4160F131F4A5CA4161F133F4A5CA4163F137F91C75BA4167F5B
4992C9FCA31201486C49487EB5D8F83F13FF5DA242407EBF35>11
D<EEFF80030F13F092383FC0789238FE001CDA03F8130E4A48133FDA1FE013FF4A5A4B5A
EC7F005C5CEE00FE010115784A1400A513035CA4EE01FC0007B7FC17F8A23A0007F0000F
1607A2130F4A14F0A4160F131F4A14E0A4161F133F4A14C0A4163F137F91C71380A4167F
5B491500A31201486C903801FF80B5D8F83F13FC5DA230407EBF33>I<EEFFC0030FEBFB
8092383F803F9238FE007FDA03F813FF4A5A91381FE001EC3FC003801400EC7F004A7F4A
805F13014A5CA4160113034A5CA416030007B7FC5FA23A0007F00003A21607130F4A5CA4
160F131F4A5CA4161F133F4A5CA4163F137F91C75BA4167F5B4992C7FCA300015D486C49
7FB5D8F87F13FCA331407EBF33>I<DCFF80EB7FC0030F9039E007FFF8923B3F80781FE0
3C923BFE003C7F000EDA03F8D91FFC7F4A484948EB1F80DA1FE0D9FFF0137F4A48485B03
804A13FFDA7F005C5C4A92C7FCF27F0001016E153C4A4A91C7FCA5010314014A5CA41AFE
0007BAFC62A23D0007F00003F800071903A2010F14074A4A5CA41907011F140F4A4A5CA4
190F013F141F4A4A5CA4191F017F143F91C7495CA4193F49147F4992C75BA31201486C49
486CEBFFC0B5D8F83FD9FC1F13FE605D49407EBF4C>I<1570A4EC03FC91381FFF80027F
13E0903901FCE3F0903907E0E0F8D90F80133CD91F00131E90383E01C0017C140FA201F8
140713F00001153F91380380FFD803E01381A416FE91380700FC01F01478160013F813FC
13FEEBFF0E6C13EE14FE6CEBFFC015F06D13FC011F7F6D7F01031480EB007F021F13C014
1CEC383FED1FE0150FA21507A2000F1370D83F801303EA7FC0A3150726FF80E013C01300
12FC00F0EC0F801270ED1F00903801C01E0078143E00385C003C5C001EEBC1F0001FEBC7
E03907E39F806CB5C7FCC613FCEB1FE0EB0380A249C8FCA2284979C32D>36
D<EA0780EA0FE0EA1FF0123FA5121FEA0F301200A213701360A213E013C0120113801203
EA07001206120E5A5A5A5A5A0C1C7A8919>44 D<007FB5FCA2B512FEA418067C961E>I<
121EEA3F80EA7FC012FFA41380EA7F00123C0A0A788919>I<EC07F8EC3FFF9138FC0FC0
903903F003E0903907C001F0D90F8013F849C7FC013E14FC017E147C017C147E13FC485A
A20003157F5B1207A2120F5BA2121F16FF5BA2123FA44848EB01FEA648C7EA03FCA5ED07
F8A25A16F0A2150F16E0A3ED1FC0A21680007E143F1600157E123E003F5C4A5AD81F805B
000FEB07E06C6C485A2603F03FC7FC3800FFFCEB1FE0283F79BC2D>48
D<157015F014011407143F903803FFE0137FEBFFCFEBF80F1300141F15C0A5143F1580A5
147F1500A55C5CA513015CA513035CA513075CA5130F5CA3131F497EB612F8A31D3D78BC
2D>I<EC01FE91380FFFE0023F13F89138FC07FC903901E001FE903907C000FF49C7EA7F
80011E15C0163F4915E05B0170141F13FF80A35A163FA26C90C7FC137E0118EC7FC090C8
FCEEFF80A24B1300A24B5A5E4B5A4B5A4B5A5E4B5A4BC7FC15FEEC01F84A5A4A5A4A5A4A
C8FC143E5C5CEB01E04948130E49485B49C7FC131E495C13705B48485C484814F0000FB6
FC5A485D5AB7FC5EA22B3D7CBC2D>I<EC07FC91383FFF809138F80FE0903903C007F090
39078003FC90380F0001011C14FE013C14FF137F1480EBFFC0A31480A291380003FE137E
90C7FCED07FC16F8150F16F0ED1FE016C0ED3F80ED7E005DEC07F0903803FF8015F09038
0001FC6E7EED7F80ED3FC0A2ED1FE016F0A316F8A4120EEA3F80486C133F16F012FFA216
E0157F5B48C7EAFFC000F01580007049130012786C495A003EEB07F86C495A390FE03FE0
0003B51280C649C7FCEB1FE0283F7ABC2D>I<161C163C167CA216FCED01F81503150715
0FA2151DED3BF0157315E315C31401EC038391380707E0140E141CA2143814709138E00F
C0EB01C014801303EB0700130E49EB1F805B133013705B485A4848EB3F0090C7FC5A120E
5A5A48147E1260B8FCA3C73801FE00A25DA41403A25DA314074A7E0107B512F8A3283E7B
BD2D>I<01061403D90780131F90390FF801FE91B512FC16F816F016E0168049EBFE0015
F890381C7FC091C8FCA3133C1338A513781370A2EC1FE0ECFFF8903873E03E9038FF001F
01FCEB0F804914C049EB07E04914F049130390C7FC16F8A61507A21206EA3F80487EA215
0F00FF15F0A24914E090C7121F00FC15C000F0143F00701580ED7F0012786C14FE4A5A6C
495A390F800FE03907E03FC06CB5C7FCC613FCEB1FE0283F7ABC2D>I<EC07F8EC3FFE91
38FC0F80903901F007C0903907E003E0D90FC013F090381F8001013F14F8EB7F004914FC
48481300A24848EB01FEA21207A3485AA41503121F5BA31507A2000F15FC150FA2151F12
07153F000315F86C6C137F000014EF90387C01CF90393E078FF090380FFE1FEB03F890C7
13E0A2ED3FC0A3ED7F8016005D003F5C487E4A5A00FF495A5D4A5A49485A48495A007049
C7FC0078137E383E03FC381FFFF06C13C0D801FEC8FC273F79BC2D>57
D<13F0EA01FC1203EA07FEA313FCA2EA03F8EA01E0C7FCB3121EEA3F80EA7FC012FFA413
80EA7F00123C0F2778A619>I<17E016011603831607A2160FA2161F83163FA2167F1677
16F7EEE7FCED01E316C3150316831507EE03FEED0F01150E151E151C153C03387FED7800
157015F05D4A4880177F4A5AA24AC7FCA2020E81173F5C021FB6FC5CA20270C7EA3FE017
1F5CA2495AA2494881170F49C8FCA2130EA24982013C1507A2137CD801FE4B7E2607FF80
EC3FFEB500F00107B512FC19F85E3E417DC044>65 D<DCFFC01338030F01F01378037F01
FC13F0913A01FF803F01913A07FC000781DA1FE0EB03C3DA7FC0EB01E74AC812FF4948ED
7FE0D907FC153F495A4948151F495A4948150F494816C018074890C9FC485AA2485A000F
1880491603121FA248481607A295C7FC485AA412FF5BA75BA2181C183C1838A27F007F17
78187018F0003F5F6D150160001F16036C6C4B5A95C7FC6C6C5D6C6C151E6C6C5D6C6C15
F86D6C495A6D6CEB07C0D91FF0EB1F80D907FE01FEC8FC0101B512F86D6C13E0DA07FEC9
FC3D4276BF42>67 D<013FB7FC18E018F8903B007FF0000FFE6E48EB01FF9438007FC04B
6E7E180F85727E727E147F4B6E7EA2727EA302FF178092C9FCA54918C05CA41A8013034A
5DA41A0013074A5DA261A24E5A130F4A5E180F61181F61011F4C5A5C4E5A4EC7FC4D5A4D
5A013F4B5A4A4A5AEF3FE0EF7F80017F4A48C8FC01FFEC1FFCB812F0178004FCC9FC423E
7DBD45>I<013FB812F8A39026007FF0C7127F6E48140F18034B14011800A31978147F4B
1570A502FF143892C7FCA3190017784915704A14F016011603160F91B6FC495DA29138FC
001F16071603160101075D5CA2197019F019E0010F4A5A4A90C7120119C0A21803198001
1F16075CF00F00A260181E013F163E4A157E4D5A1703017F150F01FFEDFFF8B9FCA2603D
3E7DBD3E>I<4BB46C1370031F01F013F0037F9038FC01E0913A03FF807E03913A0FF800
0F83DA1FE0EB07C7DA7F80EB01EF4AC812FFD903FE16C04948157F4948153F495A494815
1F495A4948168091C9120F5A485AA2485A000F18004982121FA248485EA295C7FC485AA4
12FF5BA6043FB512E05BA29339001FFC00715AA2607F127FA2171F123F6D5EA2121F7F00
0F163F6C7E6C6C4B5A7F6C6C15FF6C6DEB01EFD93FC0EB07C7D91FF0EB1F87D907FE9038
FE03800101B5EAF8016D6C01E0C8FCDA07FEC9FC3C4276BF47>71
D<011FB512FC5BA29039003FF8006E5AA25DA5143F5DA5147F5DA514FF92C7FCA55B5CA5
13035CA513075CA5130F5CA5131F5CA3133F497E007FB512F0A2B6FC263E7EBD21>73
D<013FB500F8010FB5FC4C5BA29026007FF0C7000313E06E486E130019FC4B15F04E5A4E
5A4E5A061EC7FC027F5D4B5C4D5A4D5AEF07804DC8FC02FF141E92C7127C5FEE01E04C5A
4C5A49021FC9FC4A5B5E4C7E5D03077F01035B9139FC1F3FE0153C4B6C7E15F09139FFE0
0FF84913C092380007FC5C4A6D7E5C707E130F4A6D7F84177F717EA2011F6F7E5C717EA2
717EA2013F6F7E5C84A2017F83496C4A13E0B600E0017F13FFA24B90B6FC483E7DBD47>
75 D<013FB512FEA25E9026007FF8C8FCEC3FE0A25DA5147F5DA514FF92C9FCA55B5CA5
13035CA513075CA21838A21870130F5CA218E0A3011F15014A15C01703A21707EF0F8001
3F151F4A143F177FEFFF00017F140301FF143FB9FC5FA2353E7DBD39>I<90263FFFF093
3807FFFE5013FC629026007FF8EFFC00023F4D5AA2023BEF77F0A2DA39FC16E7A2F101CF
0279EE038FDA70FE5FF1070FA2190E1A1FDAF07F151C02E060193819706F7EF1E03F1301
02C0DB01C05BA26F6CEB0380A2953807007F0103160E4A6C6C93C7FC60A2606201076D6C
5B02005F60A26F6C485A94380380015B010EDB07005BA2923801FC0EA24D1303131E011C
6D6C485C5FA25F1907013CEC7FC0013860013C5D137C01FE6EC7120F2607FF80013E4A7E
B500FC031FB512F8043C5E4A131C573E7DBD53>I<90263FFFE0023FB5FC6F16FEA29026
003FF8020313C0021F030013004A6C157C023B163C6F15381439810238167802787FDA70
7F157082153F82031F15F002F07FDAE00F5D8215078203031401010180DAC0015D828117
80047F1303010315C04A013F5C17E0161F17F0040F1307010715F891C7000791C7FC17FC
160317FE04015B4915FF010E6E130E188E177F18CEEF3FDE011E16FE011C6F5AA2170FA2
1707133C01386F5A133C017C150113FE2607FF801400B512FC18705C483E7DBD44>I<92
3803FF80031F13F09238FE01FE913903F0003FDA0FC0EB1FC0DA3F80EB07E0027EC76C7E
49486E7E49488149486E7E4948157F495A013F17804948ED3FC049C9FCA24848EE1FE012
035B000718F05B120FA2485A19F8123F5BA2127FA219F04848163FA5F07FE0A35BF0FFC0
A219805F19007F4D5A127F4D5A60003F160F6D5E001F4C5A4D5A6C6C4B5A95C7FC6C6C15
FE00034B5A6C6C4A5A6C6C4A5A017FEC1FC06D6C495AD90FE001FEC8FC903903F807F801
00B512C0DA0FFCC9FC3D4276BF47>I<013FB612FEEFFFE018F8903B007FF0000FFC6E48
EB01FF7113804BEC7FC0183F19E0F01FF0A2147F5D19F8A402FFED3FF092C8FCA219E0A2
F07FC05B4AEDFF8019004D5A4D5AEF0FF80103ED3FE04A903801FF8091B648C7FC17F002
FCCAFCA213075CA5130F5CA5131F5CA5133F5CA3137F497EB612E0A25D3D3E7DBD3E>I<
013FB612F017FF18E0903B007FF0003FF86E48EB07FCEF01FE4B6D7EF07F8019C0183F19
E0147F4B15F0A502FFED7FE092C8FCA219C0F0FF80A2494B13004A5D4D5AEF0FF04D5AEF
7F800103DA07FEC7FC91B612F017809139FC0007E0EE03F8EE00FC0107814A147F717EA2
84A2130F5CA484011F157F5CA41902013F17075CA2F0F00F017F170E496C143FB600E001
1F131C94380FF83C4B01071378CA3801FFE09438003F8040407DBD43>82
D<9239FF8003800207EBF007021F9038FC0F0091387F00FE02FCEB1F1FD903F0EB07BF49
486DB4FC49487F4A6D5A49C8FC49157E133E137E173E49153CA57F1738A26D92C7FC8080
80EB7FFEECFFE06D13FEEDFFC06D14F06D14FC010380010080143F020380DA003F7F1503
1500707E163F161FA2160F121CA31607160F003C5EA35F003E151F94C7FC007E5D007F15
3E6D5C16FC01E0495AD87DF0495AD8FCFCEB0FC03AF87F803F8027F01FFFFEC8FCD8E007
13F839C0007FC031427BBF33>I<0007B912F0A33C0FFE000FF8003F01F0160F01C04A13
034848160190C7FC121EF000E048141F5E1238A212781270153F5E5AA3C81600157F5EA5
15FF93C9FCA55C5DA514035DA514075DA5140F5DA3141FEC7FFC0003B7FCA33C3D76BC42
>I<B600E090B512FC4B15F8A2000101C0C7000F13006C49EC03FCEF01F091C9FC60A317
015A495EA417031203495EA4170712074993C7FCA45F120F49150EA4171E121F49151CA4
173C123F491538A31778177017F05F001F15015F16036D4A5A000F93C8FC5E6C6C141E6C
6C5C000115F86C6C495A017FEB07C090393FC03F8090260FFFFEC9FC010313F89038007F
C03E4073BD44>I<B6017FB5D88007B512804A1A00A2000701C0010101E0C713F06C90C8
0180EC3FC06C48735A99C7FC057F150E1B1E6D191C6C1A3C1B3805FF15787214705E636E
EB03BF017F4E5AEE073F505A040E7F051F4AC8FC161C6E170E013F143862167804706D5B
EEF00F04E05D90381FE00104C015F003035E0480140106F85B9226070007130302F05F01
0F010E150797C9FC5D190E4BEB03FC616E5A01075F5D61DAF9C014FE05015BECFB8002FF
6F5A7F92C75CA24A93CAFC835C606D5A605C604A15781870594074BD5D>87
D<010FB500F090B512F85B5FD9003F902680003F1300DA0FFEC7EA1FF84BEC0FE0020716
8096C7FC6E6C141E181C6E6C143C606E6D5B4D5ADB7FC05B4D5A92383FE0074DC8FC9238
1FF01E171C6F6C5A5F923807FCF0EEFDE06FB45A5F6F90C9FCA26F7FA2707EA216FF4B7F
ED03DF9238079FF0ED0F1F92380E0FF8151C92383C07FC15784B6C7EEC01E04B6C7EEC03
8002076D7F4AC7FC021E6E7E5C02386E7E5C02F06E7E495A49486E7E130749486E7E497E
017F4B7E2603FFF091383FFF80007F01FC49B512FEB55CA2453E7EBD44>I<010FB712FE
A39239C00007FCD91FFCC7EA0FF814F04AEC1FF00280EC3FE091C8EA7FC0013EEDFF80A2
013C4A13004C5A494A5A4C5A13704C5A4C5A494A5A4C5AA290C74890C7FC4B5A4B5A4B5A
A24B5A4B5A4B5A4B5AA24A90C8FC4A5A4A5A4A5AA24A5A4A5A4A48EB01C04A5AEF038049
90C7FC495A495A494814071800495A49485C495A495A171E4890C8123E485A4848157E48
4815FE4C5A484814074848141F4848EB01FFB8FC5FA2373E7BBD38>90
D<EC7FC0903803FFF890380FC07E90383E003F496D7E01FF6D7E82A248140782A26C5A13
7890C7120FA25EA2EC03FF147F903807FF1FEB1FE0D97F805B3801FE00EA03F8485A4848
133F485A003F5D49EC81C048C7FCA2157F48ED03804814FFA2007F5B913903BF07009038
80073F3A3FC00E1F8E260FE03C13FC3A03FFF00FF83A007FC003E02A2A7CA82D>97
D<EB3F80EA1FFFA3C6FC137FA291C9FCA55B5BA512015BA4EC07F80003EB3FFF9039F8F8
0FC09039FBE003E09039FF8001F891C77E5B4848147E49147F5B821780A2120F5B17C0A3
167F001F16805BA4EEFF00123F5B4B5AA24B5A5E007F4A5AA24B5A6D495A4BC7FCD87CE0
137E39F87001F839F03C07E039E00FFF80260003FCC8FC2A4077BE33>I<EC1FF0ECFFFE
903903F01F8090390FC003C0D93F0013E0017E130F49131F000115F04848EB3FE0485AA2
4848EB1FC0001FEC0F004990C7FC123FA2485AA412FF90C9FCA96CEC0380150716006C6C
5B151E001F5C6C6C5B6C6C5B6C6C485A3901F80F8026007FFEC7FCEB0FF0242A7AA828>
I<EE03F8ED01FFA3ED000F1607A217F0A4160FA217E0A4161FA217C0A491380FF03FECFF
FC902603F81F138090390FC007BF90391F8003FF90387E0001497F0001157F4848150048
5A120F5B001F5D485A5E5B127FA2150112FF90C75BA41503A25EA37E1507A26C4A5A7F00
1F141F6C6C133F6C6CEBFFF83B03F001EFFFC03900F80F8F90383FFE0FD90FF0EBE0002D
407ABE33>I<EC3FE0903801FFF8903807E07E90380F801F90393F000F80017E14C049EB
07E0485A12034848EB03F0485AA2121F5B123FA248481307A290B6FCA2D8FF80C8FC90C9
FCA87EED01C015036C15806D1307001FEC0F006D131E000F5C6C6C5B6C6C485A3900FC07
C0D93FFFC7FCEB07F8242A7BA828>I<ED07F0ED3FFCEDFC1E913803F03F4A48B4FC4A48
1380141FEC3F81DA7F0113008102FE137C93C7FCA213015CA513035CA50007B512F8A326
0007F0C8FCA3130F5CA5131F5CA5133F5CA5137F91C9FCA55B5BA4EA03FF007F13FEB5FC
A229407DBF1C>I<177C913907F803FE91393FFE0F8F9139FC0F9C3F903901F007F89039
07E003E0D90FC013F0011F903801F80C02801400133FD97F007FA315035B495CA3017E49
5A5E150F6D5C6D495A90263F803EC7FCECC0FC903871FFF09038E07F8091C9FC485AA47F
A27F90B512F8EDFF806C15E016F86D8048B6FC3A07E0000FFED80F801300003FC8127F00
3E815A00FC815AA25E163EA25E6C15FC007C4A5A6C4A5A6CEC0FC0D80FC0013FC7FC3903
F801FCC6B512F0010F90C8FC303D7FA82D>I<147FEB3FFFA313017FA25CA513015CA513
035CA4ED07F80107EB1FFF9139F0781FC09138F1E00F9139F38007E0ECF70002FE14F049
5A5CA25CA24A130F131F4A14E0A4161F133F4A14C0A4163F137F91C71380A4167F5B4915
00A300015D486C491380B5D8F87F13FCA32E3F7DBE33>I<1478EB01FE130314FFA25B14
FE130314FCEB00F01400ACEB03F8EA01FF14F0A2EA001F130FA314E0A5131F14C0A5133F
1480A5137F1400A55B5BA4EA03FF007F13F0A2B5FC183E7DBD1A>I<147FEB3FFFA31301
7FA25CA513015CA513035CA501070103B5FC02F014FEA26F13F06F1380EEFE00010F14F8
4A485AED03C04B5A031FC7FC153E011F13784A5AECC3E0ECC7F0ECCFF814FF497F14F9EC
E1FE14C04A7E4A7E4980017E133F82151F82150F01FE8049130782A2000181486C49B4FC
B5D8F03F13F04B13E0A2303F7EBE30>107 D<143FEB1FFF5BA213017FA214FEA5130114
FCA5130314F8A5130714F0A5130F14E0A5131F14C0A5133F1480A5137F1400A55B5BA4EA
03FF007F13F8A2B5FC183F7DBE1A>I<902707F007F8EB03FCD803FFD91FFF90380FFF80
913CE0781FC03C0FE09126E1E00FEBF0073E001FE38007E1C003F090260FE700EBE38002
EEDAF70013F802FC14FE02D85C14F84A5CA24A5C011F020F14074A4A14F0A5013F021F14
0F4A4A14E0A5017F023F141F91C74914C0A549027F143F4992C71380A300014B147F486C
496DEBFFC0B5D8F87FD9FC3F13FEA347287DA74C>I<903907F007F8D803FFEB1FFF9139
E0781FC09138E1E00F3B001FE38007E090380FE70002EE14F014FC14D814F85CA24A130F
131F4A14E0A4161F133F4A14C0A4163F137F91C71380A4167F5B491500A300015D486C49
1380B5D8F87F13FCA32E287DA733>I<EC0FF0ECFFFE903903F01F8090390FC007C049C6
6C7E013E6D7E01FC6D7E48488049147C0003157E485A000F157F5B121FA2485AA2007F16
80A2170048C85AA54B5AA25E5A6C4A5A7E4B5A5E6C140F6C6C5C4B5A6C6C013EC7FC6C6C
5B6C6C485A3900FC0FE090383FFF80D90FF8C8FC292A7BA82D>I<91387F01FE903A7FFF
0FFFC09139FE3E03F09238F801F8903A01FFE000FE4B137F6D497F4990C713804A15C04A
141FA218E0A20103150F5C18F0A3171F010716E05CA3173F18C0130F4A147F1880A2EFFF
004C5A011F5D16034C5A6E495AEE1FC06E495AD93FDC017EC7FC91388F01F8913883FFE0
028090C8FC92C9FC137FA291CAFCA45BA25BA31201487EB512F8A3343A81A733>I<9139
0FE003C0DAFFFC1380903903F81E0790390FE0070F90391F80038FD97F0013DF01FE1301
4848903800FF00485A1207485A8248485C123F495CA2485AA2150112FF90C75BA41503A2
5EA37E15077F003F4A5A151F6C6C133F6C6C137F000714FF3903F003CF3A00FC0F8FE090
383FFE0FEB0FF090C7FC151F5EA5153F5EA4157F4B7E023F13FEA32A3A7AA730>I<9039
07F01F80D803FFEB7FE09138E1E1F09138E387F839001FE707EB0FE614EE02FC13F002D8
13E09138F801804AC7FCA25C131FA25CA4133F5CA5137F91C8FCA55B5BA31201487EB512
FEA325287EA724>I<9138FF81C0010713E390381F807F90397C003F8049131F4848130F
5B00031407A248481400A27FA27F6D90C7FCEBFF8014FC6C13FF6C14C015F06C6C7F011F
7F13079038007FFE1403140100381300157EA2123C153E157E007C147CA2007E147815F8
007F495A4A5A486C485A26F9E01FC7FC38E0FFFC38C01FE0222A7DA824>I<EB0380A413
0791C7FCA25BA25BA2133EA2137E13FE12011207001FB512C0B6FCA2D801FCC7FCA31203
5BA512075BA5120F5BA41407001F130E13C0A4141E141C1380A26D5AA2000F5B14F03807
E1E03801FF80D8007EC7FC1A3978B723>I<01FE147F00FFEC7FFF4914FEA20007140300
031401A34914FCA4150312074914F8A41507120F4914F0A4150F121F4914E0A2151FA315
3F4914C0157F15FFEC01DF3A0FC003BFE09138073FFF3803F01E3801FFF826003FE01380
282977A733>I<B539E007FFF05D17E02707FE000313006C48EB01FC6F5A5E00014A5A5E
A24B5A6D1307000092C7FC5D150E6D5B7F5DA25D1480013F5B14815D14C3011F5B02C7C8
FCA214CE14EEEB0FFCA25CA26D5A5CA25CA26D5A2C2878A630>I<B500C3B53803FFFCA2
04FE14F8290FFE003FE00013C0D807F86D48EB7F000003173E183C150F18386D5E000114
1F705B153F4D5A15776D4B5A0000ECE7F04DC7FCEC01C3170E9038FF0383017F5D913807
03F85FEC0E01021E5CD93F9C14F002BC6D5A02B813FDDAF8005B4A13FF5F6D5A94C8FC5C
4A137E167C6DC7FC1678010E14383E2878A642>I<48B539C07FFFC0A33C000FFE003FF8
006D48EB1FE0010315800101023EC7FC6E133C01005C027F5B6F5A91383F81C0EDC380DA
1FC7C8FC15EFEC0FFE6E5A5D140381A24A7E140FEC1E7F023C7FEC383F02707FECE01F01
0180903803C00F49486C7ED90F007F491303017E80D801FE80D807FF497EB5D8803F13F8
A332277FA630>I<90B539E007FFF05E18E0902707FE000313006D48EB01FC705A5F0101
4A5A5F16036E5C0100140794C7FC160E805E805E1678ED8070023F13F05EED81C015C191
381FC38015C793C8FC15EF15EEEC0FFCA25DA26E5AA25DA26E5A5DA24AC9FC5C140E141E
141C5C121C003F5B5A485B495A130300FE5B4848CAFCEA701EEA783CEA3FF0EA0FC0343A
80A630>I<017FB512FEA2ECC00190397E0003FC49EB07F849EB0FF049EB1FE049EB3FC0
ED7F8000011500495B4A5A4A5A4848485A4A5AC7485A4A5A5D147F4AC7FC495A495A4948
1370494813E0495A5C133F90387F8001D9FF0013C0485A48481303485A4848EB07804913
0F4848131F003F143F397F8001FFB71200A227277EA628>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fo cmtt10 10.95 94
/Fo 94 127 df<121C127FEAFF80B3EA7F00B2123EC7FCA8121C127FA2EAFF80A3EA7F00
A2121C09396DB830>33 D<00101304007C131F00FEEB3F80A26C137FA248133FB2007E14
00007C7F003C131E00101304191C75B830>I<903907C007C0A2496C487EA8011F131FA2
02C05BA3007FB7FCA2B81280A36C16006C5D3A007F807F80A2020090C7FCA9495BA2003F
90B512FE4881B81280A36C1600A22701FC01FCC7FCA300031303A201F85BA76C486C5AA2
29387DB730>I<1438147C14FCA4EB03FF011F13E090B512FC4880000780481580261FFE
FD13C09039F0FC3FE0D83FC0131FD87F80EB0FF001001307007E15F800FE14035A1507A3
6CEC03F0A2007F91C7FC138013C0EA3FF0EA1FFE13FF6C13FF6C14E0000114F86C6C7F01
1F7F01037F0100148002FD13C09138FC7FE0151FED0FF015070018EC03F8127E1501B4FC
A35AA26CEC03F07E01801307ED0FE0D83FC0131F01F0EB7FC0D81FFEB512806CB612006C
5C6C5CC614F0013F13C0D907FEC7FCEB00FCA5147C143825477BBE30>I<D803C0EB01E0
D80FF01303486C497E487E150F487ED87E7E495AEAFE7F5E486C133FA25E157FA24BC7FC
6C5A5D387E7E01EA7FFED83FFC5B1403EA1FF86C48485AEA03C0C75B140FA25D141FA24A
5AA25D147FA292C8FC5CA2495AA25C1303A25C1307A290390FF001E0ED07F84A487E011F
497EA24A487E133F163F90267F807F1380ED7E1F14005BA25B1201A24848EB7F3F033F13
004914FF12076F5A5B6F5A6C486D5A0001EC01E029477DBE30>I<EB07E0EB1FF8497E13
7F497E803801FC7F497E810003131F13F0A6143F92C8FC91387F0FFF9026F87E1F138000
0113FEEBF9FC13FB4A6C1300D9FFF013C06C13E0151F02C05BEB7F809038FF003F4892C7
FC485C48EB807E5A15FE391FDFC0FC383F8FE014E1397F07F1F8EB03F300FEEBFBF0EB01
FF5D7FEDC006027F130F91393F801F8015C06C137F6CEBFFE049EBF83F018701FC130026
3FFFFBB5FC6C01F15B14E06C9038C03FFC00039038001FF8D801FCEB07E0293A7DB830>
I<EA07C0EA0FF0EA1FF8A213FCA213FE120F1207EA007EA513FE13FCA2120113F81203EA
07F0120FEA1FE0127FEAFFC013801300127C12380F1D70B730>I<141E147F14FF5BEB03
FEEB07FCEB0FF0EB1FE0EB3FC0EB7F80EBFF00485A5B12035B485A120F5BA2485AA2123F
5BA2127F90C7FCA412FEAD127FA47F123FA27F121FA26C7EA27F12076C7E7F12017F6C7E
EB7F80EB3FC0EB1FE0EB0FF0EB07FCEB03FEEB01FF7F147F141E184771BE30>I<127812
FE7E7F6C7E6C7EEA0FF06C7E6C7E6C7E6C7EEB7F80133F14C0131FEB0FE014F01307A2EB
03F8A214FC1301A214FE1300A4147FAD14FEA4130114FCA2130314F8A2EB07F0A2130F14
E0EB1FC0133F1480137FEBFF00485A485A485A485AEA3FE0485A485A90C7FC5A12781847
78BE30>I<14E0497E497EA60038EC0380007EEC0FC0D8FF83EB3FE001C3137F9038F3F9
FF267FFBFB13C06CB61280000FECFE00000314F86C5C6C6C13C0011F90C7FC017F13C048
B512F04880000F14FE003FECFF80267FFBFB13C026FFF3F913E09038C3F87F0183133FD8
7E03EB0FC00038EC0380000091C7FCA66D5A6D5A23277AAE30>I<143EA2147FAF007FB7
FCA2B81280A36C1600A2C76CC8FCAF143EA229297DAF30>I<EA03E0EA0FF0EA1FF813FC
EA3FFEA213FFA27EA27E1203EA007FA2137E13FEEA01FC1203EA07F8EA3FF0127FEAFFE0
EA7F801300123C1019708B30>I<007FB612F0A2B712F8A36C15F0A225077B9E30>I<120F
EA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F000C0C6E8B30>I<16F01501ED03F8A2
1507A2ED0FF0A2ED1FE0A2ED3FC0A2ED7F80A2EDFF00A24A5AA25D1403A24A5AA24A5AA2
4A5AA24A5AA24A5AA24AC7FCA2495AA25C1303A2495AA2495AA2495AA2495AA2495AA249
C8FCA2485AA25B1203A2485AA2485AA2485AA2485AA2485AA248C9FCA25AA2127CA22547
7BBE30>I<14FE903807FFC0497F013F13F8497F90B57E48EB83FF4848C6138049137F48
48EB3FC04848EB1FE049130F001F15F0491307A24848EB03F8A290C712014815FCA400FE
EC00FEAD6C14016C15FCA36D1303003F15F8A26D1307001F15F0A26D130F6C6CEB1FE0A2
6C6CEB3FC06C6CEB7F806D13FF2601FF8313006CEBFFFE6D5B6D5B010F13E06D5BD900FE
C7FC273A7CB830>I<EB03C0497EA2130FA2131FA2133F137F13FF1203123FB5FCA213EF
138FEA7E0F1200B3B0003FB512F84814FCB612FEA26C14FC6C14F81F3977B830>I<EB07
FC90383FFFC090B512F00003804814FE4880261FF80F1380263FE00113C09038C0007F48
48EB3FE090C7121FED0FF04814075A6C15F81503A3127E1218C8FCA2150716F0150F16E0
151F16C0153FED7F8015FF4A13005DEC07FC4A5A4A5A4A5A4A5A4A5A4990C7FC495A495A
EB0FF0EB3FE0495A495A4890C8FC4848EB01F04848EB03F8485AEA1FE048B6FCB7FCA37E
6C15F025397BB830>I<EB03FF013F13E090B512F84814FE4880481580260FFE0113C090
38F0007F4848EB1FE0150F16F01507A26C5A6C5AC8FC150F16E0A2151FED3FC0157FEDFF
8002071300903807FFFE495B5D8115FF6D1480D9000113C09138003FE0ED1FF0ED07F815
0316FC150116FE1500A21218127EB4FCA2150116FC4814036C15F86C6C13076DEB1FF0D8
3FF0133F3A1FFE01FFE06CB612C06C15806CECFE00C65C013F13F001031380273A7CB830
>I<EC03FC4A7E140F141FA2143F147F157E14FEA2EB01FCEB03F8A2EB07F0A2EB0FE0EB
1FC0A2EB3F80A2EB7F0013FEA2485A485AA2485AA2485A485AA2485AA248C7FC12FEB8FC
1780A46C1600C8007EC7FCAA91387FFFFE91B6FCA46E5B29397DB830>I<000FB6128048
15C05AA316800180C8FCAEEB83FF019F13C090B512F015FC8181D9FE0313809039F0007F
C049133F0180EB1FE06CC7120F000E15F0C81207A216F81503A31218127EA2B4FC150716
F048140F6C15E06C141F6DEB3FC06D137F3A3FE001FF80261FFC0F13006CB55A6C5C6C5C
6C14E06C6C1380D90FFCC7FC25397BB730>I<EC0FF8EC7FFF49B51280010714E0131F49
14F090387FF80F9039FFC007F84813803803FE005B485A4848EB03F0ED01E0484890C7FC
5B123F5BA2127FEB000C903803FFE0010F13F8D8FF3F13FE48B6FCB7128016C09039FE00
7FE001F8EB1FF001E0130F49EB07F8ED03FC5B90C7120116FE1500A37EA46C7E15016D14
FC121F6D1303000FEC07F86D130F6C6CEB1FF06DEB3FE03A03FF81FFC06C90B512806C15
006D5B011F13F8010713E001011380273A7CB830>I<127CB712FC16FEA416FC48C7EA0F
F816F0ED1FE0007CEC3FC0C8EA7F80EDFF00A24A5A4A5A5D14075D140F5D4A5AA24A5AA2
4AC7FCA25C5C13015CA213035CA213075CA4495AA6131F5CA96D5A6DC8FC273A7CB830>
I<49B4FC011F13F0017F13FC90B57E0003ECFF804815C048010113E03A1FF8003FF04913
1FD83FC0EB07F8A24848EB03FC90C71201A56D1303003F15F86D13076C6CEB0FF06C6CEB
1FE0D807FCEB7FC03A03FF83FF806C90B512006C6C13FC011F13F0497F90B512FE488026
07FE0013C0D80FF8EB3FE0D81FE0EB0FF04848EB07F8491303007F15FC90C712014815FE
481400A66C14016C15FC6D1303003F15F86D1307D81FF0EB1FF06D133F3A0FFF01FFE06C
90B512C06C1580C6ECFE006D5B011F13F0010190C7FC273A7CB830>I<49B4FC010F13E0
013F13F890B57E4880488048010113803A0FFC007FC0D81FF0EB3FE04848131F49EB0FF0
48481307A290C7EA03F85A4815FC1501A416FEA37E7E6D130315076C7E6C6C130F6D133F
D80FFC13FF6CB6FC7E6C14FE6C14F9013FEBE1FC010F138190380060011400ED03F8A215
0716F0150F000F15E0486C131F486CEB3FC0157FEDFF804A1300EC07FE391FF01FFC90B5
5A6C5C6C5C6C1480C649C7FCEB3FF0273A7CB830>I<120FEA3FC0EA7FE0A2EAFFF0A4EA
7FE0A2EA3FC0EA0F00C7FCAF120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F000C
276EA630>I<EA03C0EA0FF0EA1FF8A2EA3FFCA4EA1FF8A2EA0FF0EA03C0C7FCAFEA03C0
EA0FF0121F13F8123F13FCA3121FA2120F12031200120113F8120313F01207EA1FE0123F
EA7FC0EAFF80EA7F00127E12380E3470A630>I<16F01503ED07F8151F157FEDFFF01403
4A13C0021F138091383FFE00ECFFF8495B010713C0495BD93FFEC7FC495A3801FFF0485B
000F13804890C8FCEA7FFC5BEAFFE05B7FEA7FF87FEA1FFF6C7F000313E06C7F38007FFC
6D7E90380FFF806D7F010113F06D7FEC3FFE91381FFF80020713C06E13F01400ED7FF815
1F1507ED03F01500252F7BB230>I<007FB7FCA2B81280A36C16006C5DCBFCA7003FB612
FE4881B81280A36C1600A229157DA530>I<1278127EB4FC13C07FEA7FF813FEEA1FFF6C
13C000037F6C13F86C6C7EEB1FFF6D7F010313E06D7F9038007FFC6E7E91380FFF806E13
C0020113F080ED3FF8151F153FEDFFF05C020713C04A138091383FFE004A5A903801FFF0
495B010F13804990C7FCEB7FFC48485A4813E0000F5B4890C8FCEA7FFE13F8EAFFE05B90
C9FC127E1278252F7BB230>I<EB1FFE90B512E0000314F8000F14FE4880481580267FF8
0313C09038C0007F48C7121F16E0150FA3127E151F0018EC7FC0C812FF020313804A1300
4A5AEC1FF84A5AEC7FC04A5A92C7FC495AA2495A5CA213075CA86D5A90C9FCA8EB01C0EB
07F0A2497EA36D5AA2EB01C023397AB830>I<EC1FE0ECFFF8010313FE010F7F49148049
14C090397FF03FE09038FF800F4890380007F0D803FC13033A07F801FBF89038F007FF38
0FE01F4A13FCEA1FC0495A003FEBFF0F903800FE07903901FC03FE007FEBF801EA7E03EC
F000A2EAFE0700FC49137EAA00FE6D13FED87E0314FCA2ECF801D87F0114F8003FEBFC03
903900FE07F0903880FF0F001F90387FFFE06D6C13C0EA0FE06E13803A07F007FE009038
F801F86C6CC7127C6CB414FE6CEB800390387FF01F6DB512FC6D14F86D14E0010314C001
00EBFE00EC1FF0273A7CB830>I<147F4A7EA2497FA4497F14F7A401077F14E3A3010F7F
A314C1A2011F7FA490383F80FEA590387F007FA4498049133F90B6FCA34881A39038FC00
1F00038149130FA4000781491307A2D87FFFEB7FFFB56CB51280A46C496C130029397DB8
30>I<007FB512F0B612FE6F7E82826C813A03F8001FF815076F7E1501A26F7EA615015E
A24B5A1507ED1FF0ED7FE090B65A5E4BC7FC6F7E16E0829039F8000FF8ED03FC6F7E1500
167FA3EE3F80A6167F1700A25E4B5A1503ED1FFC007FB6FCB75A5E16C05E6C02FCC7FC29
387EB730>I<91387F803C903903FFF03E49EBFC7E011F13FE49EBFFFE5B9038FFE07F48
EB801F3903FE000F484813075B48481303A2484813015B123F491300A2127F90C8FC167C
16005A5AAC7E7EA2167C6D14FE123FA27F121F6D13016C6C14FCA26C6CEB03F86D13076C
6CEB0FF03901FF801F6C9038E07FE06DB512C06D14806D1400010713FC6D13F09038007F
C0273A7CB830>I<003FB512E04814FCB67E6F7E6C816C813A03F8007FF0ED1FF8150F6F
7E6F7E15016F7EA2EE7F80A2163F17C0161FA4EE0FE0AC161F17C0A3163F1780A2167F17
005E4B5A15034B5A150F4B5AED7FF0003FB65A485DB75A93C7FC6C14FC6C14E02B387FB7
30>I<007FB7FCB81280A47ED803F8C7123FA8EE1F0093C7FCA4157C15FEA490B5FCA6EB
F800A4157C92C8FCA5EE07C0EE0FE0A9007FB7FCB8FCA46C16C02B387EB730>I<003FB7
12804816C0B8FCA27E7ED801FCC7121FA8EE0F8093C7FCA5153E157FA490B6FCA69038FC
007FA4153E92C8FCAE383FFFF8487FB5FCA27E6C5B2A387EB730>I<02FF13F00103EBC0
F8010F13F1013F13FD4913FF90B6FC4813C1EC007F4848133F4848131F49130F485A4913
07121F5B123F491303A2127F90C7FC6F5A92C8FC5A5AA892B5FC4A14805CA26C7F6C6D14
00ED03F8A27F003F1407A27F121F6D130F120F7F6C6C131FA2D803FE133F6C6C137FECC1
FF6C90B5FC7F6D13FB010F13F30103EBC1F0010090C8FC293A7DB830>I<3B3FFF800FFF
E0486D4813F0B56C4813F8A26C496C13F06C496C13E0D803F8C7EAFE00B290B6FCA601F8
C7FCB3A23B3FFF800FFFE0486D4813F0B56C4813F8A26C496C13F06C496C13E02D387FB7
30>I<007FB6FCB71280A46C1500260007F0C7FCB3B3A8007FB6FCB71280A46C15002138
79B730>I<49B512F04914F85BA27F6D14F090C7EAFE00B3B3123C127EB4FCA24A5A1403
EB8007397FF01FF86CB55A5D6C5C00075C000149C7FC38003FF025397AB730>I<D83FFF
90380FFF80486D4813C0B56C5AA26C497E6C496C1380D803F0903803F8004B5A4B5A151F
4B5A5E4BC7FC15FE14014A5A5D4A5A4A5A141F5D4A5A4AC8FC5C13F18101F37F13F790B5
7E14EFECC7F01483EC03F8140101FE7F496C7E5B157F497F82151F82150F826F7EA26F7E
1501821500D83FFF903803FFC0486D4813E0B56C5AA26C497E6C496C13C02B387FB730>
I<383FFFF8487FB57EA26C5B6C5BD801FCC9FCB3B0EE0F80EE1FC0A9003FB7FC5AB8FCA2
7E6C16802A387EB730>I<D83FF8ECFFE0486C4913F0486C4913F8A2007F16F06C6C4913
E00007160001EF14BFEC800FA39039E7C01F3FA4ECE03F01E3133EA2ECF07EA201E1137C
A2ECF8FCA201E013F8A214FDEC7DF0A3147FEC3FE0A3EC1FC0A2EC070091C7FCADD83FFC
903801FFE0486C4913F0B54913F8A26C486D13F06C486D13E02D387FB730>I<D83FFC90
381FFF80486C4913C0B54913E0A26C6D6C13C06C6E13800003913801F800EBF7C0A3EBF3
E0A314F013F1A214F8A213F014FCA2147C147EA2143E143FA2141FA21581A2140F15C1A2
140715E1A2140315F1A21401A215F91400A3157DA3153FEA3FFF481380B5EAC01FA26CEB
800F6C496C5A2B387EB730>I<90383FFFE048B512FC000714FF4815804815C04815E0EB
F80001E0133FD87F80EB0FF0A290C71207A44815F8481403B3A96C1407A26C15F0A36D13
0FA26D131F6C6CEB3FE001F813FF90B6FC6C15C06C15806C1500000114FCD8003F13E025
3A7BB830>I<007FB512F0B612FE6F7E16E0826C813903F8003FED0FFCED03FE15016F7E
A2821780163FA6167F17005EA24B5A1503ED0FFCED3FF890B6FC5E5E16804BC7FC15F001
F8C9FCB0387FFFC0B57EA46C5B29387EB730>I<90383FFFE048B512FC000714FF481580
4815C04815E0EBF80001E0133F4848EB1FF049130F90C71207A44815F8481403B3A8147E
14FE6CEBFF076C15F0EC7F87A2EC3FC7018013CF9038C01FFFD83FE014E0EBF80F90B6FC
6C15C06C15806C1500000114FCD8003F7FEB00016E7EA21680157F16C0153F16E0151F16
F0150FED07E025467BB830>I<003FB57E4814F0B612FC15FF6C816C812603F8017F9138
003FF0151F6F7E15071503821501A515035E1507150F4B5A153F4AB45A90B65A5E93C7FC
5D8182D9F8007FED3FE0151F150F821507A817F8EEF1FCA53A3FFF8003FB4801C0EBFFF8
B56C7E17F06C496C13E06C49EB7FC0C9EA1F002E397FB730>I<90390FF803C0D97FFF13
E048B512C74814F74814FF5A381FF80F383FE001497E4848137F90C7123F5A48141FA215
0FA37EED07C06C91C7FC7F7FEA3FF0EA1FFEEBFFF06C13FF6C14E0000114F86C80011F13
FF01031480D9003F13C014019138007FE0151FED0FF0A2ED07F8A2007C140312FEA56C14
0716F07F6DEB0FE06D131F01F8EB3FC001FF13FF91B51280160000FD5CD8FC7F13F8D8F8
1F5BD878011380253A7BB830>I<003FB712C04816E0B8FCA43AFE003F800FA8007CED07
C0C791C7FCB3B1011FB5FC4980A46D91C7FC2B387EB730>I<3B7FFFC007FFFCB56C4813
FEA46C496C13FCD803F8C7EA3F80B3B16D147F00011600A36C6C14FE6D13016D5CEC8003
90393FE00FF890391FF83FF06DB55A6D5C6D5C6D91C7FC9038007FFCEC1FF02F3980B730
>I<D87FFE90380FFFC0B54913E06E5AA24A7E6C486D13C0D807F0903801FC00A26D1303
00035DA46C6C495AA46C6C495AA46D131F6D5CA3EC803F013F5CA46D6C48C7FCA490380F
E0FEA401075B14F1A301035BA314FB01015BA314FFA26D5BA46E5A6E5A2B397EB730>I<
D83FFC903801FFE0486C4913F000FF16F8A2007F16F06C486D13E0D81FC09038001FC000
0F1680A76D143F00071600A7000390380F803E9039F01FC07EEC3FE0A3EC7FF0A2147D00
01157CA29039F8FDF8FCA314F8A300005D01F913FCA2ECF07CA201FD137DA2017D5CECE0
3DA3017F133FA2ECC01FA2013F5CA2EC800F6D486C5A2D397FB730>I<3A3FFF01FFF848
01837F02C77FA202835B6C01015B3A01FC007F806D91C7FC00005C6D5BEB7F01EC81FCEB
3F8314C3011F5B14E7010F5B14FF6D5BA26D5BA26D5BA26D90C8FCA4497FA2497FA2815B
81EB0FE781EB1FC381EB3F8181EB7F0081497F49800001143F49800003141F4980000714
0FD87FFEEB7FFFB590B5128080A25C6C486D130029387DB730>I<D87FFF90381FFFC0B5
6C4813E0A46C496C13C0D803F8903803F8006D1307A26C6C495AA26C6C5C151F6D5CEC80
3F013F5CECC07F011F91C7FCA290380FE0FEA214F101075BA2903803FBF8A201015B14FF
6D5BA26E5AA36E5AB1903803FFF8497F497FA26D5B6D5B2B387EB730>I<001FB612FC48
15FE5AA490C7EA03FCED07F816F0150FED1FE016C0153FED7F80003E1500C85A4A5A5D14
034A5A5D140F4A5A5D143F4A5A92C7FC5C495A5C1303495A5C130F495A5C133F495A91C8
FC5B4848147C4914FE1203485A5B120F485A5B123F485A90B6FCB7FCA46C15FC27387CB7
30>I<007FB5FCB61280A4150048C8FCB3B3B3A5B6FC1580A46C140019476DBE30>I<127C
A212FEA27EA26C7EA26C7EA26C7EA26C7EA26C7EA26C7EA212017FA26C7EA26D7EA26D7E
A26D7EA26D7EA26D7EA26D7EA2130180A26D7EA26E7EA26E7EA26E7EA26E7EA26E7EA26E
7EA2140181A26E7EA2ED7F80A2ED3FC0A2ED1FE0A2ED0FF0A2ED07F8A21503A2ED01F015
0025477BBE30>I<007FB5FCB61280A47EC7123FB3B3B3A5007FB5FCB6FCA46C14001947
7DBE30>I<1307EB1FC0EB7FF0497E000313FE000FEBFF80003F14E0D87FFD13F039FFF0
7FF8EBC01FEB800F38FE0003007CEB01F00010EB00401D0E77B730>I<007FB612F0A2B7
12F8A36C15F0A225077B7D30>I<1338137CEA01FE12031207EA0FFC13F0EA1FE013C0EA
3F8013005A127EA212FE5AA5EAFFC013E013F0127FA2123FA2EA1FE0EA07C00F1D70BE30
>I<EB3FFC48B57E4814E04880488048809038F00FFE9038E001FF806F7E6C48133F6C48
80C8121FA491B5FC130F137F48B6FC12075A48EBC01F383FFC00EA7FE0138048C7FC5AA4
6C143FA26C6C137F9038C001FF263FF80FEBFFC06CB712E0A2000714F76C14C3C6020013
C0D93FF090C7FC2B2A7CA830>I<EA3FFC487E12FFA2127F123F1200AAEC03FE91381FFF
80027F13E091B57E90B612FC82ECFE079138F001FF4A6C13804A137F4AEB3FC091C7121F
4915E0160FA217F01607A8160FA217E07F161F6EEB3FC0A26EEB7F806E13FFDAF0031300
9138FC0FFE91B55A5E495CD97E7F13C0D93C1F90C7FC90380003FC2C3980B730>I<ECFF
E0010713FC011F7F017F7F90B612804815C048EB807F3907FC003F485A485A49EB1F8048
48EB0F004990C7FC127F90C9FCA25A5AA87E7EA27F003FEC07C06DEB0FE06C7E6D131F6C
6C14C0D807FE133F9039FFC0FF806C90B5FCC615006D5B011F13F801075B01011380232A
7AA830>I<913801FFE04A7F5CA28080EC0007AAEB03FE90381FFF874913E790B6FC5A5A
481303380FFC00D81FF0133F49131F485A150F4848130790C7FCA25AA25AA87E6C140FA2
7F003F141F6D133F6C7E6D137F390FF801FF2607FE07EBFFC06CB712E06C16F06C14F76D
01C713E0011F010313C0D907FCC8FC2C397DB730>I<49B4FC010713E0011F13F8017F7F
90B57E488048018113803A07FC007FC04848133FD81FE0EB1FE0150F484814F049130712
7F90C7FCED03F85A5AB7FCA516F048C9FC7E7EA27F003FEC01F06DEB03F86C7E6C7E6D13
07D807FEEB1FF03A03FFC07FE06C90B5FC6C15C0013F14806DEBFE00010713F8010013C0
252A7CA830>I<EDFF80020713E0021F13F05C4A13F891B5FC491387903803FE079138FC
03F0903907F800C04A1300A8003FB612C04815E0B7FCA36C15C0260007F0C7FCB3A9003F
B512FE4880B71280A26C15006C5C25397DB830>I<D903FC13FF90261FFF8713C04913DF
90B712E05A5A2607FE07138F903AF801FE07C048486C6CC7FCA2497F001F8149133FA56D
137F000F92C7FC6D5BA26C6C485AEBFE0790B55A5D485C15C001DF5BD9C3FCC8FC01C0C9
FCA37F7F6CB512F015FF6C15C04815F0488148813A3FE0001FFE0180130148C8127F007E
8100FE168048151FA56C153F007FED7F006D5C6C6C495A01F013076CB4EB7FFC6C90B55A
6C5D000115C06C6C91C7FC011F13FC010113C02B3E7DA730>I<EA3FFC487E12FFA2127F
123F1200AAEC01FE91380FFF80023F13E091B57E90B67EA29138FE07FCECF8039138E001
FE14C0EC8000A291C7FCA25BB3A23B3FFFF81FFFF8486D4813FCB500FE14FEA26C01FC14
FC6C496C13F82F3880B730>I<14E0EB03F8A2497EA36D5AA2EB00E091C8FCA9381FFFF8
487F5AA27E7EEA0001B3A9003FB612C04815E0B7FCA27E6C15C023397AB830>I<EC01C0
EC07F0A2EC0FF8A3EC07F0A2EC01C091C7FCA990B512F04814F8A47EEB0003B3B3A5EC07
F0A2123C007EEB0FE0B4131FEC3FC0147F90B512806C14005C6C5B000F13F0000313C01D
4E7CB830>I<EA7FF8487EA4127F1200AB0203B512804A14C017E0A217C06E1480913900
1FE0004B5A4B5A4BC7FC4A5A4A5AEC0FF84A5A4A5A4A5A4A5A01FD7F90B57E8114F7ECE3
F8ECC1FCEC81FEEC00FF497F496D7E6F7E826F7E15076F7E6F7E3B7FFFF81FFFE0B56C48
13F017F8A217F06C496C13E02D387FB730>I<387FFFF8B57EA47EEA0001B3B3A8007FB6
12F0B712F8A46C15F025387BB730>I<02FC137E3B7FC3FF01FF80D8FFEF01877F90B500
CF7F15DF92B57E6C010F13872607FE07EB03F801FC13FE9039F803FC01A201F013F8A301
E013F0B3A23C7FFE0FFF07FF80B548018F13C0A46C486C01071380322881A730>I<EC01
FE3A3FFC0FFF80267FFE3F13E000FF90B57E90B67E7E6C9038FE07FCC6EBF8039138E001
FE14C0EC8000A291C7FCA25BB3A23B3FFFF81FFFF8486D4813FCB500FE14FEA26C01FC14
FC6C496C13F82F2880A730>I<49B4FC010F13E0013F13F8497F90B57E0003ECFF801401
3A07FC007FC04848EB3FE0D81FE0EB0FF0A24848EB07F8491303007F15FC90C71201A300
FEEC00FEA86C14016C15FCA26D1303003F15F86D13076D130F6C6CEB1FF06C6CEB3FE06D
137F3A07FF01FFC06C90B512806C15006C6C13FC6D5B010F13E0010190C7FC272A7CA830
>I<EC03FE3A3FFC1FFF80267FFE7F13E000FF90B57E90B612FC6C816CEBFE07C69038F0
01FF4A6C13804A137F4AEB3FC091C7121F4915E0160FA217F01607A8160FA217E07F161F
6EEB3FC0A26EEB7F806E13FFDAF00313009138FC0FFE91B55A5E495C6E13C0021F90C7FC
EC03FC91C9FCAD383FFFF8487FB57EA26C5B6C5B2C3C80A730>I<49B413F8010FEBC1FC
013F13F14913FD48B6FC5A481381390FFC007F49131F4848130F491307485A491303127F
90C7FC15015A5AA77E7E15037FA26C6C1307150F6C6C131F6C6C133F01FC137F3907FF01
FF6C90B5FC6C14FD6C14F9013F13F1010F13C1903803FE0190C7FCAD92B512F84A14FCA4
6E14F82E3C7DA730>I<ED07F83A3FFF803FFF486DB51280B512C302CF14C06C13DF6C90
38FFFC3FD8001F13E09238801F809238000F004A90C7FC5C5C5CA25CA45CAF003FB512FC
4880B7FCA26C5C6C5C2A287EA730>I<90381FFC1E48B5129F000714FF5A5A5A387FF007
EB800100FEC7FC4880A46C143E007F91C7FC13E06CB4FC6C13FC6CEBFF806C14E0000114
F86C6C7F01037F9038000FFF02001380007C147F00FEEC1FC0A2150F7EA27F151F6DEB3F
806D137F9039FC03FF0090B6FC5D5D00FC14F0D8F83F13C026780FFEC7FC222A79A830>
I<EB0780497E131FA9003FB612E04815F0B7FCA36C15E026001FC0C7FCB216F8ED01FCA5
ECE003010FEB07F814F09138FC1FF06DB512E06D14C016806D14009038007FFCEC1FF026
337EB130>I<D83FFCEB3FFC486C497E00FF14FFA2007F147F003F143F00001400B3A415
01A2150315076D130F903A7FC07FFFF891B612FC6D15FE7F6D4913FC6D9038F87FF80100
01C0C7FC2F2880A630>I<3B3FFFC07FFF80486DB512C0B515E0A26C16C06C496C13803B
01F80003F000A26D130700005DA26D130F017E5CA2017F131F6D5CA2EC803F011F91C7FC
A26E5A010F137EA2ECE0FE01075BA214F101035BA3903801FBF0A314FF6D5BA36E5A6E5A
2B277EA630>I<3B3FFFC01FFFE0486D4813F0B515F8A26C16F06C496C13E0D807E0C7EA
3F00A26D5C0003157EA56D14FE00015DEC0F80EC1FC0EC3FE0A33A00FC7FF1F8A2147DA2
ECFDF9017C5C14F8A3017E13FBA290393FF07FE0A3ECE03FA2011F5C90390F800F802D27
7FA630>I<3A3FFF81FFFC4801C37FB580A26C5D6C01815BC648C66CC7FC137FEC80FE90
383F81FC90381FC3F8EB0FE3ECE7F06DB45A6D5B7F6D5B92C8FC147E147F5C497F819038
03F7E0EB07E790380FE3F0ECC1F890381F81FC90383F80FE90387F007E017E137F01FE6D
7E48486D7E267FFF80B5FCB500C1148014E3A214C16C0180140029277DA630>I<3B3FFF
C07FFF80486DB512C0B515E0A26C16C06C496C13803B01FC0003F000A2000014076D5C13
7E150F017F5C7F151FD91F805BA214C0010F49C7FCA214E00107137EA2EB03F0157C15FC
EB01F85DA2EB00F9ECFDF0147D147FA26E5AA36E5AA35DA2143F92C8FCA25C147EA2000F
13FE486C5AEA3FC1EBC3F81387EB8FF0EBFFE06C5B5C6C90C9FC6C5AEA01F02B3C7EA630
>I<001FB612FC4815FE5AA316FC90C7EA0FF8ED1FF0ED3FE0ED7FC0EDFF80003E491300
C7485A4A5A4A5A4A5A4A5A4A5A4A5A4990C7FC495A495A495A495A495A495A4948133E48
90C7127F485A485A485A485A485A48B7FCB8FCA46C15FE28277DA630>I<ED3FF0913803
FFF8140F5C147F16F09138FFF00092C7FC495A5CB3A21303495A133F383FFFF0B55A5C91
C8FC14C080003F7F38003FF813076D7E1301B3A2806D7E15F091387FFFF016F8141F8014
039138003FF025477BBE30>I<127CA212FEB3B3B3AD127CA207476CBE30>I<EA7FE0EAFF
FE6D7E8014F07EC66C7E13076D7E1301B3A2806D7E15E091387FFFE06E13F8801407141F
5C4A13E09138FFE00092C7FC495A5CB3A21303495A137F387FFFF0B5FC14C05C49C8FCEA
7FE025477BBE30>I<017C133848B4137C48EB80FE4813C14813C348EBEFFC397FEFFFF0
D8FF8713E0010713C0486C1380D87C0113003838007C1F0C78B730>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fp cmbx12 17.28 51
/Fp 51 122 df<94267FFF80903801FFE0043FB500F0013F13FC4BB6D8FC01B57E030FDB
FF0FECFF80037F04BF15C04AB5D8E00390B5008113E04A01FCC76CEBFC03020F01F091B5
D8F00713F04A01C04914E04A90C7484A4813F84A4817804A485C49491700495B62495B76
13F04970496D13E04B7213C0726F138072EE3E009AC7FCB0BD12FEA6D8000F01E0C849C9
FCB3B3B0003FB6D8F803B712E0A665657DE45E>11 D<ED0FFF4AB512F8020F14FF023F15
C091B712F049D9FC037F0107D9F00013FE4901C0EB3FFF4990C7000F7F49486E7F017F83
49486E7F4A80488448496E7FA248844A157F4884A3481980A34819C04A81A34819E0A7B5
18F0B3A86C19E0A76C19C0A26E5DA26C1980A36C1900A36C6D4B5AA26C60A26C6D4A5B6C
606E5C6D6C4A5B6D6C4A5B6D6D495B6D6D4990C7FC6D01F0EBFFFE6DD9FC035B010090B6
12F0023F15C0020F92C8FC020114F8DA001F138044607ADD51>48
D<16F04B7E1507151F153FEC01FF1407147F010FB5FCB7FCA41487EBF007C7FCB3B3B3B3
007FB91280A6395E74DD51>I<913801FFF8021FEBFFC091B612F8010315FF010F16C001
3F8290267FFC0114F89027FFE0003F7F4890C7000F7F48486E7FD807F86E148048486E14
C048486E14E048486F13F001FC17F8486C816D17FC6E80B56C16FE8380A219FFA283A36C
5BA26C5B6C90C8FCD807FC5DEA01F0CA14FEA34D13FCA219F85F19F04D13E0A294B512C0
19804C14004C5B604C5B4C5B604C13804C90C7FC4C5A4C5A4B13F05F4B13804B90C8FC4B
5AED1FF84B5A4B5A4B48143F4A5B4A48C8FC4A5A4A48157E4A5A4A5AEC7F8092C9FC02FE
16FE495A495A4948ED01FCD90FC0150749B8FC5B5B90B9FC5A4818F85A5A5A5A5ABAFCA2
19F0A4405E78DD51>I<92B5FC020F14F8023F14FF49B712C04916F0010FD9C01F13FC90
271FFC00077FD93FE001017F49486D8049C86C7F484883486C6F7F14C0486D826E806E82
487FA4805CA36C5E4A5E6C5B6C5B6C495E011FC85A90C95CA294B55A614C91C7FC604C5B
4C5B4C5B4C5B047F138092260FFFFEC8FC020FB512F817E094C9FC17F817FF91C7003F13
E0040713F8040113FE707F717F7113E085717FA2717F85A285831A80A31AC0EA03FCEA0F
FF487F487F487FA2B57EA31A80A34D14005C7E4A5E5F6C495E49C8485BD81FF85F000F5E
D807FE92B55A6C6C6C4914806C01F0010791C7FC6C9026FF803F5B6D90B65A011F16F001
0716C001014BC8FCD9001F14F0020149C9FC426079DD51>I<F01F804E7E187F18FFA25F
5F5F5FA25F5F5FA294B5FC5E5E5EA25E5EEE3FBFEE7F3FA216FEED01FCED03F8ED07F0A2
ED0FE0ED1FC0ED3F8016005D15FE4A5A4A5AA24A5A4A5A4A5A4A5AA24AC7FC14FE495A5C
1303495A495A495A5C133F49C8FC13FE485AA2485A485A485A5B121F485A48C9FC12FEBC
FCA6CA6CEBC000B1037FB8FCA6485E7CDD51>I<01C0EE01C0D801F8160F01FF167F02F0
EC07FFDAFF8090B5FC92B7128019006060606060606095C7FC17FC5F17E0178004FCC8FC
16E09026FC3FFCC9FC91CBFCADED3FFE0203B512F0020F14FE023F6E7E91B712E001FDD9
E00F7F9027FFFE00037F02F801007F02E06EB4FC02806E138091C8FC496F13C04917E071
13F0EA00F090C914F8A219FC83A219FEA419FFA3EA03F0EA0FFC487E487E487FA2B57EA3
19FEA35C4D13FC6C90C8FC5B4917F8EA3FF001804B13F06D17E0001F5E6C6C17C06D4B13
80D807FC92B512006C6C4A5B6C6C6C01075B6C01E0011F5BD97FFE90B55A6DB712C0010F
93C7FC6D15FC010115F0D9003F1480020301F0C8FC406078DD51>I<EE1FFF0303B512E0
031F14F892B612FE0203814AD9FC037F021F9039C0007FC04A90C7EA1FE0DAFFFC6E7E49
4914074949EC7FF8494914FF49495B4949497F4990C7FC495D5C13FF485BA25A4A6E5B5A
715B48496E5B725A4894C8FCA35AA35C48913801FFE0030F13FE033F6D7E4B14E092B612
F89126E1FE037FB53AE3F0007FFEDAE7E06D7EDAEFC06D7F4B6D7F02FFC76C7F4A82717F
4A82A24A828385A24A1780A54A17C0A37EA77EA47E6E1780A27EA21A007E4D5B7E6E5E7E
6E5E6C4C5B6D7E013F4B5B6D6C4A5B6D01C0495B6D6D90B5C7FC6DD9FC0713FC6D90B65A
6D5E023F15C0020F92C8FC020114F8DA001F1380426079DD51>I<EA07E0120F7F13FCEB
FFFC91B912F8A45AA21AF01AE01AC01A801A00A248606161616101E0C9123F01804C5A48
CA485A4D90C7FC60007E4C5A17074D5A4D5A4D5A485F4D5A17FF4C90C8FCC9485A5F4C5A
160F4C5A5F163F4C5A16FF5F5D94C9FC5D5D5E150FA24B5AA2153FA24B5AA215FFA34A5B
A25CA35CA44A5BA45CA65CAD6E5BA26E5BDA03FECAFC6E5A456377E051>I<92383FFF80
0203B512FC021FECFF80027F15E049B712F849D9F0077F010F90C76C7ED91FFCEC1FFFD9
3FF06E7F494802037F494882717F484980854890C9127FA24884183FA25A80A380806E15
7F6E5E14FE6E7E6F4A5A6C14F003FC495B03FF495B6C1580DCE0075B6CDBF80F90C7FC93
38FE1FFE6C9238FF7FF84D5A6D16C06D5E6D4BC8FC6D6F7E6D16E00101826D16FC023F81
4A8149B87E010783498390263FFE3F8190267FFC0F819026FFF003814849C6FC48496D80
4849131F4890C7000780160148486E1580003F163F49150F007F7014C0491501717E8400
FF835B8484A384A21A80A27F007F1900607F003F606D160F001F606D4C5A6C6D153F6C6D
4B5A6C01F04B5A6C01FC02035B6C01FF021F5B6D9027F001FFFEC7FC6D90B65A010F16F0
01035E010093C8FC020F14F8DA007F90C9FC426079DD51>I<ED3FFF0207B512F0023F14
FC91B7FC010316C049D9F8077F49D9C00113F8013F496C6C7E4948C76C7E49486E7E4884
484980717F4849825A48707F855A5C855A8583A2B583A41A80A71AC0A35F7EA46C5EA27E
806C5EA26C5E6C7F6C5E6C6D147D6D6C14FD6D6CEB01F96D90388003F16D9038F01FE16D
90B500C11480010115816D6C1401021F13FC020113E091C8FC1A00A25FA261A3D9FF805E
487F486D4A5B487FA2486D5E5F61615F614A4A90C7FC4D5A6C5B4A4A5A4A01035BD803FC
C7485B6C6C021F13C0D9FFC0017F5B6CD9F803B5C8FC6DB612FC6D5D010F15E0010392C9
FC010014F8020F1380426079DD51>I<F00FE04E7EA24E7EA34E7EA24E7EA34D7FA24D80
A24D80A34D80A24D80A34D80A2DD7FBF7FA2181F05FF8017FE04016D7FA24D7E04038217
F804076D80A24D7E040F8217E0041F6D80A24D7F043F825F047F6E7FA294C77E4C825E03
016F7FA24C800303845E03076F80A24C80030F845E031F6F80A24C81033F845E037F707F
93B9FCA292BA7EA24A85A203FCC912070203865D020771805D86020F864B82021F865D87
023F864B83027F8692CBFC874A864A840101875C496C728090381FFFC0B700E092B812FE
A66F647BE37A>65 D<BB12F0F2FF801BF81BFEF3FFC088D800010280C7000114F8DF003F
7F080F13FF74807480867480757FA2757FA28987A289A965A26365A2515BA298B55A505C
505C5091C7FC505B505B087F13F00703B512C096B6C8FC93B812F81BC01BF8F3FF801CE0
0480C8001F13F8080713FE08016D7E7480757F757F757F89757F89871E80871EC0A41EE0
87A663A21EC0A3631E80A2511400A2515B515B6398B55A505C08075C081F5C97B6C7FCBD
5A1CF81CE099C8FC1BF898C9FC63627AE173>I<4DB5ED03C0057F02F014070407B600FE
140F047FDBFFC0131F4BB800F0133F030F05FC137F033F9127F8007FFE13FF92B6C73807
FF814A02F0020113C3020702C09138007FE74A91C9001FB5FC023F01FC16074A01F08291
B54882490280824991CB7E49498449498449498449865D49498490B5FC484A84A2484A84
A24891CD127FA25A4A1A3F5AA348491A1FA44899C7FCA25CA3B5FCB07EA380A27EA2F50F
C0A26C7FA37E6E1A1F6C1D80A26C801D3F6C6E1A00A26C6E616D1BFE6D7F6F4E5A7F6D6D
4E5A6D6D4E5A6D6D4E5A6D6E171F6D02E04D5A6E6DEFFF806E01FC4C90C7FC020F01FFEE
07FE6E02C0ED1FF8020102F8ED7FF06E02FF913803FFE0033F02F8013F1380030F91B648
C8FC030117F86F6C16E004071680DC007F02F8C9FC050191CAFC626677E375>I<BB12E0
F2FF801BF01BFE757E1CF0D800010280C7000780DF007F13FE080F6D7E0801807480093F
7F090F13FC757F757F877580767F8A88767F8A888AA2767FA28A881F80A37614C0A41FE0
A5881FF0B05214E0A51FC0A4521480A31F006466A2525BA2525BA2525B666499B55A515C
5191C7FC515B515B515B097F5B50B512C008075C083F91C8FC0707B512FCBD12F01CC051
C9FC1BF81B8008E0CAFC6C627AE17C>I<BD12FCA488A2D8000102C0C71201F1000F1A01
F2007F1B3F1B0F1B07757EA28787A288A3F43F80A31C1FA3197EA3F40FC0A499C7FC19FE
A31801A218031807181F18FF93B6FCA6EEC000181F180718031801A21800A21D7E197EA2
1DFCA696C812011DF8A31C03A3F407F0A31C0FA21C1F1C3F1DE01C7F1CFF63631B0F093F
13C098B5FC1A0797B6FCBEFCA31D80A35F617AE06A>I<BD12E0A41CF0A2D8000102C0C7
1207F1003F1A0F1A031A001B7F1B3FF31FF81B0FA21B07A21B03A21B011CFCA31B00A419
FCA21C7EA41C00A21801A31803A21807180F183FEF01FF93B6FCA6EEC001EF003F180F18
071803A21801A31800A896C9FCB3A5B912F8A657617AE065>I<4DB5ED03C0057F02F014
070407B600FE140F047FDBFFC0131F4BB800F0133F030F05FC137F033F9127F8007FFE13
FF92B6C73807FF814A02F0020113C3020702C09138007FE74A91C9001FB5FC023F01FC16
074A01F08291B54882490280824991CB7E49498449498449498449865D49498490B5FC48
4A84A2484A84A24891CD127FA25A4A1A3F5AA348491A1FA44899C8FCA25CA3B5FCB07E07
1FB812F880A37EA296C70001ECC000A26C7FA37E807EA26C80A26C80A26C807F6D7F816D
7F7F6D7F6D6D5F6D14C06D6E5E6E7F6E01FC5E020F01FF5E6E02C0ED7FEF020102F8EDFF
C76E02FF02071383033F02FC013F1301030F91B638FC007F03014D131F6F6C04E0130704
0704801301DC007F02F8CAFC050191CBFC6D6677E37F>I<B96C90B91280A6D8000102C0
C9000102C0C7FCB3B3A293BBFCA604C0C91201B3B3A6B96C90B91280A671627AE17E>I<
B912E0A6C702E0C7FCB3B3B3B3AEB912E0A633627CE13C>I<B912F8A6D8000102C0CBFC
B3B3B1F307E0A5F30FC0A61B1FA31B3F1C80A21B7FA21BFFA262A262625013006262624F
B5FC1907191F4EB6FCBDFC63A553627AE161>76 D<94381FFFE00407B67E043F15F04BB7
12FE030FEEFFC0033FD9FC0014F092B500C0010F13FC020349C7000113FF4A01F86E6C7F
021F496F13E04A01C0030F7F4A496F7F91B5C96C7F0103497013FF494970804B83494971
7F49874949717F49874B8390B586484A717FA24891CB6C7FA2481D804A84481DC0A34849
7214E0A3481DF0A34A85481DF8A5B51CFCB06C1DF8A36E96B5FCA36C1DF0A46C6D4E14E0
A36C1DC06E606C1D80A26C6E4D1400A26C6E4D5BA26C6E4D5BA26D6D4D5B6D636D6D4D5B
6F94B5FC6D636D6D4C5C6D6D4C91C7FC6D6E4B5B6D02E0031F5B023F6D4B13F06E01FC92
B55A6E01FF02035C020302C0010F91C8FC020002FC90B512FC033F90B712F0030F17C003
0394C9FCDB007F15F804071580DC001F01E0CAFC666677E379>79
D<BB7E1AFCF2FFC01BF81BFE757ED800010280C7001F80070114F0736C7F081F7F747F74
7F7414807414C0A27414E0A21DF0A27513F8A41DFCA91DF8A498B512F0A21DE0A25014C0
1D8062501400505B505B087F5B4FB512E0071F5C93B9C7FC1BFC1BF01B8008F0C8FC04C0
CCFCB3B3A2B97EA65E627AE16E>I<BA12F8F1FFE01AFEF2FFC01BF01BFED800010280C7
6C7F070714C0070014F0747F081F7F747F747F7480A2748089A37480A389A865A3505CA2
65A2505C9AC9FC505B505B505B087F5B4FB55A0707148096B548CAFC93B812F81BC050CB
FC621AFF932680000314C0DE007F7F071F13F8737F737F737F73808885888688A2747FA6
88A688A676140FF71F80A374801F3F86771400745E746E5BB96E6E5B746E485A75EBFE07
091F90B55A090715E009015DCF003F91C7FC0A0013FC71647AE178>82
D<DBFFFCEC01E0020FD9FFE01303027F02FC130749B7130F0107EEC01F011F16F049D9C0
07EBF83F4948C7383FFE7FD9FFF8020FB5FC4801E014014849804849153F91C97E484882
001F834982003F83845B007F187FA2193FA200FF181FA27F190FA27FA26D17078080806C
01F893C7FC80ECFF8015F86CECFFC016FC6CEDFFE017FE6CEEFFE018F86C17FE6C717E6C
846C846D17F86D836D836D8313036D18806D6C17C0020F17E01401DA000F16F015000407
15F8EE007F1703050014FC183F84060713FE84A2007C8300FC83A2197FA3193F7EA31AFC
7EA27F1AF86D177F7F1AF06D17FF6D18E06D5E01FF18C06E4B138002E04B130002F84B5A
02FFED3FFC01CF01E0ECFFF8018301FF010F5B010191B65A6D6C5E48011F93C7FC480103
15FC48D9003F14E048020149C8FC476677E35A>I<001FBEFCA64849C79126E0000F1480
02E0180091C8171F498601F81A0349864986A2491B7FA2491B3F007F1DC090C9181FA400
7E1C0FA600FE1DE0481C07A5CA95C7FCB3B3B3A3021FBAFCA663617AE070>I<B96C023F
B612FEA6D8000102C0CA0007EBF000E2007FC7FCB3B3B3AA656D63A2821C018065701703
80525A6E7F6E4F5A70171F6E626E6D4D5A6E6D177F525A6E6E030390C8FC033F01E04B5A
6F6DED1FFC6F01FCED7FF80303D9FF80903803FFE06F02F8017F5B6F6C90B7C9FC041F5E
040716F8040016C0050F4ACAFCDD003F13C06F647AE17C>I<913803FFFE027FEBFFF001
03B612FE010F6F7E4916E090273FFE001F7FD97FE001077FD9FFF801017F486D6D7F717E
486D6E7F85717FA2717FA36C496E7FA26C5B6D5AEB1FC090C9FCA74BB6FC157F0207B7FC
147F49B61207010F14C0013FEBFE004913F048B512C04891C7FC485B4813F85A5C485B5A
5CA2B55AA45FA25F806C5E806C047D7F6EEB01F96C6DD903F1EBFF806C01FED90FE114FF
6C9027FFC07FC01580000191B5487E6C6C4B7E011F02FC130F010302F001011400D9001F
90CBFC49437CC14E>97 D<903807FF80B6FCA6C6FC7F7FB3A8EFFFF8040FEBFF80047F14
F00381B612FC038715FF038F010014C0DBBFF0011F7FDBFFC001077F93C76C7F4B02007F
03F8824B6F7E4B6F13804B17C0851BE0A27313F0A21BF8A37313FCA41BFEAE1BFCA44F13
F8A31BF0A24F13E0A24F13C06F17804F1300816F4B5A6F4A5B4AB402075B4A6C6C495B91
26F83FE0013F13C09127F00FFC03B55A4A6CB648C7FCDAC00115F84A6C15E091C7001F91
C8FC90C8000313E04F657BE35A>I<92380FFFF04AB67E020F15F0023F15FC91B77E0103
9039FE001FFF4901F8010113804901E0010713C04901804913E0017F90C7FC49484A13F0
A2485B485B5A5C5A7113E0485B7113C048701380943800FE0095C7FC485BA4B5FCAE7EA2
80A27EA2806C18FCA26C6D150119F87E6C6D15036EED07F06C18E06C6D150F6D6DEC1FC0
6D01E0EC7F806D6DECFF00010701FCEB03FE6D9039FFC03FFC010091B512F0023F5D020F
1580020102FCC7FCDA000F13C03E437BC148>I<F17FF8050FB5FCA6EF000F8484B3A892
380FFF804AB512F8020F14FE023FECFF8391B712E301039138807FF3499039F8000FFB01
1F01E00103B5FC494913004990C87E49488148498148834A815A485BA2485BA25AA3485B
A4B5FCAE7EA46C7FA37EA26C7FA26C5F806C5F6C6D5D6C6D5D017F93B5FC6D6C6C010380
6D6D49806D01F0D91FF7EBFFFE6D9039FE01FFE7010190B612876D6CECFE07021F14F802
0314E09127003FFE00ECC0004F657BE35A>I<92380FFFC04AB512FC020FECFF80023F15
E091B712F80103D9FE037F499039F0007FFF011F01C0011F7F49496D7F4990C76C7F4948
6E7F48498048844A804884485B727E5A5C48717EA35A5C721380A2B5FCA391B9FCA41A00
02C0CBFCA67EA380A27EA27E6E160FF11F806C183F6C7FF17F006C7F6C6D16FE6C17016D
6C4B5A6D6D4A5A6D01E04A5A6D6DEC3FE0010301FC49B45A6D9026FFC01F90C7FC6D6C90
B55A021F15F8020715E0020092C8FC030713F041437CC14A>I<EE3FFC0307B51280033F
14C04AB612F0020715F84A9038F03FFC4AEB807F913A7FFE00FFFE4A5A4B4813FF4913F0
5B4913E0A24913C0A27013FE4949EB7FFCEF3FF8EF1FF0EF07C094C7FCB0B812C0A6D800
1F01C0C8FCB3B3B0007FB612FCA638657CE431>I<F107F8DB7FFEEC3FFE020FB5D8F001
B5FC027FDAFE03148049B7128F49DCDFFD13C0010FD9F00FEBFFC149D9800114014990C7
EBFC0349486E6C7E4948EC3FFF48496E018113800780130048F0C03E97C7FC48496E7FA3
4884A96C60A36C6D4A5BA26C60A26C6D4A90C8FC6D6C4A5A6D6C4A5A6D6D485BDBF00F5B
4990B612C060D97C7F4AC9FCD9FC0F14F09126007FFECAFC92CCFC1201A47FA27F8014F0
91B77E18FE6CEFFFC019F06D17FC19FF6D846D846D846D84013F8490BAFC0003854801E0
C712014890C9000F7F484816014848EE007F4848717E8512FF5B85A56D5F007F616D173F
003F616D177F6C6C4D5A6C01C003035B6C6D4B5B6C01F8031F5BC601FF92B5C7FC6D01F8
011F5B011F90B712F8010717E0010094C8FC020F15F0DA003F01FCC9FC4A607CC151>I<
903807FF80B6FCA6C6FC7F7FB3A8EF1FFF94B512F0040714FC041F14FF4C8193267FE07F
7F922781FE001F7FDB83F86D7FDB87F07FDB8FC0814C7F039FC78015BE03BC8003FC825D
A25DA25DA45DB3B2B7D8F007B71280A651647BE35A>I<EB0FE0EB3FF8497E48B5FCA248
80A24880A76C5CA26C91C7FCA238007FFC6D5AEB0FE090C9FCAF903807FF80007FB5FCA6
C6FC7F7FB3B3AEB712C0A622657BE42C>I<903807FF80B6FCA6C6FC7F7FB3A90503B612
80A6DD003FEB8000DE0FFCC7FCF01FF04E5AF0FFC04D5B4D90C8FCEF07FC4D5AEF3FF04D
5A4D5A4C90C9FC4C5AEE0FFC4C5A4C5AEE7FC04C7E03837F03877F158F039F7F03BF7F92
B5FC838403FC804B7E03F0804B6C7F4B6C7F1580707F707F707FA270807080717FA2717F
717F717FA2717F717F83867180727F95B57EB7D8E00FECFFF0A64C647BE355>107
D<903807FF80B6FCA6C6FC7F7FB3B3B3B3ADB712E0A623647BE32C>I<902607FF80D91F
FFEEFFF8B691B500F00207EBFF80040702FC023F14E0041F02FF91B612F84C6F48819326
7FE07F6D4801037F922781FE001F9027E00FF0007FC6DA83F86D9026F01FC06D7F6DD987
F06D4A487F6DD98FC0DBF87EC7804C6D027C80039FC76E488203BEEEFDF003BC6E4A8003
FC04FF834B5FA24B5FA24B94C8FCA44B5EB3B2B7D8F007B7D8803FB612FCA67E417BC087
>I<902607FF80EB1FFFB691B512F0040714FC041F14FF4C8193267FE07F7F922781FE00
1F7FC6DA83F86D7F6DD987F07F6DD98FC0814C7F039FC78015BE03BC8003FC825DA25DA2
5DA45DB3B2B7D8F007B71280A651417BC05A>I<923807FFE092B6FC020715E0021F15F8
027F15FE494848C66C6C7E010701F0010F13E04901C001037F49496D7F4990C87F49486F
7E49486F7E48496F13804819C04A814819E048496F13F0A24819F8A348496F13FCA34819
FEA4B518FFAD6C19FEA46C6D4B13FCA36C19F8A26C6D4B13F0A26C19E06C6D4B13C0A26C
6D4B13806C6D4B13006D6C4B5A6D6D495B6D6D495B010701F0010F13E06D01FE017F5B01
0090B7C7FC023F15FC020715E0020092C8FC030713E048437CC151>I<902607FF80EBFF
F8B6010FEBFF80047F14F00381B612FC038715FF038F010114C09227BFF0003F7FC6DAFF
C0010F7F6D91C76C7F6D496E7F03F86E7F4B6E7F4B17804B6F13C0A27313E0A27313F0A2
1BF885A21BFCA3851BFEAE4F13FCA41BF861A21BF0611BE0611BC06F92B512801B006F5C
6F4A5B6F4A5B03FF4A5B70495B04E0017F13C09226CFFC03B55A03C7B648C7FC03C115F8
03C015E0041F91C8FC040313E093CBFCB3A3B712F0A64F5D7BC05A>I<DB0FFFEC01F04A
B500E01303020F02F81307023F14FE91B7130F01030280EB801F49903AFC001FC03F011F
01F0EB0FE04949903803F07F490180903801F8FF90B56E7E4891C8B5FC48498184485B48
4981A248835C5A845C5AA4B55AAE7E80A37EA2807EA26C6D5D606C7F606C6D5D7E6C6D92
B5FC6D6D5B6D6D13076D6DEB0FEF6D01F8EB3FCF6D9039FE01FF8F010190B6120F6D6C14
FC021F14F0020314C09139003FFE0092C8FCB3A3053FB612FCA64E5D7BC055>I<D90FFF
EB0FFCB690383FFF8093B512E04B14F04B14F8923907FC7FFC92390FE0FFFEC6EC1F806D
D93F0113FF6D133E157E157C15F8A215F07013FEA24BEB7FFCEF3FF8EF0FE04B90C7FCA5
5DB3B0B712F8A638417BC042>I<913A3FFF8007800107B5EAF81F011FECFE7F017F91B5
FC48B8FC48EBE0014890C7121FD80FFC1407D81FF0801600485A007F167F49153FA212FF
171FA27F7F7F6D92C7FC13FF14E014FF6C14F8EDFFC06C15FC16FF6C16C06C16F06C826C
826C826C82013F1680010F16C01303D9007F15E0020315F0EC001F1500041F13F8160700
7C150100FC81177F6C163FA2171F7EA26D16F0A27F173F6D16E06D157F6D16C001FEEDFF
806D0203130002C0EB0FFE02FCEB7FFC01DFB65A010F5DD8FE0315C026F8007F49C7FC48
010F13E035437BC140>I<EC07E0A6140FA5141FA3143FA2147FA214FF5BA25B5B5B5B13
7F48B5FC000F91B512FEB8FCA5D8001F01E0C8FCB3AFEF0FC0AC171F6D6D1480A2173F6D
16006F5B6D6D137E6D6D5B6DEBFF836EEBFFF86E5C020F14C002035C9126003FFCC7FC32
5C7DDA3F>I<902607FFC0ED3FFEB60207B5FCA6C6EE00076D826D82B3B3A260A360A260
7F60183E6D6D147E4E7F6D6D4948806D6DD907F0ECFF806D01FFEB3FE06D91B55A6E1500
021F5C020314F8DA003F018002F0C7FC51427BC05A>I<B700C00103B512FCA6C66C01C0
C8381FFE006D6DED07F0A26D6D5E190F6D6D5E191F6D606F153F6D95C7FC6F5DA26D6D15
7E19FE6D6E5C18016E5E7013036E5E701307A26E6D5C180F6E6D5C181F6E6D5C183F6E93
C8FC705BA26E6D13FEA26E6E5A17816FEBC1F817C36F5C17E76F5C17FFA26F5CA26F5CA2
6F91C9FCA26F5BA36F5BA2705AA2705AA2705AA2705A4E417DBF55>I<B70081B600FC01
03B512FCA6C66C0180C701FCC8381FFE006F6FED03F86D047F5F856F6E16076D646F7014
0F6D705F866F6E161F6D646F4A6D143F6D99C7FC4E7F6F616D1B7E6F4A6D14FE6D6395B5
7E7001FC15016E62DCC0016E13036EDBF87F5D05038004E0496C14076E62DCF007ED800F
6E4B6C5D050F15C004F8496C141F6E62DCFC1FEDE03F6E4B6C92C8FC053F15F004FE496C
5C6E197E7048EDF8FE6E027E6D5C05FE15FC4D6D13FD6F601BFF6F496E5BA24D806F60A2
6F496E5BA24D806F60A26F496E90C9FCA294C87E6F5FA26F486F5A047C6F5A6E417DBF75
>I<007FB600C0017FB512F8A6D8001F01F8C70007EBF0006D040190C7FC6D6D5D6D6D4A
5A6D6D4A5A70495A6D4C5A6E7F6E6D495A6E6D495A7049C8FC6E4A5A6E6D485A6E6D485A
6E13FFEF8FF06EEC9FE06FEBFFC06F5C6F91C9FC5F6F5B816F7F6F7F8481707F8493B57E
4B805D4B80DB0FF37FDB1FE17F04C080153F4B486C7F4B486C7F4A486D7F4A486D7F4A5A
4B6D7F020F6E7F4A486D7F4A486D804A5A4AC86C7F49486F7F4A6F7F0107707FEB3FFFB6
00F049B7FCA650407EBF55>I<B700C00103B512FCA6D8003F01C0C8381FFE006FED07F0
A26D6D5E190F6D6D5E191F6D6D5E193F6D95C7FC6F5D6D177E6F15FEA26D6E495AA26E6D
5C18036E6D5C18076E5E70130F6E5E70131FA26E6D495AA26E6D91C8FC606E6D137E18FE
6E5D17816F5C17C3A26FEBE7F0A26FEBF7E017FF6F5CA26F5CA26F91C9FCA36F5BA26F5B
A2705AA2705AA2705AA35FA25F163F94CAFC5E167E16FED807E05CD81FF81301487E486C
495AA2B5495AA24B5A5E151F4B5A6C4849CBFC15FEEBFC01393FF807FC391FF03FF06CB5
5A6C5C6C91CCFCC613FCEB1FE04E5D7DBF55>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fq cmsy10 10.95 5
/Fq 5 106 df<EE7FFE0307B512E0033F14FC92B7FC0203D9C00313C0DA0FFCC7EA3FF0
DA3FE0EC07FCDA7F80EC01FED901FEC9EA7F80D903F8EE1FC0D907E0EE07E04948707E49
48707E49CB7E017E187E498449844848F00F8000031AC04918074848F003E0A24848F001
F0A248CD12F8A2001E1A78003E1A7CA2003C1A3C007C1A3EA200781A1EA300F81A1FA248
1A0FAB6C1A1FA200781A1EA3007C1A3EA2003C1A3C003E1A7CA2001E1A78001F1AF8A26C
6CF001F0A26C6CF003E0A26C6CF007C06D180F00011A806C6CF01F006D60017E187E6D60
6D6C4C5A6D6C4C5A6D6C4C5AD903F8EE1FC0D901FEEE7F809026007F80DA01FEC7FCDA3F
E0EC07FCDA0FFCEC3FF0913B03FFC003FFC0020090B6C8FC033F14FC030714E09226007F
FEC9FC50557BC05B>13 D<EB0FFCEB3FFF90B512C0000314F04880488048804880A24815
80A3B712C0AA6C1580A36C1500A26C5C6C5C6C5C6C5CC614C0013F90C7FCEB0FFC22227B
A72D>15 D<EF01E0841700841878187C84A284727E727E851803727E007FB912FCBA7E85
6C85CCEA07E0737EF101FCF1007FF21FC0F20FF8F203FFA2F20FF8F21FC0F27F00F101FC
F103F04F5A007FBA1280BBC7FC616C60CBEA01F04E5A1807614E5A4EC8FC183EA2601878
18F86017016050327BAF5B>41 D<146014F01301A214E01303A214C01307A2EB0F80A214
005BA2131E133EA25BA2137813F8A25B1201A25B1203A2485AA25B120FA290C7FC5AA212
3EA2123C127CA2127812F8A41278127CA2123C123EA27EA27E7FA212077FA26C7EA21201
7FA212007FA21378137CA27FA2131E131FA27F1480A2EB07C0A2130314E0A2130114F0A2
13001460145A77C323>104 D<126012F07EA21278127CA2123C123EA27EA27E7FA21207
7FA26C7EA212017FA212007FA21378137CA27FA2131E131FA27F1480A2EB07C0A2130314
E0A2130114F0A414E01303A214C01307A2EB0F80A214005BA2131E133EA25BA2137813F8
A25B1201A25B1203A2485AA25B120FA290C7FC5AA2123EA2123C127CA2127812F8A25A12
60145A7BC323>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fr cmti10 10.95 57
/Fr 57 123 df<DC0FF0EB0F80DC7FFEEB3FE0922601FC0FEBF878923B03F00381F03C92
3B07C007C3E07C923B0F801FC7E1FC031F013F13C318CFED3F001983069F13F8037E9039
0E1F80E005001400183F03FE92C7FC5DA3600201157E5DA318FE02035D0103B9FCA26190
290003F00001FCC7FC14074B5CA41703020F5D5DA31707021F5D5DA3170F023F5D92C7FC
A3171F4A5D147EA3173F02FE92C8FC5CA35F0101157E5CA35F495AA34C5A495AA2001E02
F05B007F9038C3F803010F5D00FF018713075F0207495AD8FE1F4948C9FCD8F81EEBC01E
3A703C03803C3A787801E0F83A1FF000FFE0D807C0EB3F80465383BF38>11
D<933807FF80043F13E09338FE00F8DB01F0133EDB07E0130E4B48131F4C137F031F14FF
4BC7FCA218FE157E1878180015FE5DA31401A25DA414030103B712F0A218E0903A0003F0
00070207140F4B14C0A3171F020F15805DA2173F1800141F5D5F177EA2143F92C712FE5F
A34A1301027EECF81CA3160302FEECF03C4A1538A21878187013014A010113F018E09338
00F1C0EF7F804948EC1F0094C7FCA35C1307A2001E5B127F130F00FF5BA249CAFC12FEEA
F81EEA703CEA7878EA1FF0EA07C0385383BF33>I<EA01E0EA07F8120F13FC121FA4120F
EA03D8EA0018A2133813301370136013E013C01201EA038013005A120E5A5A5A5A5A0E1C
6DBE1C>39 D<ED01801507ED0F00151C5D5D5D14014A5A4A5A4AC7FC141E143E5C14785C
1301495AA2495A5C130F49C8FCA2133EA25BA213FC5B12015BA212035B1207A25B120FA2
5BA2121FA290C9FCA25AA2123EA2127EA2127CA65AAB1278A67EA47EA2120E120F7EA26C
7EA26C7E6C7E1360215A73C325>I<14031580A2EC01C0EC00E0A21570A215781538153C
A3151EA4151FA2150FA7151FA9153FA2153EA3157EA2157CA215FCA215F8A21401A215F0
A2140315E0A2140715C0A2EC0F80A2141F15005C143EA25CA25CA2495A5C1303495A5C13
0F49C7FC131E5B137C5B5B485A485A485A48C8FC121E5A12705A5A205A7FC325>I<EA01
E0EA07F8120FA2EA1FFCA4EA0FF8EA0798EA001813381330A21370136013E013C01201EA
0380EA07001206120E5A5A5A5A5A0E1C7A891C>44 D<387FFFFEA3B5FCA21705799521>
I<120FEA3FC0127FA212FFA31380EA7F00123C0A0A77891C>I<15FE913807FF8091381F
07C091387C01F0ECF000494813F8494813780107147C495A49C7FC167E133E137EA25BA2
485AA2000315FEA25B000715FCA2491301120FA34848EB03F8A44848EB07F0A448C7EA0F
E0A316C0007E141F12FE1680153FA2481500A2157EA25DA25D4813015D6C495A127C4A5A
4A5A6C49C7FC143E6C5B380FC1F03803FFC0C648C8FC273F76BC2E>48
D<15031507150F151F151E153E157EEC01FEEC03FC1407141FEB01FF90380FFBF8EB1FC3
EB0E07130015F0A2140FA215E0A2141FA215C0A2143FA21580A2147FA21500A25CA25CA2
1301A25CA21303A25CA21307A25CA2130FA25CA2131FA25CEB7FE0B612F0A215E0203D77
BC2E>I<02C0EB018002F0130FD901FEEB7F0091B512FE5E5E4914E016804BC7FCECBFF8
D90780C8FC91C9FCA35B130EA3131E131CA3133C9038381FC0ECFFF090383BE07C90387F
003E017E133F017C7F0178805B498090C7FCA6153FA4001F147F486C5C487EA24913FF00
FF92C7FC90C7FC48495A12E04A5A5D6C495A140F00705C0078495A6C495A003E01FEC8FC
381F03FC380FFFF0000313C0C648C9FC293F77BC2E>53 D<15FF020713C091381F81E091
383E00F002FC13F84948137C495A4948137E010F143E495A133F4A133F017F147F91C7FC
5BA2485AA216FF12035B16FE150112075B1503A216FC491307A20003140F16F8151F1201
6D133F0000EC7FF015EF90387C01CF90393E079FE090380FFE1FD903F813C090C7123FA2
1680157F160015FEA24A5A001C5C007F1303485C4A5A4A5A4A5A4849C7FC00F8137E00E0
5B6C485A387C07E0383FFFC06C90C8FCEA03F8283F77BC2E>57 D<131EEB3F80137FEBFF
C05AA214806C13005B133C90C7FCB3120FEA3FC0127FA212FFA35B6CC7FC123C122777A6
1C>I<147F903801FFC090380780F090381E00784913380170133C49131C4848131E485A
120790C7FC120E121E121C003C143E0038143C0078147C1270007C14F8B41301EC03F014
07EC0FE048EB1FC0EC3F800078EBFF00C6485AEB03F8495AEB1FE0495A49C7FC13FE485A
485A13E0485A1470EB80F0000F5B1300495AEA0703495A019FC7FCEA03FCEA00F090C8FC
A8EA0780EA1FE0123FA2127FA35B6C5A001EC8FC1F416FC02E>63
D<171C173C177CA217FCA216011603A21607A24C7EA2161DA216391679167116E1A2ED01
C1A2ED038115071601150EA2031C7FA24B7EA25D15F05D4A5AA24A5AA24AC7FC5C140E5C
021FB6FC4A81A20270C7127FA25C13015C495AA249C8FCA2130E131E131C133C5B01F882
487ED807FEEC01FFB500E0017FEBFF80A25C39417BC044>65 D<49B712C018F818FE903B
0003FC0001FF9438007F804BEC3FC0A2F01FE014074B15F0180FA2140F5D181FA2021F16
E05D183F19C0023FED7F804B14FF19004D5A027F4A5A92C7EA07F0EF1FE0EF7F804AD903
FEC7FC92B512F017FE4AC7EA3F800101ED1FE04A6E7E17078401036F7E5CA30107825CA3
010F5E4A1407A260011F150F5C4D5A60013F153F4A4A5A4D5A017F4A90C7FC4C5A91C7EA
0FF849EC3FF0B812C094C8FC16F83C3E7BBD40>I<9339FF8001C0030F13E0033F9038F8
03809239FF807E07913A03FC001F0FDA0FF0EB071FDA1FC0ECBF00DA7F806DB4FC4AC77E
495AD903F86E5A495A130F4948157E4948157C495A13FF91C9FC4848167812035B120749
1670120FA2485A95C7FC485AA3127F5BA312FF5BA490CCFCA2170FA2170EA2171E171C17
3C173817786C16706D15F04C5A003F5E6D1403001F4B5A6D4AC8FC000F151E6C6C5C6C6C
14F86C6C495A6C6CEB07C090397FC03F8090261FFFFEC9FC010713F0010013803A4272BF
41>I<49B712C018F818FE903B0003FE0003FF9438007F804BEC1FC0F00FE0F007F01407
4BEC03F8F001FCA2140F4BEC00FEA3141F4B15FFA3143F5DA3027F5D5DA219FE14FF92C8
1203A34917FC4A1507A219F813034A150F19F0A20107EE1FE05CF03FC0A2010FEE7F804A
16006060011F4B5A4A4A5A4D5AA2013F4B5A4AEC3FC04DC7FC017F15FEEE03FC4AEB0FF0
01FFEC7FE0B8128004FCC8FC16E0403E7BBD45>I<49B812F8A390260003FEC7121F1807
4B14031801F000F014075DA3140F5D19E0A2141F4B1338A2EF7801023F027013C04B91C7
FCA217F0027F5CED80011603160F91B65AA3ED001F49EC07805CA3010392C8FC5CF00380
4C13070107020E14005C93C75A180E010F161E4A151C183CA2011F5E5C60A2013F15014A
4A5A1707017F150F4D5A4A147F01FF913807FF80B9FCA295C7FC3D3E7BBD3E>I<49B812
F0A390260003FEC7123F180F4B1403A2F001E014075DA3140F5D19C0A2141F5D1770EFF0
03023F02E013804B91C7FCA21601027F5CED8003A2160702FFEB1F8092B5FCA349D9003F
C8FC4A7F82A20103140E5CA2161E0107141C5CA293C9FC130F5CA3131F5CA3133F5CA213
7FA25C497EB612E0A33C3E7BBD3B>I<DCFF8013E0030713F0033F9038FC01C09239FFC0
3E03913A03FC000F07DA0FF0EB078F4A48903803DF80DA7F80EB01FF4AC8FC495A4948ED
7F00495A495A4948814948153E495A13FF91C9FC4848163C12035B1207491638120FA248
5A95C7FC485AA3127F5BA312FF5BA34BB512FE90C7FCA292C71380A295C7FCA25EA25FA2
16037E6D5DA2003F15077F001F5E6D140F6C6C141F0007153F6C6CEC7BF0D801FE14F16C
6CEB03E090393FE01F806DB5EA0060010701F890C8FC9038007FC03B4273BF46>I<49B6
FC5BA2D9000313005D5DA314075DA3140F5DA3141F5DA3143F5DA3147F5DA314FF92C7FC
A35B5CA313035CA313075CA3130F5CA3131F5CA3133F5CA2137FA25C497EB67EA3283E7B
BD23>73 D<49B6903807FFFE605ED9000390C7000113E04B6E13004B15FC4E5A19E00207
4B5A4BEC0F804EC7FC183C020F5D4B5C4D5AEF07C0021F4AC8FC4B131E5F5F023F5C9238
C003E0EE07804CC9FC027F5B4B5AEEFF801581ECFF834B7FED0F7FED1E3F49017C7FECFE
F89138FFE01F03C07F491380ED000F4A805C010714074A80A21603010F815C160183131F
4A6D7FA2177F013F825C173F017F82A24A81496C4A7EB6D8800FB512C0A261473E7BBD46
>75 D<49B5933807FFFC496062D90003F0FC00505ADBBF805E1A771AEF1407033F923801
CFE0A2F1039F020FEE071F020E606F6C140E1A3F021E161C021C04385BA2F1707F143C02
3804E090C7FCF001C0629126780FE0495A02705FF00700F00E0114F002E0031C5BA2F038
03010116704A6C6C5D18E019070103ED01C00280DA03805BA2943807000F13070200020E
5C5FDB03F8141F495D010E4B5CA24D133F131E011CDAF9C05CEEFB80197F013C6DB4C7FC
013895C8FC5E01784A5C13F8486C4A5CD807FE4C7EB500F04948B512FE16E01500563E7B
BD52>77 D<902601FFFE020FB5FC496D5CA2D900016D010013C04AEE3F00193E70141C19
3CEC07BFDB3FE01438151F1978020F7FDA0E0F15708219F0EC1E07021C6D5CA203031401
023C7FDA38015DA2701303EC7800027002805BA2047F130702F014C04A013F91C7FCA271
5A0101141F4AECF00EA2040F131E010315F84A151C1607EFFC3C0107140391C7143817FE
040113784915FF010E16708218F0131E011C6F5AA2173F133C01385E171F137813F8486C
6F5AEA07FEB500F01407A295C8FC483E7BBD44>I<EEFFC0030713F892383F80FE9238FC
003FDA03F0EB0F804A486D7EDA1F80804AC76C7E027E6E7E4A8149481400494881130749
5A4948157F133F5C49C9FC4917805B1201485AA212075B000F17FFA25B121F190048485D
A448484B5AA34D5AA25B4D5A12FF60171F60007F163F604D5AA24DC7FC5F003F15014C5A
6D5D001F4B5A4C5A6C6C4A5A4C5A6C6C4AC8FC000315FC6C6C495A6C6CEB07E0017FEB1F
8090261FC07EC9FC903807FFF801001380394273BF46>I<49B77E18F018FC903B0003FE
0003FEEF00FF4BEC7F80F03FC00207151F19E05DA2020F16F0A25DA2141FF03FE05DA202
3F16C0187F4B1580A2027FEDFF00604B495A4D5A02FF4A5A4D5A92C7EA3FC04CB4C7FC49
90B512FC17E04ACAFCA21303A25CA21307A25CA2130FA25CA2131FA25CA2133FA25CA213
7FA25C497EB67EA33C3E7BBD3E>I<49B612FCEFFF8018F0903B0003FE000FF8EF03FE4B
EB00FF8419800207ED3FC05DA219E0140F5DA3021FED7FC05DA2F0FF80143F4B15004D5A
60027F4A5A4B495A4D5AEF3F8002FF02FEC7FC92380007F892B512E01780499038000FE0
4A6D7E707E707E0103814A130083A213075CA25E130F5C5F1603131F5CA3013F02071440
4A16E05F017F160119C04A01031303496C1680B6D8800113079438FE0F009338007E1ECA
EA3FFCEF07F03B407BBD42>82 D<92390FF001C0ED7FFE4AB5EA0380913907F80FC79139
0FC003EF91391F8001FF4AC71300027E805C495A4948143EA2495AA2010F153C5CA3011F
1538A38094C7FC80A214FC6DB4FC15F015FE6DEBFFC06D14F06D14FC6D80143F020F7F02
0180EC001F150303007F167F163FA2161FA212075A5F120EA2001E153F94C7FCA2163E00
3E157E167C003F15FC4B5A486C5C4B5A6D495AD87DE0EB1F80D8F8F849C8FC017F13FE39
F03FFFF8D8E00F13E048C690C9FC32427ABF33>I<48B9FCA25A903AFE001FF00101F891
38E0007FD807E0163E49013F141E5B48C75BA2001E147FA2001C4B131C123C003814FFA2
007892C7FC12704A153C00F01738485CC716001403A25DA21407A25DA2140FA25DA2141F
A25DA2143FA25DA2147FA25DA214FFA292C9FCA25BA25CA21303A25CEB0FFE003FB67E5A
A2383D71BC41>I<277FFFFE01B500FC90B512E0B5FCA20003902680000790C7380FFC00
6C90C701FCEC07F049725A04035EA26350C7FCA20407150EA2040F5D1A3C041F15386216
3B6216734F5A6D14E303014B5A6C15C303034BC8FC1683DB0703140E191E030E151C6103
1C7F61ED380161157003F04A5A15E002014B5A15C0DA03804AC9FC60DA0700140E60140E
605C029C5D14B8D97FF85D5C715A5C4A5DA24A92CAFC5F91C7FC705A137E5F137C5F1378
01705D53406EBD5B>87 D<130C131C137813E0EA01C013801203EA0700120E120C121C12
181238123012701260A212E012CFEAFFC0A61380EA7F00123C0E1C6EBE1C>96
D<147E49B47E903907C1C38090391F80EFC090383F00FF017E137F4914804848133F485A
A248481400120F5B001F5C157E485AA215FE007F5C90C7FCA21401485C5AA21403EDF038
5AA21407EDE078020F1370127C021F13F0007E013F13E0003E137FECF3E1261F01E313C0
3A0F8781E3803A03FF00FF00D800FC133E252977A72E>I<EB1FC0EA0FFF5CA2EA003FA2
91C7FCA25BA2137EA213FEA25BA21201A25BA21203A25B147E3907F1FF809038F783E090
38EF01F013FE390FF800F8A24913FC49137C485A157E5B15FE123FA290C7FCA248130115
FC127EA2140300FE14F85AA2EC07F0A215E048130F15C0141F15800078EB3F00127C147E
003C5B383E01F8381E03E06C485A6CB4C7FCEA01F81F4076BE2A>I<EC1FE0ECFFF89038
03F03E903807C00F90381F8007D93F001380017E131F49137F485A485A000715005B000F
147E484890C7FCA2485AA3127F90C9FCA35A5AA6481403007E5C5D151E003E5C5D6C5CEC
03E0390F800F802603E07EC7FC3801FFF838003FC0212977A72A>I<EE3F80ED1FFF1700
A2ED007FA2167EA216FEA25EA21501A25EA21503A25EA21507A25E147E903801FF8F9038
07C1CF90391F80EFC090383F00FF017E137F5B48486D5A485AA2485A000F92C7FC5B001F
5CA24848137EA215FE127F90C75AA214015A485CA2140316384814F0A21407167891380F
E070127C021F13F0007E013F5B003E137FECF3E1261F01E35B3A0F8781E3802703FF00FF
C7FCD800FC133E294077BE2E>I<EC3F80903801FFE0903807E0F890381F803CEB3E0001
FC131E485A485A12074848133E49133C121F4848137C15F8EC03F0397F000FE0ECFF80B5
EAFC0014C048C8FCA45AA61506150E151E007C143C15786C14F0EC01E06CEB07C0390F80
1F003807C0FC3801FFF038007F801F2976A72A>I<167C4BB4FC923807C78092380F83C0
ED1F87161FED3F3FA2157EA21780EE0E004BC7FCA414015DA414035DA30103B512F8A390
260007E0C7FCA3140F5DA5141F5DA4143F92C8FCA45C147EA414FE5CA413015CA4495AA4
495AA4495A121E127F5C12FF49C9FCA2EAFE1EEAF83C1270EA7878EA3FE0EA0F802A5383
BF1C>I<EC03F0EC0FFC91383E0E1C9138FC077E903901F003FE1303903807E001D90FC0
13FCEB1F80A2EB3F004914F8137E01FE1303A2484814F0A2150712034914E0A2150F1207
4914C0A2151FA216805B153F1203ED7F006D5BA200015B0000495A9038F80F7E90387C1E
FEEB1FF8903807E0FC90C7FC1401A25DA21403A25D001C1307007F5C48130F5D4A5A4AC7
FC48137E00F85B387C03F0381FFFC0D803FEC8FC273B7CA72A>I<EB01FC13FF5CA21303
A25CA21307A25CA2130FA25CA2131FA25CA2133FA291C8FCEC03F890387F0FFE91383E0F
80D97E7813C0ECE007D9FFC013E014801400A2485A5BA25B0003140F16C05BA20007141F
16805BA2000F143F16005B5D001F147EEDFE074913FCA2003F0101130FEDF80E1300161E
48ECF01CA2007E1538A200FE1570020013E048EC7FC00038EC1F0028407ABE2E>I<1478
EB01FCA21303A314F8EB00E01400AD137C48B4FC38038F80EA0707000E13C0121E121CEA
3C0F1238A2EA781F00701380A2EAF03F140012005B137E13FE5BA212015BA212035B1438
120713E0000F1378EBC070A214F0EB80E0A2EB81C01383148038078700EA03FEEA00F816
3E79BC1C>I<EB01FC13FF5CA21303A25CA21307A25CA2130FA25CA2131FA25CA2133FA2
91C8FCED03E049EB0FF8ED3C3C017EEB707CEDE1FC9038FE01C1EC03839038FC0703140E
0001011C13F891383800E0494813001460000313E0EBF9C0EBF78001FEC8FC1207EBFFE0
EBE7F8EBE0FE000F137F6E7EEBC01F6E7E121F16701380A2003F15F0021F13E001001380
A248148116C0007EEB0F83168000FE14879138078F0048EB03FE0038EB00F826407ABE2A
>107 D<EB07F0EA03FF14E0A2EA000FA214C0A2131FA21480A2133FA21400A25BA2137E
A213FEA25BA21201A25BA21203A25BA21207A25BA2120FA25BA2121FA25BA2123FA290C7
FCA25A1307127EA2EAFE0F130E12FCA2131E131CA2EA7C381378EA3C70EA1FE0EA078014
4079BE17>I<D801F0D93F80137F3D07FC01FFE003FFC03D0F3E07C1F80F83F03D0E1F0F
00FC1E01F8001E011C90387C3800001C49D97E707F003C01F05C0038157F4A5C26783FC0
5C12704A91C7FC91C7127E00F003FE1301494A5CEA007EA20301140301FE5F495CA20303
1407000160495C180F03075D0003051F13E0494A1480A2030FEC3F810007F001C0495CA2
031F91383E0380120F494AEC0700A2033F150E001FEF1E1C4991C7EA0FF80007C7000EEC
03E0432979A74A>I<D801F0EB3F803A07FC01FFE03A0F3E07C1F83A0E1F0F00FC001E01
1C137C001C49137E003C13F012385C38783FC012705C91C7FC00F015FE495CEA007EA215
0101FE5C5BA2150300015D5B15075E0003020F13704914C0A2031F13F00007ED80E05B16
81EE01C0120F49EC0380A2EE0700001FEC0F0E49EB07FC0007C7EA01F02C2979A733>I<
EC1FC0ECFFF8903803F07C90380FC01FEB1F8090393F000F80017E14C0491307484814E0
485A12075B000F15F0485AA2485AA2ED0FE0127F90C7FCA2151F4815C05AA2ED3F80A2ED
7F00A248147E007C5C007E13015D4A5A003E495A6C495A4A5A260F803EC7FC3807C0FC38
01FFF038003F80242977A72E>I<903903E001F890390FF807FE903A1E7C1E0F80903A1C
3E3C07C0013C137801389038E003E0EB783F017001C013F0ED80019038F07F0001E015F8
147E1603000113FEA2C75AA20101140717F05CA20103140F17E05CA20107EC1FC0A24A14
80163F010F15005E167E5E131F4B5A6E485A4B5A90393FB80F80DA9C1FC7FCEC0FFCEC03
E049C9FCA2137EA213FEA25BA21201A25BA21203A2387FFFE0B5FCA22D3A80A72E>I<02
7E1360903901FF81E0903807C1C390391F80E7C090383F00F7017E137F5B4848EB3F8048
5AA2485A000F15005B121F5D4848137EA3007F14FE90C75AA3481301485CA31403485CA3
14074A5A127C141F007E133F003E495A14FF381F01EF380F879F3903FF1F80EA00FC1300
143F92C7FCA35C147EA314FE5CA21301130390B512F05AA2233A77A72A>I<D801F013FC
3A07FC07FF803A0F3E0F03C0260E1F1C13E0001EEB380F001C1370003CEBE01F123814C0
D8783F14C00070903880070092C7FC91C8FC12F05BEA007EA313FE5BA312015BA312035B
A312075BA3120F5BA3121F5B0007C9FC232979A726>I<EC7F80903801FFE0903807C0F8
90381F003C013E131C013C131E017C133E49137E15FEA2000114FCA215706D13007FEBFF
C014FC6C13FF15806D13C06D13E0010F13F01300140F14071403120C123F387F80011403
D8FF0013E0A300FCEB07C000F0EB0F8012700078EB1F006C133C381F01F83807FFE0C690
C7FC1F297AA725>I<EB01C0EB03F01307A25CA2130FA25CA2131FA25CA2133FA291C7FC
A2007FB51280B6FC1500D8007EC7FC13FEA25BA21201A25BA21203A25BA21207A25BA212
0FA25BA2121F141C1380A2003F133C1438EB0078147014F05C495AEA1F03495A6C48C7FC
EA07FCEA01F0193A78B81E>I<137C48B4141C26038F80137EEA0707000E7F001E15FE12
1CD83C0F5C12381501EA781F007001805BA2D8F03F1303140000005D5B017E1307A201FE
5C5B150F1201495CA2151F0003EDC1C0491481A2153F1683EE0380A2ED7F07000102FF13
005C01F8EBDF0F00009038079F0E90397C0F0F1C90391FFC07F8903907F001F02A2979A7
31>I<017CEB01C048B4EB07F038038F80EA0707000E01C013F8121E001C1403EA3C0F00
38EC01F0A2D8781F130000705BA2EAF03F91C712E012005B017E130116C013FE5B150300
0115805BA2ED07001203495B150EA25DA25D1578000114706D5B0000495A6D485AD97E0F
C7FCEB1FFEEB03F0252979A72A>I<017C167048B491387001FC3A038F8001F8EA070700
0E01C015FE001E1403001CEDF000EA3C0F0038177C1507D8781F4A133C00701380A2D8F0
3F130F020049133812005B017E011F14784C137013FE5B033F14F0000192C712E05BA217
0100034A14C049137E17031880A2EF070015FE170E00010101141E01F86D131C0000D903
9F5BD9FC076D5A903A3E0F07C1E0903A1FFC03FFC0902703F0007FC7FC372979A73C>I<
903903F001F890390FFC07FE90393C1E0E0F9026780F1C138001F0EBB83FD801E013F890
39C007F07FEA0380000714E0D9000F140048151C000E4AC7FCA2001E131FA2C75BA2143F
92C8FCA35C147EA314FE4A131CA30101143C001E1538003F491378D87F811470018314F0
00FF5D9039077801C039FE0F7C033A7C0E3C078027783C1E1EC7FC391FF80FFC3907E003
F029297CA72A>I<137C48B4143826038F8013FCEA0707000E7F001E1401001C15F8EA3C
0F12381503D8781F14F000701380A2D8F03F1307020013E012005B017E130F16C013FE5B
151F1201491480A2153F000315005BA25D157EA315FE5D00011301EBF803000013079038
7C1FF8EB3FF9EB07E1EB00035DA21407000E5CEA3F80007F495AA24A5AD8FF0090C7FC14
3E007C137E00705B387801F0383803E0381E0FC06CB4C8FCEA03F8263B79A72C>I<D901
F01370D907FC13F0010F14E090381FFE0190393FFF03C049EB838090387C0FCF9039F803
FF009038F0007E49133C000114386C48137890C75A4A5A4A5A4A5A4AC7FC141E5C5C5C49
5A495A495A49C8FC131E4913075B5B48485B4848131E485A01F05BD80FFE137C391F1F81
F8383E0FFFD83C075B486C5B00705CD8F00190C7FC38E0007C24297BA725>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fs cmbx12 14.4 65
/Fs 65 123 df<922601FFFC903801FFE0033F9026FF801F13F84AB6D8E07F13FE020F03
F9B6FC023FD9C00FB500C0138091277FFC0003D9FE0113C0902601FFE049495A49494949
4813E04990C714F049484A13E0495A19C0495A7413C0017F17804A6E6E1380719138007E
007192C7FCAEBCFCA526007FF8C7000301C0C8FCB3B3A7007FB5D8F803B612F0A553547D
D34E>11 D<EEFFFC031FEBFF804AB612E0020781021F9038C00FF8913A7FFE0003FCDAFF
F0EB00FE4949EB03FF4901805B4990C7487F49485CA2495A4D7F013F6F5B5CA37190C7FC
715AEF01F894C9FCA90403B512C0BAFCA526003FFCC7120783B3B3A6003FB5D8FC03B612
C0A542547DD34B>I<EA07F0EA1FF8EA3FFE487EA2B5128014C0A314E0A37EA27EEA1FFD
EA07F1EA0001A2130314C0A313071480130FA214005B133EA25B5B485A1203485A485A48
5A90C7FC120C132876D225>39 D<EA07F0EA1FF8487E487E7FB5FC1480A314C0A37EA27E
7EEA07F3EA0003A213071480A3130F1400A25B131E133E133C137C5BA2485A485A485A48
5A48C7FC121E120C1228769025>44 D<B712F0AB240B7F9F2D>I<EA07F0487E487E487E
487EB51280A76C13006C5A6C5A6C5A6C5A1111769025>I<EF01E01703EF07F0A2170FA2
EF1FE0A218C0173FA2EF7F80A218005FA24C5AA25F1603A24C5AA25F160FA24C5AA25F16
3FA24C5AA294C7FC5EA24B5AA25E1503A24B5AA25E150FA24B5AA25E153FA24B5AA293C8
FC5DA24A5AA25D1403A25D1407A24A5AA25D141FA24A5AA25D147FA24AC9FCA25C1301A2
495AA25C1307A2495AA25C131FA2495AA25C137FA249CAFCA25B1201A2485AA25B1207A2
485AA25B121FA2485AA25B127FA248CBFCA25AA2127CA2347879D943>I<913803FFC002
3F13FC91B6FC010315C0010F018113F0903A1FFC003FF849486D7E49486D7E49486D7E48
496D138048496D13C0A24817E04890C813F0A34817F8A24817FC49157FA3007F17FEA600
FF17FFB3A5007F17FEA6003F17FCA26D15FFA26C17F8A36C17F0A26C6D4913E0A26C6D49
13C06C17806E5B6C6D4913006D6C495AD91FFCEB3FF8903A0FFF81FFF06D90B55A010115
80D9003F01FCC7FC020313C0384F7BCD43>I<157815FC14031407141F14FF130F0007B5
FCB6FCA2147F13F0EAF800C7FCB3B3B3A6007FB712FEA52F4E76CD43>I<EC3FFE0103B5
12E0010F14FC013F14FF90B712C048D9C07F7F2703FE000F13F8D807F801037FD80FE06D
7F48486D7F48488001F01680486C6E13C07F486C6E13E07FA27013F0A56C5AA26C5AEA0F
F0EA03C0C914E05EA218C05E1880A24C13005F4C5A4B5B5F4B5B5F4B5B4B90C7FC4B5A5E
4B5AED7FE04B5A4A5B4A48C8FC4A5A5D4A48EB01F04A5AEC3F804AC7FC02FEEC03E0495A
495A495A495AD91F80140749C8FC013E150F017FB7FC90B812C05A5A5A5A5A5A5AB9FC18
80A4344E79CD43>I<91380FFFC091B512FC0107ECFF80011F15E090263FF8077F9026FF
800113FC4848C76C7ED803F86E7E491680D807FC8048B416C080486D15E0A4805CA36C17
C06C5B6C90C75AD801FC1680C9FC4C13005FA24C5A4B5B4B5B4B13C04B5BDBFFFEC7FC91
B512F816E016FCEEFF80DA000713E0030113F89238007FFE707E7013807013C018E07013
F0A218F8A27013FCA218FEA2EA03E0EA0FF8487E487E487EB57EA318FCA25E18F891C7FC
6C17F0495C6C4816E001F04A13C06C484A1380D80FF84A13006CB44A5A6CD9F0075BC690
B612F06D5D011F1580010302FCC7FCD9001F1380374F7ACD43>I<177C17FEA216011603
1607160FA2161F163F167FA216FF5D5DA25D5DED1FBFED3F3F153E157C15FCEC01F815F0
EC03E01407EC0FC01580EC1F005C147E147C5C1301495A495A5C495A131F49C7FC133E5B
13FC485A5B485A1207485A485A90C8FC123E127E5ABA12C0A5C96C48C7FCAF020FB712C0
A53A4F7CCE43>I<D80380150ED807E0157E01FEEC03FED9FFF0137F91B65A5F5F5F5F5F
94C7FC5E5E16F016C093C8FC15F801E190C9FC01E0CAFCABEC0FFF027F13F001E3B512FE
01E76E7E9026FFF8077FDAC0017F49C713F8496E7E49143F4981496E7E6C481680C9FC18
C08218E0A418F0A3EA0FE0487E487E487E487EA418E0A35B6C484A13C05B491680003EC8
5A003F17006C6C4A5A6D5D6C6C4A5AD807F8495BD803FE01075B2701FFC03F5B6C90B65A
013F4AC7FC6D14F8010314C09026007FF8C8FC344F79CD43>I<ED0FFF92B512E0020780
021F14FC91397FFE03FE903A01FFF0007F4901C0EB3F804990C7121F4948EC7FC0494814
FF49484913E049485B01FF5C485BA2485B5AA2486F13C04A6D1380486F1300177E94C7FC
5AA291CAFC5AA21508913801FFF8020713FFB54814C04A14F04AC66C7E023C6D7E4A6D7E
4A6D7E7013804A15C0A24A15E07013F05C18F8A491C714FCA37EA67EA46C17F880A27E18
F06C5D18E06C6D15C07E6E4913806C6D15006D6C495A6D6CEB7FFC6DB448485A6D90B55A
010315C0010092C7FC023F13FC020713C0364F7ACD43>I<121F7F7FEBFF8091B81280A4
5A1900606060A2606060485F0180C86CC7FC007EC95A4C5A007C4B5A5F4C5A160F4C5A48
4B5A4C5A94C8FC16FEC812014B5A5E4B5A150F4B5AA24B5AA24B5A15FFA24A90C9FCA25C
5D1407A2140FA25D141FA2143FA4147F5DA314FFA55BAC6D5BA2EC3FC06E5A395279D043
>I<913807FFC0027F13FC0103B67E010F15E090261FFC0113F8903A3FE0003FFCD97F80
EB0FFE49C76C7E48488048486E1380000717C04980120F18E0177FA2121F7FA27F7F6E14
FF02E015C014F802FE4913806C7FDBC00313009238F007FE6C02F85B9238FE1FF86C9138
FFBFF06CEDFFE017806C4BC7FC6D806D81010F15E06D81010115FC010781011F81491680
EBFFE748018115C048D9007F14E04848011F14F048487F48481303030014F8484880161F
4848020713FC1601824848157F173FA2171FA2170FA218F8A27F007F17F06D151FA26C6C
ED3FE0001F17C06D157F6C6CEDFF806C6C6C010313006C01E0EB0FFE6C01FCEBFFFC6C6C
B612F06D5D010F1580010102FCC7FCD9000F13C0364F7ACD43>I<91380FFF8091B512F8
010314FE010F6E7E4901037F90267FF8007F4948EB3FF048496D7E484980486F7E484980
824817805A91C714C05A7013E0A218F0B5FCA318F8A618FCA46C5DA37EA25E6C7F6C5DA2
6C5D6C7F6C6D137B6C6D13F390387FF803011FB512E36D14C30103028313F89039007FFE
03EC00401500A218F05EA3D801F816E0487E486C16C0487E486D491380A218005E5F4C5A
91C7FC6C484A5A494A5A49495B6C48495BD803FC010F5B9027FF807FFEC7FC6C90B55A6C
6C14F06D14C0010F49C8FC010013F0364F7ACD43>I<91B5FC010F14F8017F14FF90B712
C00003D9C00F7F2707FC00017FD80FE06D7F48486E7E48C87FD87FE06E7E7F7F486C1680
A66C5A18006C485C6C5AC9485A5F4B5B4B5B4B5B4B5B4B90C7FC16FC4B5A4B5A16C04B5A
93C8FC4A5A5D14035D5D14075DA25D140FA25DAB91CAFCAAEC1FC04A7EECFFF8497FA249
7FA76D5BA26D5BEC3FE06E5A315479D340>63 D<171F4D7E4D7EA24D7EA34C7FA24C7FA3
4C7FA34C7FA24C7FA34C8083047F80167E8304FE804C7E03018116F8830303814C7E0307
8116E083030F814C7E031F81168083033F8293C77E4B82157E8403FE824B800201835D84
0203834B800207835D844AB87EA24A83A3DA3F80C88092C97E4A84A2027E8202FE844A82
010185A24A820103854A82010785A24A82010F855C011F717FEBFFFCB600F8020FB712E0
A55B547BD366>65 D<BA12C019FEF1FFC01AF01AFCD8000701F0C7000313FFDE007F7F73
7F070F7F737F878587858785A287A84F5BA263616361634F5B4F5B077F90C7FC4E485A06
0713F892B812E097C8FC861AF003F0C7000313FE9539003FFF80070F13E0737F07017F87
737F747E1C807413C0A27413E0A31CF0A386A362A31CE0A2621CC0A250138097B5FC1C00
4F5B19074F5B073F13F04EB55ABC128098C7FC1AF81AC007F8C8FC54527CD160>I<9326
01FFFCEC01C0047FD9FFC013030307B600F81307033F03FE131F92B8EA803F0203DAE003
EBC07F020F01FCC7383FF0FF023F01E0EC0FF94A01800203B5FC494848C9FC4901F88249
49824949824949824949824990CA7E494883A2484983485B1B7F485B481A3FA24849181F
A3485B1B0FA25AA298C7FC5CA2B5FCAE7EA280A2F307C07EA36C7FA21B0F6C6D1980A26C
1A1F6C7F1C006C6D606C6D187EA26D6C606D6D4C5A6D6D16036D6D4C5A6D6D4C5A6D01FC
4C5A6D6DEE7F806D6C6C6C4BC7FC6E01E0EC07FE020F01FEEC1FF80203903AFFE001FFF0
020091B612C0033F93C8FC030715FCDB007F14E0040101FCC9FC525479D261>I<BA7E19
FCF1FF801AF01AFCD8000701F0C7000F13FF060014C0071F7F070713F807017F737F747E
747F747F86747F747F8886888688A2757EA31D8087A21DC0A51DE0A387A963A31DC0A51D
80A2631D00A3515AA2646264505B6264505B505B5090C7FCF2FFFE4F5B07075B071F5B96
B512C0060F91C8FCBB5A1AF01AC007FCC9FC19805B527CD167>I<BC1280A5D8000701F8
C7000114C0F0001F19071901851A7F1A3F1A1FA2F20FE0A21A07A31A03A318F81BF01A01
A497C7FC1701A317031707170F177F92B6FCA59238F8007F170F170717031701A317001B
3EA31B7CA395C8FCA21BFCA21BF8A21A01A31A031BF01A071A0FA21A1F1A3FF27FE0F101
FF1907191F0603B5FCBCFCA21BC0A34F517CD058>I<BB12FEA5D8000701F8C700077FF0
007F191F190785858586861B80A21A1FA31A0FA41BC006F81307A497C7FCA31701A31703
1707170F177F92B6FCA59238F8007F170F170717031701A31700A795C9FCB3B812F8A54A
517CD055>I<932601FFFCEC01C0047FD9FFC013030307B600F81307033F03FE131F92B8
EA803F0203DAE003EBC07F020F01FCC7383FF0FF023F01E0EC0FF94A01800203B5FC4948
48C9FC4901F8824949824949824949824949824990CA7E494883A2484983485B1B7F485B
481A3FA24849181FA3485B1B0FA25AA298C8FC5CA2B5FCAE6C057FB712E0A280A36C94C7
003FEBC000A36C7FA36C7FA27E6C7FA26C7F6C7FA26D7E6D7F6D7F6D6D5E6D7F6D01FC93
B5FC6D13FF6D6C6D5C6E01F0EC07FB020F01FEEC1FF10203903AFFF001FFE0020091B6EA
C07F033FEE001F030703FC1307DB007F02E01301040149CAFC5B5479D26A>I<B8D8C003
B8FCA5D8000701F8C9001FEBE000B3AE92BAFCA503F8C9121FB3B1B8D8C003B8FCA56052
7CD169>I<B812C0A5D8000701F8C7FCB3B3B3B2B812C0A52A527CD132>I<B800C091B612
F8A5D8000701F8C90003EBF8009738007F8051C7FC505AF203F8F20FF0505A505A505A50
C8FCF101FCF107F84F5A4F5A4F5A4F5A07FEC9FCF003FC4E5A4E5A4E5A4E5A4E5ADD01FE
CAFC4D5A4D5A4D5A4D7E173F4D7E4C487E4C7F5E4C804C804C80EEFF7F9226F9FE3F7FDB
FBFC809226FFF81F7F4C7EDCC0077F0480804C7E4B6D804B6D804B8284727F727F868472
7F727F8784728087737F85737F87737F85737F88857380747F888697B512FCB800C0013F
ECFFFEA55F527CD169>75 D<B812F8A5D8000701F8CAFCB3B3A91A7CA41AFC1AF8A51901
A31903A219071AF0190FA2191F193F197F19FF180360183F4DB5FCBB12E0A546527CD151
>I<B600FC073FB512FE6F61A26F96B6FCA2D80007F5C00070EF01EFA202EF6DEF03CFA2
02E76DEF078FA202E36DEF0F0FA202E16D171EA302E06D173CA26F6C1778A26F6C17F0A2
6F6DED01E0A26F6DED03C0A36F6DED0780A26F6DED0F00A26F6D151EA26F6D5DA3706C5D
A2706C5DA2706D495AA2706D495AA2706D495AA3706D49C7FCA2706D131EA2706D5BA271
6C5BA3716C5BA271EB81E0A271EBC3C0A271EBE780A27101FFC8FCA3715BA2715BA2725A
A2725AA2D93FFC6F5AB74DB712FEA2725AA2725A77527CD180>I<B600FC93B7FC8181A2
82D800076E9239003FFC0070EE07E08282A28202EF7F02E77F02E380A202E18002E0806F
7F6F7F6F7FA26F7F6F7F6F806F80A26F80707F707F707F707FA2707F7080708070808583
717F717F717F717FA27114807114C07114E07213F07213F8A27213FC7213FE7213FF7214
87A27214C77214E77313F77313FF85A285858585A28586868686A286868686A2D93FFC18
7FB7173F1B1F1B0F1B07755A60527CD169>I<93380FFFC00303B6FC031F15E092B712FC
0203D9FC0013FF020F01C0010F13C0023F90C7000313F0DA7FFC02007F494848ED7FFE49
01E0ED1FFF49496F7F49496F7F4990C96C7F49854948707F4948707FA24849717E48864A
83481B804A83481BC0A2481BE04A83A2481BF0A348497113F8A5B51AFCAF6C1BF86E5FA4
6C1BF0A26E5F6C1BE0A36C6D4D13C0A26C6D4D1380A26C1B006C6D4D5A6E5E6C626D6C4C
5B6D6D4B5B6D6D4B5B6D6D4B5B6D6D4B5B6D6D4B90C7FC6D6D4B5A6D01FF02035B023F01
E0011F13F0020F01FC90B512C0020390B7C8FC020016FC031F15E0030392C9FCDB001F13
E0565479D265>I<BAFC19F819FF1AE086D8000701F0C7001F13FC060113FF726C138073
13C0070F13E01BF0857313F81BFCA27313FEA41BFFA81BFEA31BFC61A21BF84F13F04F13
E0614F13C04F13004E485A061F5B92B812F01AC04FC7FC19E003F8CBFCB3AEB812C0A550
527CD15C>I<93380FFFC00303B6FC031F15E092B712FC0203D9FC0013FF020F01C0010F
13C0023F90C7000313F0DA7FFC02007F902601FFF0ED3FFE49496F7E49496F7F49496F7F
4990C96C7F4948707F4948707F01FF854A177F48864849717EA24849711380A2481BC04A
83481BE0A24A83481BF0A3481BF8A291CB7EA3B51AFCAF6C1BF8A26E5FA36C1BF0A36C6D
4D13E0A36C1BC06E5F6C1B806E5F6CDB01FE16006C6D902607FF80495A4C13E06C6D013F
6D495A017F91267F03F85C6D6C90277C00FC015B6D6C49D97E035B6D01806E485B6D6D48
D91F8F5B6D01E0039F90C7FC6D01F06EB45A6DD9FCF85DDA3FFF6E13F0020F6D4913C002
0301FF90B5C8FC020091B512FC031F180C0303181EDB001FEBE3FE93C7EA01FF74133E74
137E7413FEF2F8077290B5FC1CFCA285A21CF8A2851CF07314E0A27314C0731480731400
735B9638007FF8F21FE0576A79D265>I<B912F0F0FF8019F819FF1AC0D8000701F0C714
F0060F7F060113FE727F737F737F85737F87A2737FA387A863A2616363A24F5B4F5B4F90
C8FC4F5A06035B060F13F095B512C092B8C9FC19F819E019F89226F0000313FE9439007F
FF80727F727F727F727F727F8684A28684A787A71D1C75133EA38575137E73157C7513FC
731401B86C6D9038F803F807039038FE07F07390B512E0736C14C0080F1400CEEA7FFC5F
537CD164>I<91260FFF80130791B500F85B010702FF5B011FEDC03F49EDF07F9026FFFC
006D5A4801E0EB0FFD4801800101B5FC4848C87E48488149150F001F824981123F498100
7F82A28412FF84A27FA26D82A27F7F6D93C7FC14C06C13F014FF15F86CECFF8016FC6CED
FFC017F06C16FC6C16FF6C17C06C836C836D826D82010F821303010082021F1680140003
0F15C0ED007F040714E01600173F050F13F08383A200788200F882A3187FA27EA219E07E
A26CEFFFC0A27F6D4B13806D17006D5D01FC4B5A01FF4B5A02C04A5A02F8EC7FF0903B1F
FFC003FFE0486C90B65AD8FC0393C7FC48C66C14FC48010F14F048D9007F90C8FC3C5479
D24B>I<003FBC1280A59126C0003F9038C0007F49C71607D87FF8060113C001E0844919
7F49193F90C8171FA2007E1A0FA3007C1A07A500FC1BE0481A03A6C994C7FCB3B3AC91B9
12F0A553517BD05E>I<B800C00103B612FCA5D8000701F8CAEBF000F31F80B3B3B11B3F
A26D97C7FC81637F1B7E6D6D17FE505A6E7E505A6E6D15076E4D5A6E6D4B5A6E6D4B5A6E
01F84B5A6E6DDA03FFC8FC6E6CB46CEB0FFE6F9039F001FFF8030F90B65A030316C0DB00
7F92C9FC040F14F8DC007F13805E537CD167>I<B700FE031FB512FEA5D8001F01F0CA38
3FFE00F307F06D626F170F6D62811B1F6D6D601B3F6D97C7FC6F5F6D197E821BFE6E6D5E
1A016E6D5E1A036E60701507A26E6D5E1A0F6E6D5E1A1F6E6070153FA26E6D93C8FC626E
6E147E1AFE6F5E711301A26F6D5C19036F6D5C19076F5E71130FA26F6D5C191F6F6D5C19
3F6F93C9FC715BA26FEC807E19FE706D5A18C1705C18E3705C18F318F770EBFFE0A2705C
A2705CA37091CAFCA2705BA2715AA3715AA2715AA2715A715A5F537DD166>I<B8030FB6
1280A5D8000F01FCCA003F90C7FC6FEF07F86D6D606D4F5A826D6E4C5A6D4F5A826E6D4C
C8FC6E18FE826E6D4B5A6E4D5A826E6D4B5A6E4D5A836E6E4A5A6E4D5A836F6D4AC9FC6F
5E715C6F6D495A6F1503715C6F6D495A6F150F06805B6F6E485A6F153F06E05B706D48CA
FC705C725A70EBFDFC7013FF61705C82705C6182715B96CBFCB3AA030FB712F8A561527E
D166>89 D<EC7FFF0107B512F0013F14FE90B77E48D9E00F7F2703FE000113F0486C6D7F
6EEB3FFC48826E131F83707FA36C496D7FA26C90C7FC6C5AC9FCA6037FB5FC020FB6FC91
B7FC01071487013FEBF0074913803901FFFC004813F0485B485B485B4890C7FC5A5BA248
5AA45EA26D5C007F151D163D6C6C02797F6C6D01F113F86C9026C003E1EBFFE06C9026F8
1FC014F06C90B5487EC6ED001F011F01FC010713E0010101E090C8FC3C387CB641>97
D<EB3FF0B5FCA51203C6FCB3A4923801FFE0030F13FE033FEBFFC092B612F002F301017F
913AF7F8003FFEDAFFE0EB0FFF03806D7F92C76C7F4A6E7F4A824A6E7FA2727EA285A285
84A31A80AC1A00A44E5AA36118FF616E4A5BA26E4A5B6E4A5B6F495BDACFC04990C7FCDA
87F0EB7FFC913A03FE03FFF849C6B612E0496D148049011F01FCC8FC90C7000313C04154
7BD24B>I<913801FFF8021FEBFF8091B612F0010315FC010F9038C00FFE903A1FFE0001
FFD97FFC491380D9FFF05B4817C048495B5C5A485BA2486F138091C7FC486F1300705A48
92C8FC5BA312FFAD127F7FA27EA2EF03E06C7F17076C6D15C07E6E140F6CEE1F806C6DEC
3F006C6D147ED97FFE5C6D6CEB03F8010F9038E01FF0010390B55A01001580023F49C7FC
020113E033387CB63C>I<4DB47E0407B5FCA5EE001F1707B3A4913801FFE0021F13FC91
B6FC010315C7010F9038E03FE74990380007F7D97FFC0101B5FC49487F4849143F484980
485B83485B5A91C8FC5AA3485AA412FFAC127FA36C7EA37EA26C7F5F6C6D5C7E6C6D5C6C
6D49B5FC6D6C4914E0D93FFED90FEFEBFF80903A0FFFC07FCF6D90B5128F0101ECFE0FD9
003F13F8020301C049C7FC41547CD24B>I<913803FFC0023F13FC49B6FC010715C04901
817F903A3FFC007FF849486D7E49486D7E4849130F48496D7E48178048497F18C0488191
C7FC4817E0A248815B18F0A212FFA490B8FCA318E049CAFCA6127FA27F7EA218E06CEE01
F06E14037E6C6DEC07E0A26C6DEC0FC06C6D141F6C6DEC3F806D6CECFF00D91FFEEB03FE
903A0FFFC03FF8010390B55A010015C0021F49C7FC020113F034387CB63D>I<ED3FFC02
03B5FC020F14C0023F14E09139FFF81FF0499038C03FF849EB807F49903800FFFC495A49
5AA2495AA2EE7FF8495AEE3FF0EE0FC093C7FCAEB712E0A526007FF8C8FCB3B3A7007FB5
12FEA52E547CD329>I<DA3FFF14FF0103B5D8F00713C0010FDAFC1F13E0013FECFF7F90
267FFC0F9038FF9FF09026FFE001EBF83F48496C13E0484990387FF01F4890C7D83FF813
E0489338FC0FC0F0078048486E6CC7FCA2003F82A9001F5EA26C6C4A5AA26C5E6C6D495A
6C6D495A6C6D485BDAFC0F5B4890B6C8FCD803EF14FC01C314F02607C03F90C9FC91CBFC
A2120FA37FA213F813FE90B7FC6C16F817FF18C06C836C836C836D828448B9FC12074848
C700031480D81FF8EC003F4848150748486F13C083485A83A56D5D007F18806D5D003F18
006C6C4B5AD80FFEED1FFC6C6C6CEC7FF86C01E049485A6C01FE011F5B6C6CB71280010F
03FCC7FC010115E0D9000F01FCC8FC3C4F7CB543>I<EB3FF0B5FCA51203C6FCB3A4EE1F
FC93B512C0030314F0030F8092391FE07FFC92393F001FFE037C8003F07FDAF1E081ECF3
C0DAF7807F8502FFC7FC5CA25CA45CB3ACB6D8F807B612C0A542537BD24B>I<137F497E
000313E0487FA2487FA76C5BA26C5BC613806DC7FC90C8FCADEB3FF0B5FCA512017EB3B3
A6B612E0A51B547BD325>I<EB3FF0B5FCA51203C6FCB3A54CB512F8A59339003FFE00EF
1FF0EF3FC04D5A4DC7FCEE03FEEE07F84C5A4C5AEE7FC04CC8FC4B5A4B5AED0FF8ED1FE0
4B7E4B7EECF1FF02F37F02F77F91B6FC83159F030F7F02FE80DAF8077F4A7E6F7F6F7F83
707E82707F84707F707F82707F84707F177F717E4D13C0B6D8F003B6FCA540537CD247>
107 D<EB3FF0B5FCA512017EB3B3B3B1B612F0A51C537BD225>I<D93FF0D91FFCEDFFE0
B591B500C0010713FE030302F0011F6D7E030F6E017F8092271FE07FFCD9FF037F922A3F
001FFE01F8007F0003027C9126FF03E080C602F06DD90780137FDAF1E0038FC77FDAF3C0
159EDAF7806D01BC143F07FC8102FFC75C4A5EA24A5EA44A5EB3ACB6D8F807B6D8C03FB5
12FEA567367BB570>I<D93FF0EB1FFCB591B512C0030314F0030F8092391FE07FFC9239
3F001FFE0003027C80C602F07FDAF1E081ECF3C0DAF7807F8502FFC7FC5CA25CA45CB3AC
B6D8F807B612C0A542367BB54B>I<913801FFE0021F13FE91B612C0010315F0010F9038
807FFC903A1FFC000FFED97FF86D6C7E49486D7F48496D7F48496D7F4A147F48834890C8
6C7EA24883A248486F7EA3007F1880A400FF18C0AC007F1880A3003F18006D5DA26C5FA2
6C5F6E147F6C5F6C6D4A5A6C6D495B6C6D495B6D6C495BD93FFE011F90C7FC903A0FFF80
7FFC6D90B55A010015C0023F91C8FC020113E03A387CB643>I<903A3FF001FFE0B5010F
13FE033FEBFFC092B612F002F301017F913AF7F8007FFE0003D9FFE0EB1FFFC602806D7F
92C76C7F4A824A6E7F4A6E7FA2717FA285187F85A4721380AC1A0060A36118FFA2615F61
6E4A5BA26E4A5B6E4A5B6F495B6F4990C7FC03F0EBFFFC9126FBFE075B02F8B612E06F14
80031F01FCC8FC030313C092CBFCB1B612F8A5414D7BB54B>I<912601FFE0EB0780021F
01F8130F91B500FE131F0103ECFF80010F9039F03FC03F499039800FE07F903A7FFE0003
F04948903801F8FF4849EB00FD4849147F4A805A4849805A4A805AA291C87E5AA35B12FF
AC6C7EA37EA2806C5EA26C6D5CA26C6D5C6C6D5C6C93B5FC6C6D5B6D6C5B6DB4EB0FEF01
0F9038C07FCF6D90B5120F010114FED9003F13F80203138091C8FCB1040FB61280A5414D
7CB547>I<90397FE003FEB590380FFF80033F13E04B13F09238FE1FF89139E1F83FFC00
03D9E3E013FEC6ECC07FECE78014EF150014EE02FEEB3FFC5CEE1FF8EE0FF04A90C7FCA5
5CB3AAB612FCA52F367CB537>I<903903FFF00F013FEBFE1F90B7FC120348EB003FD80F
F81307D81FE0130148487F4980127F90C87EA24881A27FA27F01F091C7FC13FCEBFFC06C
13FF15F86C14FF16C06C15F06C816C816C81C681013F1580010F15C01300020714E0EC00
3F030713F015010078EC007F00F8153F161F7E160FA27E17E07E6D141F17C07F6DEC3F80
01F8EC7F0001FEEB01FE9039FFC00FFC6DB55AD8FC1F14E0D8F807148048C601F8C7FC2C
387CB635>I<143EA6147EA414FEA21301A313031307A2130F131F133F13FF5A000F90B6
FCB8FCA426003FFEC8FCB3A9EE07C0AB011FEC0F8080A26DEC1F0015806DEBC03E6DEBF0
FC6DEBFFF86D6C5B021F5B020313802A4D7ECB34>I<D93FF8913801FFC0B50207B5FCA5
0003ED001FC61607B3AE5FA35FA2017F5D173B177B6D6C14F3DC01E313F06D6CD907C3EB
FFC0903A0FFFC03F836D90B51203010114FE6D6C13F8020701E091C7FC42377BB54B>I<
B600F00107B5FCA5000101F8C8EA7FE06C6DED3F00A2017F163E6E157E013F167C6E15FC
6D5E6F13016D5E8117036D5E6F13076D5E6F130F6D5E6F131F6D93C7FC815F6E6C133E17
7E023F147C6F13FC6E5C16816E5C16C3A26EEBE3E016E76E5C16FF6E5CA26E91C8FCA26F
5AA36F5AA26F5AA26F5AA26F5A6F5A40367DB447>I<B6D8E07FB5D8C003B512C0A50001
01F0C701F0C7381FF8006E027FED07E06C715DA26E023F150F017F705DA26E181F013F4B
6C92C7FC6E606D70143E94B5FC6F177E6D4A6E137C03C001F315FC6D715B160303E001E1
14016D020702E05B03F013C06D71485A160F03F8D9807F13076D05F85B93381F003F03FC
160F027F4902FC5BDBFE3E011F131F023F04FE90C8FC167EDBFF7C010F5B6E01FCECFF3E
4C6D137E6E5FA24C7F6E5F4C7F6E5FA24C7F6E5F4C147FA26E5F93C8123F6F5EA2033E6F
C9FC5A367DB461>I<007FB500F090387FFFFEA5C66C48C7000F90C7FC6D6CEC07F86D6D
5C6D6D495A6D4B5A6F495A6D6D91C8FC6D6D137E6D6D5B91387FFE014C5A6E6C485A6EEB
8FE06EEBCFC06EEBFF806E91C9FCA26E5B6E5B6F7E6F7EA26F7F834B7F4B7F92B5FCDA01
FD7F03F87F4A486C7E4A486C7E020F7FDA1FC0804A486C7F4A486C7F02FE6D7F4A6D7F49
5A49486D7F01076F7E49486E7E49486E7FEBFFF0B500FE49B612C0A542357EB447>I<B6
00F00107B5FCA5C601F8C8EA7FE06EED3F00A26D6C153E187E013F167C6E15FC6D5E6F13
016D5E6F13036D5E8117076D6D5C170F6D6D5C171F6D93C7FC6F5B027F143E6F137E023F
147C6F13FCA26E6D5A16816EEBC1F016C36E5C16E76E5C16FF6E5CA26E91C8FCA36F5AA2
6F5AA26F5AA26F5AA26F5AA35E150F5E151F93C9FC5DD81FC0133E486C137E486C137C48
6C13FC5D14015D14034A5A6C48485A49485A263FC07FCAFCEB81FE6CB45A6C13F000035B
C690CBFC404D7DB447>I<001FB8FC1880A3912680007F130001FCC7B5FC01F0495B495D
49495B495B4B5B48C75C5D4B5B5F003E4A90C7FC92B5FC4A5B5E4A5B5CC7485B5E4A5B5C
4A5B93C8FC91B5FC495B5D4949EB0F805B495B5D495B49151F4949140092C7FC495A485E
485B5C485E485B4A5C48495B4815074849495A91C712FFB8FCA37E31357CB43C>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Ft cmcsc10 10.95 34
/Ft 34 121 df<EB01FE90380FFFC090383F03F090387C00F849137C48487F48487F4848
EB0F80A2000F15C04848EB07E0A3003F15F0A290C712034815F8A64815FCB3A26C15F8A5
6C6CEB07F0A3001F15E0A36C6CEB0FC0A26C6CEB1F80000315006C6C133E6C6C5B017C5B
90383F03F090380FFFC0D901FEC7FC263F7BBC32>48 D<150E151E153EA2157EA215FE14
01A21403EC077E1406140E141CA214381470A214E0EB01C0A2EB0380EB0700A2130E5BA2
5B5BA25B5B1201485A90C7FC5A120E120C121C5AA25A5AB8FCA3C8EAFE00AC913803FF80
49B6FCA3283E7CBD32>52 D<000CEC0180D80F80130F01F8EBFF0090B55AA25D15F05D15
804AC7FC380E3FF090C9FCACEB01FE90380FFF8090383E07E09038F001F8390FC000FC49
137E90C7127F000E801680C8EA1FC0A216E0150FA316F0A3120C127F7F12FFA416E090C7
121F12FC007015C00078143F00381580003CEC7F007E15FE6C6C485A6C6C485A3903F01F
E0C6B51280D93FFEC7FCEB0FF0243F7ABC32>I<EC0FF0EC7FFE903901F80F80903907E0
03C090390F8001E0EB3F00017EEB07F049130F0001141F5B485A120749EB0FE0000FEC07
C092C7FC485AA2123FA3485AA214FF018313E039FF8701F890388E00FC019C137E01B87F
01B0EB1F8001F014C049EB0FE0A24914F0150716F8A25B16FCA4127FA5123F7F16F8A212
1FED0FF0120F6D14E00007141F6D14C06C6CEB3F800001EC7F00D800FE13FE90387F03FC
90381FFFF0010713C0D901FEC7FC263F7BBC32>I<ED03C0A34B7EA24B7EA34B7EA3ED3B
FCA3ED71FEA2EDF1FF15E0A2020180EDC07FA2DA03807F163FA24A486C7EA24A80020E13
0FA2021E80021C1307A2023C8002381303A24A6D7EA34A6D7EA249B77EA3D903C0C76C7E
4A143FA249C87F171FA2010E6F7EA2011E82011C1507A2013C820138150313788401FC15
01486C4B7ED80FFF030F1380B500F049B6FCA340417CC04A>65 D<DB1FF8EB01804AB5EA
8003020FECE007913A3FF803F80F9139FF80007C4948C7EA1E1FD907FCEC0FBFD90FF0EC
07FF49488049488049488049C9127F4848163F120349161F12074848160FA2485A180712
3F5B1803127FA34993C7FC12FFAC127F7FF00380A2123FA27F001F170719006C7EA26C6C
5E0003170E6D161E0001171C6C6C163C6D6C5D6D6C5D6D6C4A5A6D6C4A5AD907FC4A5AD9
01FE021FC7FC902600FFC0137E91393FF803F8020FB512E0020114809126001FFCC8FC39
427ABF47>67 D<DB1FF8EB01804AB5EA8003020FECE007913A3FF803F80F9139FF80007C
4948C7EA1E1FD907FCEC0FBFD90FF0EC07FF49488049488049488049C9127F4848163F12
0349161F12074848160FA2485A1807123F5B1803127FA34993C7FC12FFAB0407B512FE12
7F7FDC000113C09438007F80123FA27F121FA26C7EA26C7E12037F6C7E7E6D6C15FF6D7E
6D6C5C6D7ED907FCEC03DFD901FFEC0F8F6D01C0EB3F07913A3FF801FC03020FB5EAF001
020102C0C7FC9126001FFCC8FC3F427ABF4D>71 D<B612F0A3C6EBF000EB3FC0B3B3B2EB
FFF0B612F0A31C3E7CBD25>73 D<B612F0A3000101E0C9FC38007F80B3B0EF01C0A51703
1880A41707A3170FA2171F173F177FEFFF00160348486C133FB9FCA3323E7BBD3E>76
D<B56C91387FFFFC8080D8007F030313806E913800FE006E157C1838EB77FCEB73FE8013
7101707F6E7EA26E7E6E7EA26E7E6E7EA26E7E6E7EA26E7F6F7EA26F7E6F7EA26F7E6F7E
8215036F7E6F1380A2EE7FC0EE3FE0A2EE1FF0EE0FF8A2EE07FCEE03FEA2EE01FF7013B8
A2EF7FF8173FA2171F170F1707A2170301F81501487ED807FF1500B500F81578A218383E
3E7BBD4A>78 D<ED3FF80203B57E91390FE00FE091397F0001FC02FCEB007ED903F86E7E
49486E7ED90FC0EC07E0D93F80EC03F8017F8291C8120101FE6F7E4848167F0003188048
48EE3FC0A2000F18E049161F001F18F0A24848EE0FF8A3007F18FC491607A300FF18FEAC
007F18FC6D160FA3003F18F8A26D161F001F18F0A26C6CEE3FE0A2000718C06D167F0003
18806C6CEEFF006C6C4B5AA26D6C4A5A6D6C4A5A6D6C4A5AD907F0EC1FC06D6C4A5AD900
FE02FEC7FC91397F8003FC91391FE00FF00203B512809126003FF8C8FC3F427ABF4D>I<
B712F8EEFF8017E000019039C0001FF86C6C48EB03FE707E9338007F80EF3FC018E0EF1F
F0A2EF0FF8A218FCA718F8A3EF1FF0A2EF3FE018C0EF7F80933801FF00EE03FCEE3FF891
B612C094C7FC0280C9FCB3A73801FFE0B612C0A3363E7BBD43>I<D903FE130690391FFF
C00E017FEBF81E3901FE01FC3A03F0003F3E4848EB0FFE484813074848130390C7120100
3E1400007E157EA2007C153E12FCA2161EA36C150EA27E7F007F92C7FC7F13F0EA3FFCEB
FFC06C13FC6CEBFFC06C14FC6C14FF6C15C06C6C80011F80010380D9003F7F02037F9138
003FFF15070301138081167F17C0163F00E0151FA3160FA27EA36C1680161F7E17006C5D
6C153E6D5C6D14FCD8FDF0495AD8F8FC495A3AF07FC01FC0011FB55AD8E00349C7FC39C0
003FF02A427ABF38>83 D<B600C090387FFFFCA3000101E0C70003138026007F80913800
FE00187C1838B3B3A4013F16786E1570A218F0011F5E6E1401010F5E6D6C1403606D6C14
076D6C4AC7FC6D6C141E027F147C91393FC001F891390FF00FE00203B55A020049C8FCED
1FF03E407BBD4A>85 D<003FB500C090B512FCA3C649C7001F1380D93FF8DA0FFCC7FC01
1FED07F0010F5E6D6C5D6E5D01034BC8FC6D6C140E6D6D131E5F6E6C13386E6C13785F6E
6C485ADA0FF85BEDFC030207495ADA03FE90C9FC6F5A6E131E6E13BCED7FF8A26F5A151F
A26F7E6F7E82150F4B7E031C7F153C4B6C7E9238703FE015F04A486C7E4B6C7EDA03807F
020713074A486C7E020E80021E7F4A6D7F02386E7E14784A6E7E49486E7E5C01036F7E49
486E7E010F82011F1503013F82D9FFC08200076D020F13E0B500FC027FEBFFC0A3423E7D
BD4A>88 D<EC01E0A24A7EA34A7EA34A7EA24A7E141CA2EC3CFFEC387FA24A6C7EA34A6C
7EA2010180ECC00FA249486C7EA349486C7EA24980010E1301010FB5FC4980A2011CC7FC
49147FA20178810170143FA201F08149141F1201486C811207486CEC3FF8D8FFFE49B512
C0A332317DB038>97 D<DA0FF81330DA7FFF13700103B5EAC0F090390FFC03F190391FE0
00F9D97F80133F01FEC7121F4848140F48481407485A000F1503491401121F491400123F
5B127F1770A248C9FC1700AA6C6C1570A3123F6D15F0121F6D15E0000F15016D15C00007
15036C6C15806C6C14076C6CEC0F00D97F80133ED91FE05B90390FFC03F00103B55AD900
7F1380DA0FF8C7FC2C317BAF36>99 D<B612FEEDFFE016F83A03FE0007FC6C48EB00FFEE
3F80707E707E707E707E160183160083A2177FA41880AA1800A317FEA34C5A5F16034C5A
5FEE1FC04C5A04FFC7FC486CEB07FEB712F816E093C8FC312F7DAE39>I<B81280A3D803
FEC7FC6C48EC1FC0160F16071603A21601A317E0ED0E00A31700A2151E153E157E90B512
FEA39038FC007E153E151E150EA21738A392C71270A417F0A2EE01E0A216031607161F48
6C14FFB812C0A32D2F7DAE33>I<B8FCA33903FE00016C489038003F80161F160F1607A2
1603A317C01601150EA293C7FCA3151E153E157E90B512FEA39038FC007E153E151E150E
A592C8FCAA487EB512FCA32A2F7DAE31>I<DA0FF81360DAFFFE13E00103EBFF8190390F
F807E390393FC000F34948137F01FEC7123F4848141F4848140F48481407120F49140348
5A003F1501A25B007F1500A348C9FC1700A8031FB5FCA26C7E9238001FF0EE0FE0123F7F
A26C7E120F7F12076C7E6C7E6C6C141FD97F80133FD93FE0137B90390FFC03F10103B512
E00100EC8060DA0FFCC7FC30317BAF3A>I<B512F8A33803FE006C5AB3B3A3487EB512F8
A3152F7DAE1B>105 D<B512FCA3D803FEC8FC6C5AB3A71607A4160EA4161EA2163E167E
16FEED03FC486C130FB7FCA3282F7DAE2F>108 D<D8FFFE923807FFF0A3D803FF92380F
FC006C5FD9DF80141DA3D9CFC01439A2D9C7E01471A3D9C3F014E1A2D9C1F8EB01C1A3D9
C0FCEB0381A2027EEB0701A36E130EA291381F801CA391380FC038A2913807E070A39138
03F0E0A3913801F9C0A2913800FF80A3486CEB7F00487E486C013E497EB5008091B512F0
A2151C3C2F7CAE44>I<D8FFFC91387FFFC07F7F0001923807FC006E6D5A6E6D5AD9DFE0
6D5AA2EBCFF0EBC7F8EBC3FCA2EBC1FEEBC0FF6E7EA26E7E6E7EA26E7E6E7E6E7EA26E7E
6E7EED7F80A2ED3FC0ED1FE0ED0FF0A2ED07F8ED03FCA2ED01FEED00FF167FA2163F161F
160F487E486C1407486C1403B56C1301A21600322F7DAE38>I<EC1FF891B5FC903907F0
0FE090390FC003F0013FC712FC017E147E49804848EC1F804848EC0FC04848EC07E0000F
16F0491403001F16F8491401003F16FCA2007F16FE90C9FCA34816FFAA6C6CEC01FEA300
3F16FCA26D1403001F16F86C6CEC07F0A26C6CEC0FE0000316C06C6CEC1F806C6CEC3F00
017E147E6D5C90390FC003F0903907F00FE00100B5C7FCEC1FF830317BAF3A>I<B612FE
EDFFC016F03A03FE0007FC6C48EB01FEED007FEE3F80A2EE1FC0A217E0A617C0A2EE3F80
A2EE7F00ED01FCED07F890B612E0168001FCC9FCB2487EB512F8A32B2F7DAE33>I<B612
F015FF16C03A03FE001FF06C48EB03FCED00FE167FA283163F83A55F167F94C7FC16FE4B
5A4B5AED1FE090B6C8FC5D9039FC003F80ED0FC06F7E826F7EA26F7EA582A418E082A281
486CED01C0B500F8EB7F8193381FC38093380FFF00C9EA01FC33307DAE37>114
D<90383FC00C9038FFF81C0003EBFE3C390FE03FFC381F8007EB0003003E130148130015
7C5A153CA36C141CA27E6C14006C7E13E013FE383FFFE06C13FE6CEBFF806C14E0000114
F06C6C13F8010F13FC1300EC07FE14011400157F153F12E0151FA37EA2151E6C143E6C14
3C6C147C6C14F89038C001F039FBF807E000F1B512C0D8E07F130038C007FC20317BAF2A
>I<007FB712F8A39039801FF0073A7E000FE00000781678A20070163800F0163CA34816
1CA5C71500B3A8EC3FF8011FB512F0A32E2E7CAD36>I<B500F890387FFFC0A3D803FEC7
3807FC006C486E5A705A705AB3AB000015016D5D1603017E5D017F14076D6C49C7FC131F
6D6C133ED907F05B903903FC03F00100B55A023F1380DA07FCC8FC32307DAE38>I<B500
E0903807FFF0A3000790C7000113806C48913800FE000001167C0000167817706D15F06D
5DA26D6C495AA26E1303011F5DA26D6C49C7FCA26E5B0107140EA26D6C5BA26E133C0101
14388001005CA26E13F06E5B1581023F5BA215C3021F5B15E7020F90C8FCA2EC07FEA36E
5AA26E5AA36E5AA234307EAE38>I<B527C01FFFF8EB7FFFA3D807FEC701C0EB1FF86C48
6E48EB07E094C713C000016F7E1A807F0000701400A2017F170E4C7EA26D6C5EEEE7F0A2
6D6C5E923801C3F8A2D90FE05E92380381FCA2902607F0075DEE00FEA26D6C486D485A03
0E137F1803902601FC1EEC8380031C133F02FE15870100013C02C7C7FC0338131F02FF15
CFDA7F7814EE0370130F03F014FE6E486D5AA36E486D5AA2020F5D4B1301A202075D92C8
FC48307EAE4C>I<3B7FFFF001FFFEA30003D9C00013E0C649EB7F80017F027EC7FC167C
6D6C13786D6C5B6D6C5B15016D6C485AD903FC5B15076D6C48C8FC903800FF1EEC7F9C15
BCEC3FF86E5AA2140F6E7E14034A7E4A7EEC1EFF141C91383C7F804A6C7E14709138F01F
E049486C7E49486C7E148001076D7E49486C7E130E011E6D7E496E7E017C6E7E13FC0003
82D80FFEEC7FF8B549B512C0A3322F7DAE38>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fu cmr10 10.95 89
/Fu 89 125 df<4AB4EB0FE0021F9038E03FFC913A7F00F8FC1ED901FC90383FF03FD907
F090397FE07F80494801FF13FF4948485BD93F805C137F0200ED7F00EF003E01FE6D91C7
FC82ADB97EA3C648C76CC8FCB3AE486C4A7E007FD9FC3FEBFF80A339407FBF35>11
D<4AB4FC021F13C091387F01F0903901FC0078D907F0131C4948133E494813FF49485A13
7F1400A213FE6F5A163893C7FCAA167FB8FCA33900FE00018182B3AC486CECFF80007FD9
FC3F13FEA32F407FBF33>I<4AB47E021F13F791387F00FFEB01F8903807F001EB0FE0EB
1FC0EB3F80137F14008101FE80AEB8FCA3C648C77EB3AE486CECFF80007FD9FC3F13FEA3
2F407FBF33>I<4AB4ECFF80021FD9C00F13E0913B7F01F03F80F8903C01F80078FE003C
D907F0D93FF8130E49484948131F49484948EB7F804948484913FF137F02005CA201FE92
C7FC6FED7F0070141C96C7FCAAF13F80BBFCA3C648C76CC7FC197F193FB3AC486C4A6CEB
7FC0007FD9FC3FD9FE1FB5FCA348407FBF4C>I<121EEA7F80EAFFC0A9EA7F80ACEA3F00
AC121EAB120CC7FCA8121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A4179C019>33
D<001E130F397F803FC000FF137F01C013E0A201E013F0A3007F133F391E600F30000013
00A401E01370491360A3000114E04913C00003130101001380481303000EEB070048130E
0018130C0038131C003013181C1C7DBE2D>I<14E0A4EB07FC90383FFF8090B512E03901
F8E3F03903E0E0FCD807C0133CD80F807FD81F007F003E80003C1580007C140316C00078
141F00F8143F157FA47EED3F806CEC0E0092C7FC127F138013C0EA3FF013FEEA1FFF6C13
FC6C13FF6C14C06C806C6C13F8011F7F130301007FECE7FF14E102E01380157F153FED1F
C0A2003E140F127FD8FF801307A5130000FC158000F0140F1270007815005D6C141E153E
6C5C6C5C3907C0E1F03903F8EFE0C6B51280D93FFEC7FCEB0FF8EB00E0A422497BC32D>
36 D<EC0FC0EC3FF0ECF878903801F01CEB03E049487E130FEC800F011F7FA2EB3F00A5
EC800EA25DA25DA25D6D6C5AECC1C0A2ECC38002E7C7387FFFFCEB0FEE14FC4A020713C0
6D48913801FE006E5DEF00F06D7E4D5A496C5D010F1503D91DFF4A5A013893C7FC496C6C
5B01E0150E48486C6C131E00036E131C2607801F143C000F6E5B001F6D6C1370263F0007
14F06F485A48D903FE5B913801FF03486D495A0487C8FCED7FCFED3FFE6F4814386D6D5A
A2007F6E6C14786D6D6C14704B6C14F06C6C496C6C13E0001F91393E3FC0016C6C903AFC
1FF003C03D07FC07F007FC1F800001B5D8C001B512006C6C90C7EA7FFCD90FF8EC0FF03E
437CC047>38 D<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413E013C0A3120113
80120313005A120E5A1218123812300B1C79BE19>I<1430147014E0EB01C0EB03801307
EB0F00131E133E133C5B13F85B12015B1203A2485AA2120F5BA2121F90C7FCA25AA3123E
127EA6127C12FCB2127C127EA6123E123FA37EA27F120FA27F1207A26C7EA212017F1200
7F13787F133E131E7FEB07801303EB01C0EB00E014701430145A77C323>I<12C07E1270
7E7E121E7E6C7E7F12036C7E7F12007F1378137CA27FA2133F7FA21480130FA214C0A313
0714E0A6130314F0B214E01307A614C0130FA31480A2131F1400A25B133EA25BA2137813
F85B12015B485A12075B48C7FC121E121C5A5A5A5A145A7BC323>I<EB03C0A2805CA600
F0140F00FC143F00FE147F00FF14FF393FC3C3FC390FE187F03903F18FC03900FDBF00EB
3FFCEB0FF0EB03C0EB0FF0EB3FFCEBFDBF3903F18FC0390FE187F0393FC3C3FC39FF03C0
FF00FE147F00FC143F00F0140F00001400A6805CA220277AC32D>I<121EEA7F8012FF13
C0A213E0A3127FEA1E601200A413E013C0A312011380120313005A120E5A121812381230
0B1C798919>44 D<B512FEA617067F961E>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E00
0A0A798919>I<ED0180ED03C01507A21680150FA216005DA2151E153EA2153C157CA215
7815F8A25D1401A25D1403A25D1407A25D140FA24AC7FCA2141E143EA2143C147CA21478
14F8A25C1301A25C1303A25C1307A25C130FA291C8FC5BA2131E133EA25BA2137813F8A2
5B1201A25B1203A25B1207A25B120FA290C9FC5AA2121E123EA2123C127CA2127812F8A2
5A1260225B7BC32D>I<EB01FE90380FFFC090383F03F090387C00F849137C48487F4848
7F4848EB0F80A2000F15C04848EB07E0A3003F15F0A290C712034815F8A64815FCB3A26C
15F8A56C6CEB07F0A3001F15E0A36C6CEB0FC0A26C6CEB1F80000315006C6C133E6C6C5B
017C5B90383F03F090380FFFC0D901FEC7FC263F7DBC2D>I<EB01C013031307131F137F
EA07FFB5FC139FEAF81F1200B3B3ACEB7FF0B612F8A31D3D78BC2D>I<EB07FC90383FFF
8090B512E03903F01FF83907C007FC390F0001FE001E6D7E001C1580003CEC7FC05AED3F
E01270B4FC6DEB1FF07FA56C5A6CC7FC120CC813E0153FA216C0157F168015FF16004A5A
5D4A5A4A5A5D4A5A4A5A4AC7FC147E147C5C495A495A495A495A49C71270133E133C5B49
14E0485A485A485A48C7120148B6FCA25A4815C0B7FCA3243D7CBC2D>I<EB07FC90383F
FF809038F80FE03901E003F839078001FCD80F007F000E6D7E001E1580D81F80137F486C
14C07FA27F5BA2121F6C5AC8138015FF1600A24A5AA24A5A5DEC07E04A5A023FC7FCEB1F
FCECFF809038000FE0EC07F86E7E6E7E6E7E1680ED7FC0A216E0153FA216F0A2120C123F
487E487EA316E0A249137F6CC713C01278EDFF807E6C4913006C495A3907C007FC3903F8
0FF0C6B55A013F1380D907F8C7FC243F7CBC2D>I<150E151E153EA2157EA215FE1401A2
1403EC077E1406140E141CA214381470A214E0EB01C0A2EB0380EB0700A2130E5BA25B5B
A25B5B1201485A90C7FC5A120E120C121C5AA25A5AB8FCA3C8EAFE00AC4A7E49B6FCA328
3E7EBD2D>I<00061403D80780131F01F813FE90B5FC5D5D5D15C092C7FC14FCEB3FE090
C9FCACEB01FE90380FFF8090383E03E090387001F8496C7E49137E497F90C71380000614
1FC813C0A216E0150FA316F0A3120C127F7F12FFA416E090C7121F12FC007015C0127800
38EC3F80123C6CEC7F00001F14FE6C6C485A6C6C485A3903F80FE0C6B55A013F90C7FCEB
07F8243F7CBC2D>I<EC1FE0ECFFF8903803F03E90380FC00F90391F000780133E017EEB
1FC049133F4848137F12035B12074848EB3F80ED1F00001F91C7FC5BA2123FA3485AA214
FE903887FF8039FF8F07E090389C01F09038B800FC01B0137E13F0497F16804914C0A2ED
1FE0A34914F0A5127FA6123F6D14E0A2121FED3FC0A26C6C1480A20007EC7F006C6C137E
6C6C5B6C6C485A90387E07F06DB45A010F1380D903FCC7FC243F7CBC2D>I<1238123C12
3F90B612FCA316F85A16F016E00078C712010070EC03C0ED078016005D48141E151C153C
5DC8127015F04A5A5D14034A5A92C7FC5C141EA25CA2147C147814F8A213015C1303A313
07A3130F5CA2131FA6133FAA6D5A0107C8FC26407BBD2D>I<EB03FC90381FFF8090387C
07E09038F001F83901E0007C48487F48487F48C7FCED0F80121E16C0003E1407A4123FA2
6DEB0F807F6C6C131F6D140001FC133E6C6C5B9038FF80786C6D5A6CEBF3E06CEBFF806C
91C7FC133F6D13C06D7F013F13F801787F48486C7E3903E01FFF48486C1380260F800313
C048487E489038007FE0003E143F007E141F007CEC0FF01507481403A31501A46C15E000
7C1403A2007E15C06C14076CEC0F806DEB1F006C6C133ED807F05B3901FC03F86CB512E0
011F1380D903FCC7FC243F7CBC2D>I<EB03FCEB1FFF90387E07C09038FC03F048486C7E
48486C7E4848137C000F147E4848137F81003F15805B007F15C0A2151F12FF16E0A516F0
A5127F153FA36C7EA2001F147F120F6C6C13FF6D13DF000313013900F8039F90387E0F1F
D91FFE13E0EB07F090C7FCA2ED3FC0A41680157FD80F801400487E486C13FEA24A5A5D49
485AEB8007391E000FE0001F495A260FC07FC7FC3803FFFE6C13F838003FC0243F7CBC2D
>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FCB3121EEA7F80A2EAFFC0A4EA7F80A2
EA1E000A2779A619>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FCB3121E127FEAFF
80A213C0A4127F121E1200A412011380A3120313005A1206120E120C121C5A1230A20A39
79A619>I<007FB912E0BA12F0A26C18E0CDFCAE007FB912E0BA12F0A26C18E03C167BA1
47>61 D<EB1FF890B5FC3903E01FC0390F0007F0001EEB03F848EB01FC4814FE140000FE
14FF7E7FA46CC7FC123EC7EA01FEA2EC03FCEC07F815F0EC0FC0EC1F80EC3F00143E5C14
7814F85C13015CA2495AA25CAB91C7FC90C8FCA8EB0780EB1FE0A2497EA46D5AA2EB0780
20407BBF2B>63 D<ED7FE0913807FFFE91391F801F809139780001E0D901E0EB0078D907
80141E49C87E011E6F7E0138ED01C0496F7E4916700001177848488249D93F80131C2807
0001FFF07F48902607E07C130F000E90260FC01E7F001E90263F00071480001C49903803
8003003C01FED901C013C0003849ECFE010101EC00FF267803F8027F13E000701700495A
A200F018F000E01870495AA96D7E12F01270A26D7E007818E0263801FC5C01005C003C7F
001C017F49EB01C0001E6DEB077F000E903B0FC01E3F8380000F903B07E07C1F87006C90
3A01FFF007FE3C0380003F8001F86D90CAFC6C7E120013707F011EEE03F06D160F6D6CED
3FC0D901E0913801FE00D90078EC1FF0913A1F8003FF800207B500F8C7FC9126007FFEC8
FC3C417BBF47>I<15074B7EA34B7EA34B7EA34B7EA34B7E15E7A2913801C7FC15C3A291
380381FEA34AC67EA3020E6D7EA34A6D7EA34A6D7EA34A6D7EA34A6D7EA349486D7E91B6
FCA249819138800001A249C87EA24982010E157FA2011E82011C153FA2013C820138151F
A2017882170F13FC00034C7ED80FFF4B7EB500F0010FB512F8A33D417DC044>I<B712FC
EEFF8017F00001903980000FF86C6CC7EA03FE707E701380EF7FC0EF3FE0A2EF1FF0A218
F8A3170F171FA318F0A2EF3FE0177F18C0EFFF804C1300EE03FCEE0FF8EE7FE091B6C7FC
17E091C7EA07FCEE01FE933800FF80EF7FC0EF3FE0EF1FF018F8170F18FC1707A218FEA7
18FC170FA2EF1FF818F0173FEF7FE0EFFFC00403138048486C90380FFE00B85A17E094C7
FC373E7DBD40>I<DB3FF01306912603FFFE130E020F9038FF801E913A3FF007E03E9139
FF8000F8D903FEC7EA7C7ED907F8EC1EFE4948140FD93FE0140749481403495A91C81201
4848150012034848167E5B000F173EA24848161EA2123F5B180E127FA349160012FFAC12
7F7F180EA2123FA27F001F171E181C6C7EA20007173C6D16386C6C1678000117706C6C16
F06EEC01E06D6C15C06D6C1403D90FF0EC07806D6CEC1F00D903FE143E902600FF8013F8
91393FF007F0020FB512C0020391C7FC9138003FF037427BBF42>I<B712FCEEFF8017E0
00019039C0001FF86C6C48EB03FEEE00FF717E717EEF0FE084717E717E170184717EA219
80187F19C0A3F03FE0A519F0AB19E0A5F07FC0A21980A218FF19004D5AA24D5A6017074D
5A4D5AEF7FC04DC7FCEE03FE48486CEB1FF8B85A178004FCC8FC3C3E7DBD45>I<B912E0
A300019038C000016C6C48EB001FEF0FF01703A217011700A31870A41838161CA41800A2
163CA2167C16FC150391B5FCA3EC80031500167C163CA2161CA21807A3180E93C7FCA418
1E181CA2183CA2187CA218F8170117031707171F48486CEB01FFB912F0A3383E7DBD3E>
I<B91280A300019038C000036C6C48EB007FEF1FC0170F1707A21703A31701A4EF00E0A2
1638A31800A31678A216F81501150791B5FCA3EC8007150115001678A21638A693C8FCAF
3801FFE0B612F0A3333E7DBD3B>I<DB3FE0130C912603FFFE131C021F9038FF803C913A
7FF00FC07C9139FF0001F0D903FC90380078FC4948143DD91FE0141F4948140F49481407
01FF15034890C8FC491501485A000716005B000F177C5B001F173CA2485AA2181C127FA2
5B95C7FC12FFAB041FB512F0127FA26D9139000FFE00EF03FC123FA27F121FA26C7EA212
077F12036C7E7F6C7F6D6C14076D7E6D6C140FD907F8141ED903FEEC3C7C902600FF80EB
F83C913A7FF007F01C021FB5EAC00C020391C8FC9138003FF03C427BBF47>I<B6D8C01F
B512F8A3000101E0C7383FFC0026007F80EC0FF0B3A691B7FCA30280C7120FB3A92601FF
E0EC3FFCB6D8C01FB512F8A33D3E7DBD44>I<B612F0A3C6EBF000EB3FC0B3B3B2EBFFF0
B612F0A31C3E7EBD21>I<011FB512FCA3D9000713006E5A1401B3B3A6123FEA7F80EAFF
C0A44A5A1380D87F005B007C130700385C003C495A6C495A6C495A2603E07EC7FC3800FF
F8EB3FC026407CBD2F>I<B600C090387FFFFCA3000101E0C7000F138026007F80913807
FE0018F818E0604D5A4DC7FC173E5F5F4C5A4C5A4C5A4C5A4CC8FC163E5E5E4B5A4B5AED
07804B7E151F4B7E4B7E15FF913881EFF8913883C7FCEC878791388F03FE91389E01FF14
BCDAF8007F4A6D7E5C4A6D7E4A6D7EA2707E707EA2707E707EA2707F717E84173F717E71
7EA2717E848419802601FFE04A13C0B600C090B6FCA3403E7DBD47>I<B612F8A3000101
E0C9FC38007F80B3B0EF0380A517071800A45FA35FA25F5F5F4C5A160748486C133FB8FC
A3313E7DBD39>I<B500C093383FFFF0A300016D93387FF800D8007F18E0D977F016EFA3
D973F8ED01CFA2D971FCED038FA3D970FEED070FA26E150E80A26E6C141CA36E6C1438A2
6E6C1470A36E6C14E0A26E6CEB01C0A36E6CEB0380A36E6CEB0700A2037F130EA36F6C5A
A26F6C5AA36F6C5AA25FED07F0A2923803F9C0A36FB45AA26F90C7FCA213F8486C147ED8
07FFEF3FF8B500F8013C011FB512F0A34C3E7DBD53>I<B56C91B512F88080D8007F0307
13006EEC01FC6E6E5A1870EB77FCEB73FEA2EB71FF01707FA26E7E6E7EA26E7E6E7EA26E
7E6E7EA26E7E6E7FA26F7E6F7EA26F7E6F7EA26F7E6F7EA26F7E6F1380A2EE7FC0EE3FE0
A2EE1FF0EE0FF8A2EE07FCEE03FEA2EE01FF7013F0A2177F173FA2171F170FA2170701F8
1503487ED807FF1501B500F81400A218703D3E7DBD44>I<ED7FE0913807FFFE91391FC0
3F8091397E0007E04948EB03F8D907F0EB00FE4948147F49486E7E49486E7E49C86C7E01
FE6F7E00018349150300038348486F7EA248486F7EA2001F188049167F003F18C0A3007F
18E049163FA300FF18F0AC007F18E06D167FA4003F18C0A26C6CEEFF80A36C6C4B1300A2
6C6C4B5A00035F6D150700015F6C6C4B5A6D5E6D6C4A5A6D6C4A5A6D6C4AC7FC6D6C14FE
D901FCEB03F8D9007FEB0FE091391FC03F80912607FFFEC8FC9138007FE03C427BBF47>
I<B712F8EEFF8017E000019039C0003FF86C6C48EB07FCEE01FE707EEF7F80EF3FC018E0
A2EF1FF0A218F8A818F0A2EF3FE0A218C0EF7F80EFFF004C5AEE07FCEE3FF091B612C04C
C7FC0280C9FCB3A73801FFE0B612C0A3353E7DBD3E>I<ED7FE0913807FFFE91391FC03F
8091397F000FE0D901FCEB03F8D907F0EB00FE4948147F49486E7E49486E7E49C86C7E49
8248486F7E49150300038348486F7EA2000F834981001F1880A24848EE7FC0A3007F18E0
A249163FA200FF18F0AC007F18E0A26D167FA3003F18C0A26C6CEEFF80A3000F18006D5D
0007DA0F805B6C6C90393FE003FCED70706C6C496C485A6C6C48486C485A017FD9800E5B
D93F819038061FC0D91FC19038073F80D90FE14AC7FCD907F1EB03FE902601FDC013F890
3A007EE007E091271FF03FC013180207B5FC9139007FE1E0DB0001143883711378A2706C
13F0EFFF0318FFA27113E0A37113C0711380711300715AEF01F83D527BBF47>I<B712C0
16FCEEFF800001D9C00013E06C6C48EB1FF0EE07FCEE01FE707E84717EA2717EA284A760
177F606017FF95C7FCEE01FCEE07F8EE1FE0EEFF8091B500FCC8FC16F091388001FCED00
3FEE1FC0707E707E83160383160183A383A484A4F0C004190EA28218E0057F131E2601FF
E0161CB600C0EB3FF094381FF83805071370CA3801FFE09438003F803F407DBD43>I<D9
07FC130C90391FFF801C017FEBF03C3901FC03F83A03F0007E7CD807C0EB1FFC4848130F
001F140748C71203003E1401007E1400A2007C157C12FCA2163CA36C151CA27EA26C6C14
007F7FEA3FF8EBFF806C13F86CEBFF806C14F06C14FC6C14FF6C15C0013F14E0010714F0
EB007F020713F89138007FFC150FED07FE15031501ED00FFA200E0157FA3163FA27EA316
3E7E167E6C157C6C15FC6C15F86D13016DEB03F06DEB07E0D8F9FCEB0FC03AF07F803F80
90391FFFFE00D8E00713F839C0007FC028427BBF33>I<003FB91280A3903AF0007FE001
018090393FC0003F48C7ED1FC0007E1707127C00781703A300701701A548EF00E0A5C816
00B3B14B7E4B7E0107B612FEA33B3D7DBC42>I<B600C090B512F8A3000101E0C7000713
0026007F80EC01FC715A1870B3B3A4013F16F06E5DA21701011F5E80010F15036E4A5A01
0793C7FC6D6C5C6D6C141E6D6C5C027F14F86E6C485A91390FF00FE00203B51280020049
C8FCED1FF03D407DBD44>I<B691380FFFFEA3000301E0020113E06C01809138007F806C
EF3F00017F163E181C6E153C013F1638A26E1578011F1670A26D6C5DA26E140101075EA2
6E140301035EA26D6C4AC7FCA2806D150EA26F131E027F141CA26F133C023F1438A26E6C
5BA26F13F0020F5CA2EDF80102075CA26E6C485AA2EDFE07020191C8FCA26F5A6E130EA2
ED7F9CA216DCED3FF8A36F5AA36F5AA26F5AA36F5A3F407EBD44>I<B500FE017FB5D880
07B5FCA3000301C0010101E0C713F86C90C849EC3FE07148EC0F807E7215006E143F017F
190E84A26D6C60A24D7E6D6C60A2EFE7F86D6C60A2933801C3FC6E18F001076104037F6E
0281140101036104077F17006D6C4D5AA2040EEB7F806D6C4DC7FCA24CEB3FC0DA7F8016
0EA24CEB1FE003C0161E023F171C047814F0DBE070010F133C021F173804F014F84C1307
DA0FF05EA2DBF1C0EB03FCDA07F95EA2DBFB80EB01FEDA03FF6F5AA293C8FCA26E5FA24B
157F020094C8FCA24B81037C153EA20378151E0338151C58407EBD5D>I<007FB5D8C003
B512E0A3C649C7EBFC00D93FF8EC3FE06D48EC1F806D6C92C7FC171E6D6C141C6D6C143C
5F6D6C14706D6D13F04C5ADA7FC05B023F13036F485ADA1FF090C8FC020F5BEDF81E9138
07FC1C163C6E6C5A913801FF7016F06E5B6F5AA26F7E6F7EA28282153FED3BFEED71FF15
F103E07F913801C07F0203804B6C7EEC07004A6D7E020E6D7E5C023C6D7E02386D7E1478
4A6D7E4A6D7F130149486E7E4A6E7E130749C86C7E496F7E497ED9FFC04A7E00076DEC7F
FFB500FC0103B512FEA33F3E7EBD44>I<B66C0103B51280A3000101F0C8EBF8006C6C48
ED3FC0725A013F041EC7FC6D7E606D6C15386D6C1578606D6C5D6E14016D5E6D6D130360
6E6C49C8FC6E6C5B170E6E6C131E171C6E6C5B6E6C137817706E6C13F06F5B6E13016EEB
83C05FED7FC7DB3FE7C9FC16EFED1FFE5E150F6F5AB3A4ED1FFC020FB512FCA3413E7FBD
44>I<003FB712F8A391C7EA1FF013F801E0EC3FE00180EC7FC090C8FC003EEDFF80A200
3C4A1300007C4A5A12784B5A4B5AA200704A5AA24B5A4B5AA2C8485A4A90C7FCA24A5A4A
5AA24A5AA24A5A4A5AA24A5A4A5AA24990C8FCA2495A4948141CA2495A495AA2495A495A
173C495AA24890C8FC485A1778485A484815F8A24848140116034848140F4848143FED01
FFB8FCA32E3E7BBD38>I<EAFFFCA4EAF000B3B3B3B3ABEAFFFCA40E5B77C319>I<486C13
C00003130101001380481303000EEB070048130E0018130C0038131C0030131800701338
00601330A300E01370481360A400CFEB678039FFC07FE001E013F0A3007F133FA2003F13
1F01C013E0390F0007801C1C73BE2D>I<EAFFFCA4EA003CB3B3B3B3ABEAFFFCA40E5B7F
C319>I<EA0180120313005A120E5A12181238123012701260A312E05AA412CFEAFFC013
E0A3127FA2123F13C0EA0F000B1C7ABE19>96 D<EB0FF8EBFFFE3903F01F8039078007E0
000F6D7E9038E001F8D81FF07F6E7EA3157F6C5AEA0380C8FCA4EC1FFF0103B5FC90381F
F87FEB7F803801FC00EA07F8EA0FE0485A485AA248C7FCEE038012FEA315FFA3007F5BEC
03BF3B3F80071F8700261FC00E13CF3A07F03C0FFE3A01FFF807FC3A003FC001F0292A7D
A82D>I<EA01FC12FFA3120712031201B1EC03FC91381FFF8091387C07E09039FDE001F0
9039FFC000FC4A137E91C77E49158049141F17C0EE0FE0A217F0A2160717F8AA17F0A216
0FA217E0161F17C06D1580EE3F006D5C6E13FE9039F3C001F89039F1E003F09039E0780F
C09026C03FFFC7FCC7EA07F82D407EBE33>I<49B4FC010F13E090383F00F8017C131E48
48131F4848137F0007ECFF80485A5B121FA24848EB7F00151C007F91C7FCA290C9FC5AAB
6C7EA3003FEC01C07F001F140316806C6C13076C6C14000003140E6C6C131E6C6C137890
383F01F090380FFFC0D901FEC7FC222A7DA828>I<ED01FC15FFA3150715031501B114FF
010713E190381F80F990387E003D49131FD803F81307485A49130348481301121F123F5B
127FA290C7FCA25AAA7E7FA2123FA26C7E000F14037F000714076C6C497E6C6C497ED800
7C017913F890383F01F190380FFFC1903A01FE01FC002D407DBE33>I<EB01FE90380FFF
C090383F03F09038FC01F848486C7E4848137E48487F000F158049131F001F15C0484813
0FA2127F16E090C7FCA25AA290B6FCA290C9FCA67EA27F123F16E06C7E1501000F15C06C
6C13036DEB07806C6C1400C66C131E017E5B90381F80F8903807FFE0010090C7FC232A7E
A828>I<EC1FC0EC7FF8903801F83C903807E07E90380FC0FFEB1FC1EB3F811401137FEC
00FE01FE137C1500AEB6FCA3C648C7FCB3AE487E007F13FFA320407EBF1C>I<167C9039
03F801FF903A1FFF078F8090397E0FDE1F9038F803F83803F001A23B07E000FC0600000F
6EC7FC49137E001F147FA8000F147E6D13FE00075C6C6C485AA23901F803E03903FE0FC0
26071FFFC8FCEB03F80006CAFC120EA3120FA27F7F6CB512E015FE6C6E7E6C15E06C8100
03813A0FC0001FFC48C7EA01FE003E140048157E825A82A46C5D007C153E007E157E6C5D
6C6C495A6C6C495AD803F0EB0FC0D800FE017FC7FC90383FFFFC010313C0293D7EA82D>
I<EA01FC12FFA3120712031201B1EC01FE913807FFC091381E07E091387803F09138E001
F8D9FDC07F148001FF6D7E91C7FCA25BA25BB3A6486C497EB5D8F87F13FCA32E3F7DBE33
>I<EA01E0EA07F8A2487EA46C5AA2EA01E0C8FCACEA01FC127FA3120712031201B3AC48
7EB512F0A3143E7DBD1A>I<1478EB01FEA2EB03FFA4EB01FEA2EB00781400AC147FEB7F
FFA313017F147FB3B3A5123E127F38FF807E14FEA214FCEB81F8EA7F01387C03F0381E07
C0380FFF803801FC00185185BD1C>I<EA01FC12FFA3120712031201B292B51280A39238
3FFC0016E0168093C7FC153C5D5D4A5AEC07C04A5A4AC8FC143E147F4A7E13FD9038FFDF
C0EC9FE0140F496C7E01FC7F496C7E1401816E7E81826F7E151F826F7EA282486C14FEB5
39F07FFFE0A32B3F7EBE30>I<EA01FC12FFA3120712031201B3B3B1487EB512F8A3153F
7DBE1A>I<2701F801FE14FF00FF902707FFC00313E0913B1E07E00F03F0913B7803F03C
01F80007903BE001F87000FC2603F9C06D487F000101805C01FBD900FF147F91C75B13FF
4992C7FCA2495CB3A6486C496CECFF80B5D8F87FD9FC3F13FEA347287DA74C>I<3901F8
01FE00FF903807FFC091381E07E091387803F000079038E001F82603F9C07F0001138001
FB6D7E91C7FC13FF5BA25BB3A6486C497EB5D8F87F13FCA32E287DA733>I<14FF010713
E090381F81F890387E007E01F8131F4848EB0F804848EB07C04848EB03E0000F15F04848
EB01F8A2003F15FCA248C812FEA44815FFA96C15FEA36C6CEB01FCA3001F15F86C6CEB03
F0A26C6CEB07E06C6CEB0FC06C6CEB1F80D8007EEB7E0090383F81FC90380FFFF0010090
C7FC282A7EA82D>I<3901FC03FC00FF90381FFF8091387C0FE09039FDE003F03A03FFC0
01FC6C496C7E91C7127F49EC3F805BEE1FC017E0A2EE0FF0A3EE07F8AAEE0FF0A4EE1FE0
A2EE3FC06D1580EE7F007F6E13FE9138C001F89039FDE007F09039FC780FC0DA3FFFC7FC
EC07F891C9FCAD487EB512F8A32D3A7EA733>I<02FF131C0107EBC03C90381F80F09039
7F00387C01FC131CD803F8130E4848EB0FFC150748481303121F485A1501485AA448C7FC
AA6C7EA36C7EA2001F14036C7E15076C6C130F6C7E6C6C133DD8007E137990383F81F190
380FFFC1903801FE0190C7FCAD4B7E92B512F8A32D3A7DA730>I<3901F807E000FFEB1F
F8EC787CECE1FE3807F9C100031381EA01FB1401EC00FC01FF1330491300A35BB3A5487E
B512FEA31F287EA724>I<90383FC0603901FFF8E03807C03F381F000F003E1307003C13
03127C0078130112F81400A27E7E7E6D1300EA7FF8EBFFC06C13F86C13FE6C7F6C148000
0114C0D8003F13E0010313F0EB001FEC0FF800E01303A214017E1400A27E15F07E14016C
14E06CEB03C0903880078039F3E01F0038E0FFFC38C01FE01D2A7DA824>I<131CA6133C
A4137CA213FCA2120112031207001FB512C0B6FCA2D801FCC7FCB3A215E0A912009038FE
01C0A2EB7F03013F138090381F8700EB07FEEB01F81B397EB723>I<D801FC14FE00FF14
7FA3000714030003140100011400B3A51501A31503120015076DEB06FF017E010E13806D
4913FC90381FC078903807FFE00100903880FE002E297DA733>I<B539E00FFFE0A32707
FE000313006C48EB00FC5E00015D7F00005DA26D13016D5CA26D6C485AA2ECC007011F91
C7FCA290380FE00EA2ECF01E0107131CA26D6C5AA2ECFC7801011370A2ECFEF001005BA2
EC7FC0A36E5AA26EC8FCA3140E2B287EA630>I<B53BC3FFFE03FFF8A3290FFE003FE000
13C06C486D48EB3F806C4817006D010F141E00016F131C15076D163C00004A6C1338A201
7F5E4B7E151DD93F805DED3DFC1538D91FC04A5AED78FE9238707E03D90FE0017F5BEDE0
3F02F0140701070387C7FC9138F1C01F02F9148F010315CE9138FB800F02FF14DE6D15FC
ED00076D5DA24A1303027E5CA2027C1301023C5C023813003D287EA642>I<B539F01FFF
E0A30003D9C00F1300C690388007F8D97F0013E002805BD93FC05B011F49C7FC90380FE0
0EECF01E6D6C5A01035B6D6C5A6E5AEB00FF6E5A6E5A81141F814A7E81147BECF1FC9038
01E1FEECC0FF01037F49486C7ED90F007F011E6D7E013E130F496D7E01FC80486C80000F
4A7EB539803FFFF8A32D277FA630>I<B539E00FFFE0A32707FE000313006C48EB01FC6F
5A00015D7F00005DA2017F495AA2EC8003013F5CA26D6C48C7FCA26E5A010F130EA26D6C
5AA2ECF83C01031338A26D6C5AA2ECFEF001005BA2EC7FC0A36E5AA36EC8FCA2140EA214
1E141C143C1438A2147800181370127EB45BA2495AA248485AD87E07C9FCEA780EEA3C3C
EA1FF8EA07E02B3A7EA630>I<001FB61280A2EBE0000180140049485A001E495A121C4A
5A003C495A141F00385C4A5A147F5D4AC7FCC6485AA2495A495A130F5C495A90393FC003
80A2EB7F80EBFF005A5B484813071207491400485A48485BA248485B4848137F00FF495A
90B6FCA221277EA628>I<B812F0A22C0280982D>I<BE12C0A25A0280985B>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fv cmbx12 20.736 12
/Fv 12 120 df<BDFC1CFEF4FFC01DF81DFF1EC01EF08AC7003F49C9000F14FE09018075
6C800A1F807680768076807680A27680A2777FA2208089A320C0A289A565A22080A45314
00A29AB55AA2525C6764525C525C525C525C5249C7FC51B55A090714F0093F14C00807B6
C8FC93BA12F81DC0651DFCF5FF801EF04CCA14FC0A3F13FF0A0F800A0314E076807614FC
777F777F2080897714C020E0A27714F0A220F88920FCA47714FEA96520FCA45314F8A265
20F06520E05314C0659AB61280521500525C1C0F5214F899B65A09075DC05A9CC7FC1EFC
1EF01EC053C8FC1DE00AF8C9FC777679F58A>66 D<BDFC1CFCF4FFC01DF81DFF1EC01EF8
8AC7003F91C96C14FF090315C0E1007F800A0F14F80A03800A00800B3F7F778077807780
0B018077808C8A787F787FA278808D8A8D8A8D8A8DA28D8AA28DA28BA28DA42280A38BA3
22C0B22280A367A32200A4699CB5FCA269A3545CA2696669666966695491C7FC6668545B
9BB55A65535C535C535C0B3F5C9AB6C8FC5214FC0A0F5C0A3F5C0903B612C0097F5DBF48
C9FC1EF81EE01E800BFCCAFC1DE052CBFC99CCFC82767AF594>68
D<96267FFFE01670063FB6ED01F80503B700F01403053F04FC14074CB96C130F040706E0
131F043F72133F93BA00FC137F0303DC00076D13FF030F03C09039003FFF814B02FCC800
0713C3037F02E0030113F792B600806F6CB5FC02034ACA121F4A02F8834A02E0834A4A17
01027F4A8391B548CC7E494A85495C4C854988494A85494A85495C8A4991CDFC90B54886
A2484A1B7FA2481E3F5D481E1F5D5A1F0FA2485CA3481E075DA2795A489BC9FCA45DA2B6
FCB27EA26F0403BA12C0A47EA3816C96C8000302F8C7FCA36C80A36C80A27E817E817E81
7F6D80827F6D806D806D80826D6E606D806E80021F6E5F6E02F05F6E806E02FE5F0200DA
FFC05E6F02F04BB6FC031F02FE030713CF6FDAFFE0021F138703039226FF8003B5120103
0093B6EAFC00043F4E133F040706E0131F04014E1307DC003F4CC71201050304F8EC0070
DD003F038092C8FCDE007F01F0CCFC827A75F798>71 D<903801FFFCB6FCA8C67E131F7F
B3ADF0FFFC050FEBFFE0057F14FE0403B77E040F16E0043F16F84CD9007F13FE9226FDFF
F001077F92B500C001018094C86C13E004FC6F7F4C6F7F04E06F7F4C6F7F5E747F93C915
804B7014C0A27414E0A21DF087A21DF8A31DFC87A41DFEAF1DFCA4631DF8A31DF098B5FC
1DE0A25014C0A26F1980501400705D705F704B5B505B704B5B04FC4B5BDBE7FE92B55A92
26C3FF8001035C038101E0011F49C7FC9226807FFC90B55A4B6CB712F04A010F16C04A01
0393C8FC4A010015F84A023F14C090C9000301F0C9FC5F797AF76C>98
D<93387FFF80030FB512FC037FECFF804AB712E0020716F8021F16FE027FD9F8077F49B5
D8C000804991C7003F13E04901FC020F7F49496E7F49498049496E7F49496E7F90B55A48
727E92C914804884485B1BC048841BE0485BA27313F05AA25C5AA21BF885A2B5FCA391BA
FCA41BF002F8CCFCA67EA3807EA47E806CF103F0F207F86C7F1A0F6C6E17F06C191F6F17
E06C6E163F6D6DEE7FC06D6D16FF6D6D4B13806D6D4B13006D6D6CEC0FFE6D02E0EC3FFC
6D02F8ECFFF86D9126FFC00F5B023F91B65A020F178002034CC7FC020016F8031F15E003
0392C8FCDB000F13E04D507BCE58>101 D<F37F80922607FFFC913807FFE092B600E001
1F13F8020703FC017F13FC021FDBFF01B512FE027F16C349B800F7EBBFFF49DA803F9038
FFF83F010F9026FC000714C04901F00101EC007F49496D148049496E6D7E90B517E04B6E
15FE48F1F01F4891C86C9038F80FFCF307F098C7FC48496F7FA34885AB6C61A36C6D4B5B
A36C6E4A5B6C616F5C6D606D6D91B55A6D6D4991C8FC6D01FC01075B9226FF803F13F893
B65A4917C0D93F1F93C9FC020715FCD97E0015E0030701FCCAFC01FE90CDFCA412017FA2
80A280808014FE6C90B812C019FF1AF01AFC6DF0FF801BE06D851BFC6D856D856D1A806D
1AC05B011F1AE0137F48BC12F0000701FCC9FC4801E0040314F84849EE007F4849171F91
CB1207487313FC5B00FF855B86A56D60007F1BF86D60A26C6D4D13F06E5F6C6D4D13E06C
6D4D13C06C01FC94B512806C01FF04031400C602C0030F13FC6D01F8037F5B011FD9FFE0
011FB512E0010791B8128001014EC7FC6D6C17F8020F17C0DA007F03F8C8FC03014AC9FC
58727BCE61>103 D<903801FFFCB6FCA8C67E131F7FB3AD95380FFFE095B512FE05036E
7E050F15E0053F15F84D81932701FFF01F7F4CD900077FDC07FC6D80DC0FF06D80DC1FC0
7F4C48824CC8FC047E6F7F5EEDFDF85E03FF707F5EA25EA25EA293C9FCA45DB3B3A6B8D8
E003B81280A8617879F76C>I<EB01FCEB07FF011F13C0497F497F90B57EA24880A24880
A76C5CA26C5CA26D5B6D5B6D5B010790C8FCEB01FC90CAFCB2903801FFFC007FB5FCA8C6
7E131F7FB3B3B3A5B81280A8297979F835>I<902601FFF891380FFFE0B692B512FE0503
6E7E050F15E0053F15F84D81932701FFF01F7F4CD900077FDC07FC6D80C66CDA0FF06D80
011FDA1FC07F6D4A48824CC8FC047E6F7F5EEDF9F85E03FB707F5E15FF5EA25EA293C9FC
A45DB3B3A6B8D8E003B81280A8614E79CD6C>110 D<15FFA75CA55CA45CA25CA25CA25C
A25C91B5FCA25B5B5B131F5B90B9FC120FBAFCA6D8000791C9FCB3B3A3F01FE0AE183F70
14C07F187F7014806D16FF826D4B13006E6D485AEEFE0F6E90B55A020F5D6E5D020115C0
6E6C5C031F49C7FC030113F03B6E7CEC4B>116 D<DAFFFE933803FFF8B60303B6FCA8C6
6CEE0001011F717E6D84B3B3A862A497B5FCA261A2616D5F1ADF6F150F6DEF1F9F073F80
6D6EDA7F1F13FF6D6ED901FEEDFF8070EB07FC023F01FEEB3FF86E90B612F06E16C00203
16800200EDFE00031F14F80300028003C0C7FC614F79CD6C>I<B7D8FE01B700F00103B6
12E0A8D8003F01FCC8003F01E0C80007EBE0006D0B0090C7FC6F6F6D5DA26D666F6F6D15
036D66701A07737F6D667070150F6D4D60701A1F876D4D607071143F6E4C60701A7F886E
4C607003BF6D14FF6E04FF95C8FC6670031F7F6E4B60704A6C6D130318036E640580496C
6D13076E03076005C0180F4F6C7F6E030F6005E0496C6D131F6E031F6005F0183F4F6C14
806F023F6005F8496DEBC07F6F027F6005FC18FF4F6D7F6F02FF95C9FC7190C76C13F16F
90B55F1DF34E6E13FB6F624E6E13FFA26F624E806F62A24E806F624E807061A24E817061
4E817096CAFCA295C97E70604D160F0407604D16077048705A834E7CCC8C>119
D E
%EndDVIPSBitmapFont
end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 600dpi
TeXDict begin
%%PaperSize: A4

%%EndSetup
%%Page: 1 1
1 0 bop 150 1318 a Fv(Debugging)64 b(with)i(GDB)p 150
1418 3600 34 v 2453 1515 a Fu(The)30 b Ft(gnu)g Fu(Source-Lev)m(el)h
(Debugger)2012 1732 y(Sev)m(en)m(th)g(Edition,)e(for)h(GDB)i(v)m
(ersion)d(19990707)3180 1840 y(F)-8 b(ebruary)30 b(1999)150
5091 y Fs(Ric)l(hard)45 b(M.)g(Stallman)h(and)f(Roland)g(H.)h(P)l(esc)l
(h)p 150 5141 3600 17 v eop
%%Page: 2 2
2 1 bop 1147 408 a Fu(\(Send)30 b(bugs)f(and)h(commen)m(ts)h(on)g(GDB)g
(to)g(bug-gdb@prep.ai.mit.edu.\))2912 518 y Fr(Debugging)g(with)i(GDB)
3194 628 y Fu(T)3245 647 y(E)3295 628 y(Xinfo)d(2.257)150
3579 y(Cop)m(yrigh)m(t)602 3576 y(c)577 3579 y Fq(\015)g
Fu(1988-1999)k(F)-8 b(ree)32 b(Soft)m(w)m(are)f(F)-8
b(oundation,)31 b(Inc.)150 3933 y(Published)c(b)m(y)j(the)h(F)-8
b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation)150 4042
y(59)31 b(T)-8 b(emple)30 b(Place)h(-)f(Suite)g(330,)150
4152 y(Boston,)i(MA)e(02111-1307)35 b(USA)150 4261 y(Prin)m(ted)29
b(copies)h(are)h(a)m(v)-5 b(ailable)30 b(for)g($20)i(eac)m(h.)150
4371 y(ISBN)e(1-882114-11-6)150 4615 y(P)m(ermission)g(is)i(gran)m(ted)
h(to)f(mak)m(e)i(and)d(distribute)f(v)m(erbatim)i(copies)g(of)g(this)f
(man)m(ual)h(pro)m(vided)f(the)150 4725 y(cop)m(yrigh)m(t)g(notice)f
(and)g(this)f(p)s(ermission)f(notice)i(are)h(preserv)m(ed)f(on)h(all)e
(copies.)150 4859 y(P)m(ermission)36 b(is)i(gran)m(ted)g(to)h(cop)m(y)g
(and)f(distribute)e(mo)s(di\014ed)g(v)m(ersions)h(of)i(this)e(man)m
(ual)g(under)g(the)150 4969 y(conditions)j(for)i(v)m(erbatim)g(cop)m
(ying,)j(pro)m(vided)40 b(also)i(that)h(the)f(en)m(tire)g(resulting)e
(deriv)m(ed)h(w)m(ork)h(is)150 5078 y(distributed)27
b(under)i(the)i(terms)f(of)h(a)f(p)s(ermission)e(notice)i(iden)m(tical)
f(to)j(this)d(one.)150 5213 y(P)m(ermission)i(is)i(gran)m(ted)g(to)h
(cop)m(y)g(and)f(distribute)d(translations)i(of)i(this)e(man)m(ual)g
(in)m(to)h(another)g(lan-)150 5322 y(guage,)f(under)d(the)h(ab)s(o)m(v)
m(e)i(conditions)d(for)h(mo)s(di\014ed)e(v)m(ersions.)p
eop
%%Page: 1 3
1 2 bop 150 -116 a Fu(Summary)29 b(of)h(GDB)2836 b(1)150
299 y Fp(Summary)53 b(of)g(GDB)275 527 y Fu(The)27 b(purp)s(ose)f(of)i
(a)g(debugger)f(suc)m(h)h(as)g(GDB)h(is)e(to)h(allo)m(w)f(y)m(ou)h(to)h
(see)f(what)g(is)f(going)h(on)f(\\inside")150 636 y(another)32
b(program)f(while)e(it)i(executes|or)i(what)e(another)h(program)f(w)m
(as)h(doing)f(at)h(the)f(momen)m(t)h(it)150 746 y(crashed.)40
b(W)-8 b(e)32 b(call)e(the)g(other)h(program)f(\\y)m(our)h(program,")g
(or)f(\\the)h(program)f(b)s(eing)f(debugged.")275 879
y(GDB)36 b(can)g(do)f(four)g(main)g(kinds)e(of)j(things)e(\(plus)g
(other)i(things)e(in)g(supp)s(ort)g(of)i(these\))g(to)g(help)150
989 y(y)m(ou)31 b(catc)m(h)h(bugs)d(in)g(the)i(act:)225
1122 y Fq(\017)60 b Fu(Start)31 b(y)m(our)f(program,)g(sp)s(ecifying)f
(an)m(ything)g(that)i(migh)m(t)f(a\013ect)i(its)e(b)s(eha)m(vior.)225
1255 y Fq(\017)60 b Fu(Mak)m(e)32 b(y)m(our)e(program)g(stop)h(on)f(sp)
s(eci\014ed)f(conditions.)225 1388 y Fq(\017)60 b Fu(Examine)30
b(what)g(has)g(happ)s(ened,)f(when)g(y)m(our)h(program)h(has)f(stopp)s
(ed.)225 1521 y Fq(\017)60 b Fu(Change)35 b(things)e(in)g(y)m(our)i
(program,)g(so)g(y)m(ou)g(can)g(exp)s(erimen)m(t)f(with)f(correcting)i
(the)g(e\013ects)h(of)330 1631 y(one)31 b(bug)e(and)h(go)h(on)g(to)g
(learn)e(ab)s(out)h(another.)275 1788 y(Y)-8 b(ou)30
b(can)h(use)f(GDB)i(to)f(debug)f(programs)g(written)f(in)h(C)g(and)f(C)
p Fo(++)p Fu(.)40 b(F)-8 b(or)32 b(more)e(information,)f(see)150
1897 y(Section)f(9.4)i([Supp)s(orted)c(languages],)j(page)g(75.)41
b(F)-8 b(or)29 b(more)g(information,)e(see)i(Section)f(9.4.1)i([C)f
(and)150 2007 y(C)p Fo(++)p Fu(],)h(page)h(75.)275 2140
y(Supp)s(ort)19 b(for)i(Mo)s(dula-2)f(and)h(Chill)d(is)i(partial.)37
b(F)-8 b(or)22 b(information)d(on)i(Mo)s(dula-2,)i(see)f(Section)f
(9.4.2)150 2250 y([Mo)s(dula-2],)31 b(page)g(80.)42 b(F)-8
b(or)31 b(information)d(on)j(Chill,)c(see)k(Section)f(9.4.3)i([Chill],)
c(page)k(85.)275 2383 y(Debugging)27 b(P)m(ascal)h(programs)f(whic)m(h)
f(use)h(sets,)i(subranges,)e(\014le)g(v)-5 b(ariables,)27
b(or)g(nested)g(functions)150 2493 y(do)s(es)35 b(not)h(curren)m(tly)e
(w)m(ork.)56 b(GDB)37 b(do)s(es)e(not)h(supp)s(ort)d(en)m(tering)j
(expressions,)f(prin)m(ting)f(v)-5 b(alues,)36 b(or)150
2602 y(similar)28 b(features)i(using)f(P)m(ascal)i(syn)m(tax.)275
2736 y(GDB)h(can)f(b)s(e)g(used)g(to)h(debug)e(programs)h(written)f(in)
g(F)-8 b(ortran,)33 b(although)e(It)g(ma)m(y)h(b)s(e)f(necessary)150
2845 y(to)g(refer)f(to)h(some)g(v)-5 b(ariables)29 b(with)g(a)i
(trailing)d(underscore.)275 2978 y(GDB)c(can)g(b)s(e)f(used)g(to)h
(debug)f(programs)g(written)g(in)f(Ob)5 b(jectiv)m(e-C)23
b(and)g(in)g(Ob)5 b(jectiv)m(e-C)p Fo(++)p Fu(,)24 b(using)150
3088 y(either)30 b(the)g(Apple/NeXT)g(or)h(the)f(GNU)h(Ob)5
b(jectiv)m(e-C)31 b(run)m(time.)150 3341 y Fs(F)-11 b(ree)45
b(soft)l(w)l(are)275 3533 y Fu(GDB)36 b(is)f Fn(free)g(soft)m(w)m(are)p
Fu(,)k(protected)d(b)m(y)g(the)f Ft(gnu)h Fu(General)f(Public)e
(License)j(\(GPL\).)g(The)f(GPL)150 3642 y(giv)m(es)k(y)m(ou)h(the)f
(freedom)f(to)i(cop)m(y)g(or)f(adapt)g(a)g(licensed)f(program|but)g(ev)
m(ery)h(p)s(erson)f(getting)i(a)150 3752 y(cop)m(y)35
b(also)g(gets)h(with)d(it)i(the)g(freedom)f(to)i(mo)s(dify)d(that)i
(cop)m(y)g(\(whic)m(h)f(means)h(that)g(they)g(m)m(ust)g(get)150
3862 y(access)g(to)f(the)f(source)h(co)s(de\),)h(and)d(the)i(freedom)f
(to)h(distribute)d(further)h(copies.)49 b(T)m(ypical)32
b(soft)m(w)m(are)150 3971 y(companies)38 b(use)f(cop)m(yrigh)m(ts)i(to)
f(limit)e(y)m(our)i(freedoms;)k(the)c(F)-8 b(ree)39 b(Soft)m(w)m(are)g
(F)-8 b(oundation)38 b(uses)g(the)150 4081 y(GPL)30 b(to)h(preserv)m(e)
g(these)g(freedoms.)275 4214 y(F)-8 b(undamen)m(tally)g(,)34
b(the)g(General)g(Public)d(License)j(is)f(a)h(license)f(whic)m(h)f(sa)m
(ys)j(that)f(y)m(ou)g(ha)m(v)m(e)h(these)150 4324 y(freedoms)30
b(and)g(that)h(y)m(ou)g(cannot)g(tak)m(e)g(these)g(freedoms)f(a)m(w)m
(a)m(y)j(from)d(an)m(y)m(one)h(else.)150 4577 y Fs(Con)l(tributors)46
b(to)f(GDB)275 4768 y Fu(Ric)m(hard)34 b(Stallman)h(w)m(as)h(the)g
(original)e(author)i(of)g(GDB,)h(and)e(of)h(man)m(y)g(other)g
Ft(gnu)g Fu(programs.)150 4878 y(Man)m(y)g(others)g(ha)m(v)m(e)h(con)m
(tributed)e(to)h(its)f(dev)m(elopmen)m(t.)57 b(This)34
b(section)i(attempts)g(to)h(credit)e(ma)5 b(jor)150 4988
y(con)m(tributors.)59 b(One)36 b(of)g(the)h(virtues)f(of)g(free)h(soft)
m(w)m(are)h(is)e(that)h(ev)m(ery)m(one)h(is)e(free)h(to)g(con)m
(tribute)f(to)150 5097 y(it;)31 b(with)e(regret,)j(w)m(e)f(cannot)g
(actually)g(ac)m(kno)m(wledge)h(ev)m(ery)m(one)g(here.)42
b(The)30 b(\014le)g(`)p Fo(ChangeLog)p Fu(')e(in)i(the)150
5207 y(GDB)h(distribution)c(appro)m(ximates)k(a)f(blo)m(w-b)m(y-blo)m
(w)g(accoun)m(t.)275 5340 y(Changes)g(m)m(uc)m(h)g(prior)f(to)i(v)m
(ersion)f(2.0)h(are)g(lost)f(in)f(the)i(mists)e(of)i(time.)p
eop
%%Page: 2 4
2 3 bop 150 -116 a Fu(2)2689 b(Debugging)31 b(with)e(GDB)390
299 y Fr(Ple)-5 b(a:)45 b Fu(Additions)27 b(to)i(this)e(section)i(are)g
(particularly)d(w)m(elcome.)41 b(If)28 b(y)m(ou)h(or)g(y)m(our)f
(friends)390 403 y(\(or)36 b(enemies,)h(to)g(b)s(e)e(ev)m(enhanded\))h
(ha)m(v)m(e)h(b)s(een)f(unfairly)d(omitted)j(from)f(this)g(list,)h(w)m
(e)390 506 y(w)m(ould)29 b(lik)m(e)h(to)h(add)f(y)m(our)g(names!)275
642 y(So)c(that)g(they)h(ma)m(y)f(not)h(regard)f(their)f(man)m(y)h(lab)
s(ors)f(as)h(thankless,)g(w)m(e)h(particularly)d(thank)h(those)150
752 y(who)34 b(shepherded)f(GDB)j(through)e(ma)5 b(jor)35
b(releases:)49 b(Jim)33 b(Blandy)h(\(release)h(4.18\);)k(Jason)c
(Molenda)150 861 y(\(release)40 b(4.17\);)46 b(Stan)40
b(Shebs)e(\(release)i(4.14\);)46 b(F)-8 b(red)40 b(Fish)e(\(releases)i
(4.16,)k(4.15,)f(4.13,)h(4.12,)f(4.11,)150 971 y(4.10,)34
b(and)e(4.9\);)i(Stu)d(Grossman)h(and)f(John)h(Gilmore)f(\(releases)h
(4.8,)i(4.7,)f(4.6,)h(4.5,)g(and)d(4.4\);)k(John)150
1081 y(Gilmore)c(\(releases)i(4.3,)g(4.2,)h(4.1,)g(4.0,)g(and)d(3.9\);)
k(Jim)c(Kingdon)f(\(releases)j(3.5,)h(3.4,)f(and)f(3.3\);)j(and)150
1190 y(Randy)30 b(Smith)e(\(releases)j(3.2,)h(3.1,)g(and)d(3.0\).)275
1326 y(Ric)m(hard)47 b(Stallman,)52 b(assisted)d(at)g(v)-5
b(arious)48 b(times)g(b)m(y)h(P)m(eter)g(T)-8 b(erMaat,)56
b(Chris)46 b(Hanson,)54 b(and)150 1436 y(Ric)m(hard)29
b(Mlynarik,)g(handled)g(releases)h(through)g(2.8.)275
1571 y(Mic)m(hael)25 b(Tiemann)e(is)i(the)g(author)g(of)g(most)h(of)f
(the)g Ft(gnu)g Fu(C)p Fo(++)f Fu(supp)s(ort)g(in)g(GDB,)i(with)e
(signi\014can)m(t)150 1681 y(additional)35 b(con)m(tributions)h(from)g
(P)m(er)i(Bothner.)61 b(James)37 b(Clark)f(wrote)i(the)f
Ft(gnu)g Fu(C)p Fo(++)f Fu(demangler.)150 1790 y(Early)27
b(w)m(ork)h(on)g(C)p Fo(++)f Fu(w)m(as)h(b)m(y)g(P)m(eter)h(T)-8
b(erMaat)30 b(\(who)e(also)g(did)e(m)m(uc)m(h)i(general)g(up)s(date)f
(w)m(ork)h(leading)150 1900 y(to)j(release)g(3.0\).)275
2036 y(GDB)k(4)g(uses)f(the)g(BFD)i(subroutine)c(library)g(to)j
(examine)f(m)m(ultiple)e(ob)5 b(ject-\014le)35 b(formats;)i(BFD)150
2145 y(w)m(as)29 b(a)h(join)m(t)e(pro)5 b(ject)30 b(of)f(Da)m(vid)g(V.)
g(Henk)m(el-W)-8 b(allace,)32 b(Ric)m(h)c(Pixley)-8 b(,)29
b(Stev)m(e)h(Cham)m(b)s(erlain,)c(and)j(John)150 2255
y(Gilmore.)275 2391 y(Da)m(vid)d(Johnson)e(wrote)j(the)f(original)e
(COFF)i(supp)s(ort;)g(P)m(ace)h(Willison)c(did)h(the)j(original)d(supp)
s(ort)150 2500 y(for)30 b(encapsulated)g(COFF.)275 2636
y(Bren)m(t)h(Benson)f(of)h(Harris)e(Computer)g(Systems)h(con)m
(tributed)g(D)m(W)-10 b(ARF)32 b(2)f(supp)s(ort.)275
2772 y(Adam)22 b(de)h(Bo)s(or)g(and)f(Bradley)g(Da)m(vis)h(con)m
(tributed)f(the)h(ISI)f(Optim)m(um)f(V)i(supp)s(ort.)36
b(P)m(er)24 b(Bothner,)150 2882 y(Nob)s(o)m(yuki)39 b(Hikic)m(hi,)h
(and)e(Alessandro)h(F)-8 b(orin)39 b(con)m(tributed)f(MIPS)h(supp)s
(ort.)66 b(Jean-Daniel)39 b(F)-8 b(ek)m(ete)150 2991
y(con)m(tributed)40 b(Sun)g(386i)h(supp)s(ort.)71 b(Chris)39
b(Hanson)i(impro)m(v)m(ed)f(the)h(HP9000)i(supp)s(ort.)71
b(Nob)s(o)m(yuki)150 3101 y(Hikic)m(hi)36 b(and)g(T)-8
b(omo)m(yuki)37 b(Hasei)h(con)m(tributed)e(Son)m(y/News)i(OS)e(3)i
(supp)s(ort.)60 b(Da)m(vid)37 b(Johnson)f(con-)150 3210
y(tributed)43 b(Encore)i(Umax)g(supp)s(ort.)82 b(Jyrki)44
b(Kuoppala)f(con)m(tributed)h(Altos)h(3068)i(supp)s(ort.)82
b(Je\013)150 3320 y(La)m(w)38 b(con)m(tributed)e(HP)h(P)-8
b(A)38 b(and)f(SOM)g(supp)s(ort.)59 b(Keith)37 b(P)m(ac)m(k)-5
b(ard)38 b(con)m(tributed)f(NS32K)g(supp)s(ort.)150 3429
y(Doug)47 b(Rabson)e(con)m(tributed)g(Acorn)h(Risc)f(Mac)m(hine)h(supp)
s(ort.)86 b(Bob)46 b(Rusk)f(con)m(tributed)g(Harris)150
3539 y(Nigh)m(tha)m(wk)40 b(CX-UX)h(supp)s(ort.)68 b(Chris)38
b(Smith)g(con)m(tributed)h(Con)m(v)m(ex)i(supp)s(ort)d(\(and)i(F)-8
b(ortran)41 b(de-)150 3649 y(bugging\).)70 b(Jonathan)41
b(Stone)f(con)m(tributed)g(Pyramid)f(supp)s(ort.)69 b(Mic)m(hael)41
b(Tiemann)e(con)m(tributed)150 3758 y(SP)-8 b(AR)m(C)32
b(supp)s(ort.)45 b(Tim)31 b(T)-8 b(uc)m(k)m(er)34 b(con)m(tributed)d
(supp)s(ort)g(for)h(the)g(Gould)g(NP1)h(and)e(Gould)h(P)m(o)m(w)m(ern-)
150 3868 y(o)s(de.)65 b(P)m(ace)40 b(Willison)c(con)m(tributed)i(In)m
(tel)g(386)i(supp)s(ort.)64 b(Ja)m(y)39 b(V)-8 b(osburgh)38
b(con)m(tributed)g(Symmetry)150 3977 y(supp)s(ort.)275
4113 y(Andreas)29 b(Sc)m(h)m(w)m(ab)i(con)m(tributed)f(M68K)h(Lin)m(ux)
e(supp)s(ort.)275 4249 y(Ric)m(h)g(Sc)m(haefer)i(and)f(P)m(eter)h(Sc)m
(hauer)g(help)s(ed)d(with)h(supp)s(ort)g(of)h(SunOS)e(shared)i
(libraries.)275 4385 y(Ja)m(y)40 b(F)-8 b(enlason)41
b(and)e(Roland)h(McGrath)h(ensured)e(that)i(GDB)g(and)f(GAS)g(agree)i
(ab)s(out)e(sev)m(eral)150 4494 y(mac)m(hine)30 b(instruction)e(sets.)
275 4630 y(P)m(atric)m(k)39 b(Duv)-5 b(al,)42 b(T)-8
b(ed)39 b(Goldstein,)h(Vikram)e(Kok)-5 b(a)40 b(and)e(Glenn)g(Engel)h
(help)s(ed)e(dev)m(elop)i(remote)150 4740 y(debugging.)51
b(In)m(tel)34 b(Corp)s(oration,)g(Wind)e(Riv)m(er)i(Systems,)h(AMD,)g
(and)e(ARM)i(con)m(tributed)e(remote)150 4849 y(debugging)c(mo)s(dules)
g(for)h(the)h(i960,)g(VxW)-8 b(orks,)31 b(A29K)g(UDI,)g(and)f(RDI)h
(targets,)h(resp)s(ectiv)m(ely)-8 b(.)275 4985 y(Brian)39
b(F)-8 b(o)m(x)42 b(is)d(the)h(author)g(of)g(the)g(readline)f
(libraries)e(pro)m(viding)h(command-line)h(editing)g(and)150
5095 y(command)30 b(history)-8 b(.)275 5230 y(Andrew)31
b(Beers)i(of)g(SUNY)g(Bu\013alo)g(wrote)g(the)g(language-switc)m(hing)f
(co)s(de,)i(the)e(Mo)s(dula-2)h(sup-)150 5340 y(p)s(ort,)d(and)g(con)m
(tributed)f(the)i(Languages)g(c)m(hapter)g(of)g(this)e(man)m(ual.)p
eop
%%Page: 3 5
3 4 bop 150 -116 a Fu(Summary)29 b(of)h(GDB)2836 b(3)275
299 y(F)-8 b(red)46 b(Fish)g(wrote)h(most)g(of)g(the)g(supp)s(ort)e
(for)i(Unix)e(System)i(V)-8 b(r4.)90 b(He)48 b(also)e(enhanced)h(the)
150 408 y(command-completion)30 b(supp)s(ort)e(to)k(co)m(v)m(er)g(C)p
Fo(++)d Fu(o)m(v)m(erloaded)i(sym)m(b)s(ols.)275 543
y(Hitac)m(hi)e(America,)g(Ltd.)40 b(sp)s(onsored)28 b(the)h(supp)s(ort)
f(for)h(H8/300,)j(H8/500,)g(and)c(Sup)s(er-H)g(pro)s(ces-)150
653 y(sors.)275 787 y(NEC)i(sp)s(onsored)f(the)h(supp)s(ort)f(for)h
(the)g(v850,)i(V)-8 b(r4xxx,)31 b(and)f(V)-8 b(r5xxx)31
b(pro)s(cessors.)275 922 y(Mitsubishi)c(sp)s(onsored)h(the)j(supp)s
(ort)e(for)h(D10V,)i(D30V,)g(and)e(M32R/D)i(pro)s(cessors.)275
1056 y(T)-8 b(oshiba)29 b(sp)s(onsored)g(the)h(supp)s(ort)f(for)h(the)h
(TX39)g(Mips)e(pro)s(cessor.)275 1191 y(Matsushita)h(sp)s(onsored)f
(the)h(supp)s(ort)f(for)h(the)h(MN10200)i(and)c(MN10300)34
b(pro)s(cessors.)275 1325 y(F)-8 b(ujitsu)29 b(sp)s(onsored)g(the)h
(supp)s(ort)f(for)h(SP)-8 b(AR)m(Clite)30 b(and)g(FR30)h(pro)s(cessors)
275 1460 y(Kung)e(Hsu,)h(Je\013)h(La)m(w,)g(and)e(Ric)m(k)i(Sladk)m(ey)
e(added)h(supp)s(ort)f(for)h(hardw)m(are)g(w)m(atc)m(hp)s(oin)m(ts.)275
1594 y(Mic)m(hael)g(Sn)m(yder)f(added)h(supp)s(ort)e(for)j(tracep)s
(oin)m(ts.)275 1729 y(Stu)e(Grossman)h(wrote)h(gdbserv)m(er.)275
1863 y(Jim)i(Kingdon,)h(P)m(eter)i(Sc)m(hauer,)g(Ian)e(T)-8
b(a)m(ylor,)36 b(and)e(Stu)g(Grossman)h(made)g(nearly)e(inn)m(umerable)
150 1973 y(bug)d(\014xes)g(and)g(clean)m(ups)f(throughout)h(GDB.)275
2107 y(The)e(follo)m(wing)f(p)s(eople)h(at)h(the)g(Hewlett-P)m(ac)m(k)
-5 b(ard)31 b(Compan)m(y)d(con)m(tributed)g(supp)s(ort)f(for)h(the)h(P)
-8 b(A-)150 2217 y(RISC)26 b(2.0)j(arc)m(hitecture,)g(HP-UX)f(10.20,)j
(10.30,)f(and)d(11.0)i(\(narro)m(w)e(mo)s(de\),)i(HP's)e(implemen)m
(tation)150 2326 y(of)e(k)m(ernel)f(threads,)i(HP's)e(aC)p
Fo(++)g Fu(compiler,)h(and)f(the)h(terminal)e(user)h(in)m(terface:)38
b(Ben)25 b(Krepp,)g(Ric)m(hard)150 2436 y(Title,)32 b(John)g(Bishop,)g
(Susan)f(Macc)m(hia,)k(Kath)m(y)d(Mann,)h(Satish)f(P)m(ai,)h(India)e(P)
m(aul,)i(Stev)m(e)g(Rehrauer,)150 2545 y(and)d(Elena)g(Zannoni.)38
b(Kim)29 b(Haase)j(pro)m(vided)d(HP-sp)s(eci\014c)h(information)e(in)h
(this)h(man)m(ual.)275 2680 y(Cygn)m(us)j(Solutions)f(has)i(sp)s
(onsored)e(GDB)j(main)m(tenance)f(and)g(m)m(uc)m(h)g(of)g(its)f(dev)m
(elopmen)m(t)i(since)150 2790 y(1991.)55 b(Cygn)m(us)34
b(engineers)g(who)g(ha)m(v)m(e)i(w)m(ork)m(ed)f(on)g(GDB)h(fulltime)c
(include)g(Mark)j(Alexander,)g(Jim)150 2899 y(Blandy)-8
b(,)36 b(P)m(er)g(Bothner,)g(Edith)e(Epstein,)h(Chris)e(F)-8
b(a)m(ylor,)38 b(F)-8 b(red)36 b(Fish,)f(Martin)g(Hun)m(t,)h(Jim)e
(Ingham,)150 3009 y(John)j(Gilmore,)h(Stu)f(Grossman,)i(Kung)e(Hsu,)i
(Jim)d(Kingdon,)i(John)f(Metzler,)j(F)-8 b(ernando)37
b(Nasser,)150 3118 y(Geo\013rey)24 b(No)s(er,)h(Da)m(wn)e(P)m(erc)m
(hik,)i(Ric)m(h)d(Pixley)-8 b(,)24 b(Zdenek)e(Radouc)m(h,)i(Keith)f
(Seitz,)h(Stan)f(Shebs,)g(Da)m(vid)150 3228 y(T)-8 b(a)m(ylor,)28
b(and)f(Elena)g(Zannoni.)38 b(In)27 b(addition,)f(Da)m(v)m(e)k(Brolley)
-8 b(,)27 b(Ian)h(Carmic)m(hael,)f(Stev)m(e)h(Cham)m(b)s(erlain,)150
3337 y(Nic)m(k)d(Clifton,)g(JT)f(Conklin,)f(Stan)i(Co)m(x,)i(DJ)e
(Delorie,)h(Ulric)m(h)d(Drepp)s(er,)i(F)-8 b(rank)25
b(Eigler,)g(Doug)h(Ev)-5 b(ans,)150 3447 y(Sean)22 b(F)-8
b(agan,)25 b(Da)m(vid)d(Henk)m(el-W)-8 b(allace,)25 b(Ric)m(hard)c
(Henderson,)i(Je\013)f(Holcom)m(b,)i(Je\013)e(La)m(w,)i(Jim)d(Lemk)m
(e,)150 3557 y(T)-8 b(om)27 b(Lord,)g(Bob)g(Manson,)g(Mic)m(hael)g
(Meissner,)f(Jason)h(Merrill,)e(Catherine)h(Mo)s(ore,)i(Drew)f(Moseley)
-8 b(,)150 3666 y(Ken)41 b(Raeburn,)i(Ga)m(vin)f(Romig-Ko)s(c)m(h,)j
(Rob)c(Sa)m(v)m(o)m(y)m(e,)47 b(Jamie)41 b(Smith,)i(Mik)m(e)f(Stump,)h
(Ian)e(T)-8 b(a)m(ylor,)150 3776 y(Angela)26 b(Thomas,)h(Mic)m(hael)f
(Tiemann,)g(T)-8 b(om)26 b(T)-8 b(romey)g(,)28 b(Ron)e(Unrau,)h(Jim)d
(Wilson,)i(and)g(Da)m(vid)g(Zuhn)150 3885 y(ha)m(v)m(e)32
b(made)e(con)m(tributions)f(b)s(oth)g(large)i(and)f(small.)p
eop
%%Page: 4 6
4 5 bop 150 -116 a Fu(4)2689 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 5 7
5 6 bop 150 -116 a Fu(Chapter)30 b(1:)41 b(A)30 b(Sample)g(GDB)h
(Session)2153 b(5)150 299 y Fp(1)80 b(A)54 b(Sample)g(GDB)f(Session)275
509 y Fu(Y)-8 b(ou)39 b(can)h(use)f(this)f(man)m(ual)h(at)h(y)m(our)f
(leisure)f(to)i(read)f(all)f(ab)s(out)h(GDB.)i(Ho)m(w)m(ev)m(er,)j(a)39
b(handful)150 618 y(of)33 b(commands)e(are)i(enough)f(to)h(get)h
(started)f(using)e(the)h(debugger.)46 b(This)31 b(c)m(hapter)i
(illustrates)d(those)150 728 y(commands.)275 858 y(In)25
b(this)g(sample)h(session,)h(w)m(e)f(emphasize)g(user)g(input)f(lik)m
(e)g(this:)38 b Fm(input)p Fu(,)26 b(to)i(mak)m(e)f(it)f(easier)g(to)h
(pic)m(k)150 967 y(out)k(from)f(the)g(surrounding)d(output.)275
1097 y(One)42 b(of)i(the)f(preliminary)d(v)m(ersions)j(of)g
Ft(gnu)g Fo(m4)g Fu(\(a)h(generic)f(macro)h(pro)s(cessor\))f(exhibits)f
(the)150 1206 y(follo)m(wing)22 b(bug:)37 b(sometimes,)25
b(when)d(w)m(e)i(c)m(hange)h(its)e(quote)h(strings)e(from)i(the)f
(default,)i(the)e(commands)150 1316 y(used)i(to)h(capture)f(one)h
(macro)g(de\014nition)d(within)g(another)i(stop)h(w)m(orking.)38
b(In)25 b(the)h(follo)m(wing)d(short)j Fo(m4)150 1426
y Fu(session,)j(w)m(e)h(de\014ne)e(a)i(macro)g Fo(foo)e
Fu(whic)m(h)g(expands)g(to)i Fo(0000)p Fu(;)f(w)m(e)h(then)f(use)g(the)
g Fo(m4)g Fu(built-in)d Fo(defn)i Fu(to)150 1535 y(de\014ne)i
Fo(bar)f Fu(as)i(the)g(same)g(thing.)40 b(Ho)m(w)m(ev)m(er,)33
b(when)c(w)m(e)i(c)m(hange)h(the)e(op)s(en)g(quote)h(string)f(to)h
Fo(<QUOTE>)150 1645 y Fu(and)c(the)h(close)g(quote)g(string)f(to)h
Fo(<UNQUOTE>)p Fu(,)e(the)i(same)g(pro)s(cedure)f(fails)f(to)i
(de\014ne)f(a)h(new)f(synon)m(ym)150 1754 y Fo(baz)p
Fu(:)390 1878 y Fo($)47 b Fm(cd)31 b(gn)m(u/m4)390 1982
y Fo($)47 b Fm(./m4)390 2086 y(de\014ne\(fo)s(o,0000\))390
2293 y(fo)s(o)390 2397 y Fo(0000)390 2501 y Fm(de\014ne\(bar,defn\(`fo)
s(o'\)\))390 2708 y(bar)390 2812 y Fo(0000)390 2916 y
Fm(c)m(hangequote\()p Fo(<)p Fm(QUOTE)p Fo(>)p Fm(,)p
Fo(<)p Fm(UNQUOTE)p Fo(>)p Fm(\))390 3123 y(de\014ne\(baz,defn\()p
Fo(<)p Fm(QUOTE)p Fo(>)p Fm(fo)s(o)p Fo(<)p Fm(UNQUOTE)p
Fo(>)p Fm(\)\))390 3227 y(baz)390 3331 y(C-d)390 3435
y Fo(m4:)g(End)g(of)g(input:)f(0:)h(fatal)g(error:)f(EOF)h(in)g(string)
150 3564 y Fu(Let)31 b(us)f(use)g(GDB)h(to)g(try)f(to)i(see)f(what)f
(is)f(going)i(on.)390 3688 y Fo($)47 b Fm(gdb)30 b(m4)390
3792 y Fo(GDB)47 b(is)g(free)g(software)e(and)i(you)g(are)g(welcome)f
(to)h(distribute)e(copies)438 3896 y(of)i(it)g(under)f(certain)g
(conditions;)f(type)i("show)f(copying")g(to)h(see)438
4000 y(the)g(conditions.)390 4103 y(There)f(is)i(absolutely)d(no)i
(warranty)e(for)i(GDB;)g(type)f("show)h(warranty")438
4207 y(for)g(details.)390 4415 y(GDB)g(19990707,)e(Copyright)g(1999)i
(Free)g(Software)e(Foundation,)g(Inc...)390 4519 y(\(gdb\))150
4648 y Fu(GDB)40 b(reads)e(only)g(enough)g(sym)m(b)s(ol)f(data)i(to)h
(kno)m(w)e(where)g(to)h(\014nd)e(the)i(rest)g(when)e(needed;)43
b(as)c(a)150 4758 y(result,)28 b(the)h(\014rst)f(prompt)g(comes)h(up)f
(v)m(ery)h(quic)m(kly)-8 b(.)39 b(W)-8 b(e)30 b(no)m(w)f(tell)e(GDB)j
(to)g(use)e(a)h(narro)m(w)m(er)g(displa)m(y)150 4867
y(width)g(than)h(usual,)f(so)h(that)h(examples)f(\014t)g(in)g(this)f
(man)m(ual.)390 4991 y Fo(\(gdb\))46 b Fm(set)31 b(width)f(70)150
5121 y Fu(W)-8 b(e)35 b(need)e(to)i(see)f(ho)m(w)g(the)g
Fo(m4)f Fu(built-in)e Fo(changequote)f Fu(w)m(orks.)51
b(Ha)m(ving)34 b(lo)s(ok)m(ed)g(at)h(the)e(source,)i(w)m(e)150
5230 y(kno)m(w)k(the)g(relev)-5 b(an)m(t)39 b(subroutine)d(is)i
Fo(m4_changequote)p Fu(,)f(so)i(w)m(e)g(set)h(a)f(breakp)s(oin)m(t)e
(there)i(with)f(the)150 5340 y(GDB)31 b Fo(break)e Fu(command.)p
eop
%%Page: 6 8
6 7 bop 150 -116 a Fu(6)2689 b(Debugging)31 b(with)e(GDB)390
299 y Fo(\(gdb\))46 b Fm(break)31 b(m4)p 1057 299 28
5 v 33 w(c)m(hangequote)390 403 y Fo(Breakpoint)45 b(1)i(at)h(0x62f4:)d
(file)i(builtin.c,)e(line)i(879.)150 547 y Fu(Using)32
b(the)g Fo(run)g Fu(command,)h(w)m(e)g(start)g Fo(m4)f
Fu(running)e(under)h(GDB)i(con)m(trol;)i(as)d(long)h(as)f(con)m(trol)h
(do)s(es)150 657 y(not)e(reac)m(h)g(the)f Fo(m4_changequote)d
Fu(subroutine,)h(the)j(program)f(runs)f(as)h(usual:)390
796 y Fo(\(gdb\))46 b Fm(run)390 900 y Fo(Starting)g(program:)f
(/work/Editorial/gdb/gnu/m)o(4/m)o(4)390 1004 y Fm(de\014ne\(fo)s
(o,0000\))390 1211 y(fo)s(o)390 1315 y Fo(0000)150 1460
y Fu(T)-8 b(o)28 b(trigger)f(the)g(breakp)s(oin)m(t,)g(w)m(e)g(call)g
Fo(changequote)p Fu(.)36 b(GDB)28 b(susp)s(ends)d(execution)i(of)g
Fo(m4)p Fu(,)h(displa)m(ying)150 1569 y(information)h(ab)s(out)h(the)g
(con)m(text)j(where)c(it)h(stops.)390 1708 y Fm(c)m(hangequote\()p
Fo(<)p Fm(QUOTE)p Fo(>)p Fm(,)p Fo(<)p Fm(UNQUOTE)p Fo(>)p
Fm(\))390 1916 y Fo(Breakpoint)45 b(1,)i(m4_changequote)d(\(argc=3,)i
(argv=0x33c70\))581 2020 y(at)h(builtin.c:879)390 2124
y(879)429 b(if)47 b(\(bad_argc\(TOKEN_DATA_TEX)o(T\(ar)o(gv[)o(0]\),)o
(argc)o(,1,)o(3\)\))150 2268 y Fu(No)m(w)38 b(w)m(e)f(use)g(the)h
(command)e Fo(n)h Fu(\()p Fo(next)p Fu(\))g(to)h(adv)-5
b(ance)37 b(execution)h(to)g(the)f(next)g(line)f(of)h(the)g(curren)m(t)
150 2378 y(function.)390 2517 y Fo(\(gdb\))46 b Fm(n)390
2621 y Fo(882)429 b(set_quotes\(\(argc)43 b(>=)k(2\))g(?)h
(TOKEN_DATA_TEXT\(argv[1]\))o(\\)438 2725 y(:)f(nil,)150
2869 y(set_quotes)28 b Fu(lo)s(oks)i(lik)m(e)h(a)g(promising)e
(subroutine.)40 b(W)-8 b(e)32 b(can)f(go)h(in)m(to)f(it)f(b)m(y)h
(using)e(the)j(command)e Fo(s)150 2979 y Fu(\()p Fo(step)p
Fu(\))h(instead)g(of)h Fo(next)p Fu(.)43 b Fo(step)31
b Fu(go)s(es)h(to)g(the)g(next)g(line)e(to)i(b)s(e)f(executed)i(in)d
Fr(any)40 b Fu(subroutine,)31 b(so)g(it)150 3089 y(steps)f(in)m(to)h
Fo(set_quotes)p Fu(.)390 3228 y Fo(\(gdb\))46 b Fm(s)390
3331 y Fo(set_quotes)f(\(lq=0x34c78)g("<QUOTE>",)g(rq=0x34c88)g
("<UNQUOTE>"\))581 3435 y(at)i(input.c:530)390 3539 y(530)429
b(if)47 b(\(lquote)f(!=)h(def_lquote\))150 3684 y Fu(The)34
b(displa)m(y)e(that)j(sho)m(ws)f(the)g(subroutine)f(where)g
Fo(m4)h Fu(is)f(no)m(w)i(susp)s(ended)c(\(and)j(its)g(argumen)m(ts\))h
(is)150 3793 y(called)30 b(a)i(stac)m(k)g(frame)f(displa)m(y)-8
b(.)42 b(It)31 b(sho)m(ws)g(a)h(summary)e(of)h(the)g(stac)m(k.)45
b(W)-8 b(e)32 b(can)f(use)g(the)g Fo(backtrace)150 3903
y Fu(command)g(\(whic)m(h)g(can)h(also)f(b)s(e)g(sp)s(elled)e
Fo(bt)p Fu(\),)j(to)g(see)g(where)f(w)m(e)h(are)g(in)e(the)i(stac)m(k)h
(as)f(a)g(whole:)42 b(the)150 4013 y Fo(backtrace)28
b Fu(command)i(displa)m(ys)e(a)j(stac)m(k)h(frame)e(for)g(eac)m(h)i
(activ)m(e)g(subroutine.)390 4152 y Fo(\(gdb\))46 b Fm(bt)390
4255 y Fo(#0)95 b(set_quotes)45 b(\(lq=0x34c78)g("<QUOTE>",)g
(rq=0x34c88)g("<UNQUOTE>"\))581 4359 y(at)i(input.c:530)390
4463 y(#1)95 b(0x6344)46 b(in)h(m4_changequote)d(\(argc=3,)i
(argv=0x33c70\))581 4567 y(at)h(builtin.c:882)390 4670
y(#2)95 b(0x8174)46 b(in)h(expand_macro)e(\(sym=0x33320\))f(at)j
(macro.c:242)390 4774 y(#3)95 b(0x7a88)46 b(in)h(expand_token)e
(\(obs=0x0,)g(t=209696,)g(td=0xf7fffa30\))581 4878 y(at)i(macro.c:71)
390 4982 y(#4)95 b(0x79dc)46 b(in)h(expand_input)e(\(\))i(at)g
(macro.c:40)390 5086 y(#5)95 b(0x2930)46 b(in)h(main)g(\(argc=0,)e
(argv=0xf7fffb20\))f(at)j(m4.c:195)150 5230 y Fu(W)-8
b(e)29 b(step)f(through)g(a)g(few)g(more)g(lines)e(to)j(see)g(what)e
(happ)s(ens.)39 b(The)27 b(\014rst)g(t)m(w)m(o)j(times,)e(w)m(e)g(can)h
(use)f(`)p Fo(s)p Fu(';)150 5340 y(the)j(next)f(t)m(w)m(o)i(times)e(w)m
(e)h(use)f Fo(n)g Fu(to)h(a)m(v)m(oid)g(falling)d(in)m(to)i(the)h
Fo(xstrdup)d Fu(subroutine.)p eop
%%Page: 7 9
7 8 bop 150 -116 a Fu(Chapter)30 b(1:)41 b(A)30 b(Sample)g(GDB)h
(Session)2153 b(7)390 299 y Fo(\(gdb\))46 b Fm(s)390
403 y Fo(0x3b5c)94 b(532)429 b(if)47 b(\(rquote)f(!=)h(def_rquote\))390
506 y(\(gdb\))f Fm(s)390 610 y Fo(0x3b80)94 b(535)429
b(lquote)46 b(=)h(\(lq)g(==)g(nil)g(||)g(*lq)g(==)g('\\0'\))g(?)95
b(\\)390 714 y(def_lquote)45 b(:)i(xstrdup\(lq\);)390
818 y(\(gdb\))f Fm(n)390 922 y Fo(536)429 b(rquote)46
b(=)h(\(rq)g(==)g(nil)g(||)g(*rq)g(==)h('\\0'\))e(?)h(def_rquote\\)438
1025 y(:)g(xstrdup\(rq\);)390 1129 y(\(gdb\))f Fm(n)390
1233 y Fo(538)429 b(len_lquote)45 b(=)i(strlen\(rquote\);)150
1368 y Fu(The)28 b(last)g(line)f(displa)m(y)m(ed)g(lo)s(oks)h(a)h
(little)e(o)s(dd;)h(w)m(e)h(can)g(examine)f(the)h(v)-5
b(ariables)27 b Fo(lquote)g Fu(and)h Fo(rquote)150 1477
y Fu(to)33 b(see)g(if)f(they)g(are)h(in)e(fact)j(the)e(new)g(left)h
(and)e(righ)m(t)h(quotes)h(w)m(e)g(sp)s(eci\014ed.)46
b(W)-8 b(e)33 b(use)f(the)h(command)150 1587 y Fo(p)d
Fu(\()p Fo(print)p Fu(\))g(to)h(see)g(their)e(v)-5 b(alues.)390
1716 y Fo(\(gdb\))46 b Fm(p)30 b(lquote)390 1820 y Fo($1)47
b(=)h(0x35d40)d("<QUOTE>")390 1924 y(\(gdb\))h Fm(p)30
b(rquote)390 2028 y Fo($2)47 b(=)h(0x35d50)d("<UNQUOTE>")150
2163 y(lquote)29 b Fu(and)h Fo(rquote)f Fu(are)j(indeed)d(the)i(new)f
(left)h(and)f(righ)m(t)g(quotes.)43 b(T)-8 b(o)31 b(lo)s(ok)g(at)g
(some)g(con)m(text,)i(w)m(e)150 2272 y(can)e(displa)m(y)d(ten)j(lines)d
(of)j(source)f(surrounding)e(the)i(curren)m(t)g(line)f(with)g(the)i
Fo(l)f Fu(\()p Fo(list)p Fu(\))g(command.)390 2401 y
Fo(\(gdb\))46 b Fm(l)390 2505 y Fo(533)620 b(xfree\(rquote\);)390
2609 y(534)390 2713 y(535)429 b(lquote)46 b(=)h(\(lq)g(==)g(nil)g(||)g
(*lq)g(==)h('\\0'\))e(?)h(def_lquote\\)438 2817 y(:)g(xstrdup)f
(\(lq\);)390 2920 y(536)429 b(rquote)46 b(=)h(\(rq)g(==)g(nil)g(||)g
(*rq)g(==)h('\\0'\))e(?)h(def_rquote\\)438 3024 y(:)g(xstrdup)f
(\(rq\);)390 3128 y(537)390 3232 y(538)429 b(len_lquote)45
b(=)i(strlen\(rquote\);)390 3335 y(539)429 b(len_rquote)45
b(=)i(strlen\(lquote\);)390 3439 y(540)238 b(})390 3543
y(541)390 3647 y(542)g(void)150 3782 y Fu(Let)29 b(us)f(step)g(past)h
(the)g(t)m(w)m(o)h(lines)c(that)j(set)g Fo(len_lquote)d
Fu(and)i Fo(len_rquote)p Fu(,)e(and)i(then)h(examine)f(the)150
3891 y(v)-5 b(alues)30 b(of)g(those)h(v)-5 b(ariables.)390
4021 y Fo(\(gdb\))46 b Fm(n)390 4124 y Fo(539)429 b(len_rquote)45
b(=)i(strlen\(lquote\);)390 4228 y(\(gdb\))f Fm(n)390
4332 y Fo(540)238 b(})390 4436 y(\(gdb\))46 b Fm(p)30
b(len)p 880 4436 28 5 v 33 w(lquote)390 4539 y Fo($3)47
b(=)h(9)390 4643 y(\(gdb\))e Fm(p)30 b(len)p 880 4643
V 33 w(rquote)390 4747 y Fo($4)47 b(=)h(7)150 4882 y
Fu(That)38 b(certainly)f(lo)s(oks)g(wrong,)i(assuming)d
Fo(len_lquote)f Fu(and)i Fo(len_rquote)e Fu(are)k(mean)m(t)f(to)h(b)s
(e)e(the)150 4992 y(lengths)c(of)h Fo(lquote)e Fu(and)h
Fo(rquote)f Fu(resp)s(ectiv)m(ely)-8 b(.)51 b(W)-8 b(e)35
b(can)f(set)g(them)g(to)g(b)s(etter)g(v)-5 b(alues)33
b(using)f(the)i Fo(p)150 5101 y Fu(command,)f(since)f(it)g(can)h(prin)m
(t)e(the)i(v)-5 b(alue)32 b(of)g(an)m(y)h(expression|and)e(that)i
(expression)e(can)i(include)150 5211 y(subroutine)28
b(calls)i(and)g(assignmen)m(ts.)390 5340 y Fo(\(gdb\))46
b Fm(p)30 b(len)p 880 5340 V 33 w(lquote=strlen\(lquote\))p
eop
%%Page: 8 10
8 9 bop 150 -116 a Fu(8)2689 b(Debugging)31 b(with)e(GDB)390
299 y Fo($5)47 b(=)h(7)390 403 y(\(gdb\))e Fm(p)30 b(len)p
880 403 28 5 v 33 w(rquote=strlen\(rquote\))390 506 y
Fo($6)47 b(=)h(9)150 641 y Fu(Is)24 b(that)g(enough)g(to)h(\014x)e(the)
i(problem)d(of)i(using)f(the)h(new)f(quotes)i(with)e(the)h
Fo(m4)f Fu(built-in)e Fo(defn)p Fu(?)37 b(W)-8 b(e)26
b(can)150 751 y(allo)m(w)i Fo(m4)h Fu(to)g(con)m(tin)m(ue)g(executing)g
(with)f(the)h Fo(c)f Fu(\()p Fo(continue)p Fu(\))g(command,)h(and)f
(then)h(try)f(the)h(example)150 860 y(that)i(caused)f(trouble)g
(initially:)390 989 y Fo(\(gdb\))46 b Fm(c)390 1093 y
Fo(Continuing.)390 1300 y Fm(de\014ne\(baz,defn\()p Fo(<)p
Fm(QUOTE)p Fo(>)p Fm(fo)s(o)p Fo(<)p Fm(UNQUOTE)p Fo(>)p
Fm(\)\))390 1508 y Fo(baz)390 1611 y(0000)150 1746 y
Fu(Success!)41 b(The)30 b(new)g(quotes)h(no)m(w)f(w)m(ork)h(just)f(as)g
(w)m(ell)g(as)g(the)h(default)f(ones.)41 b(The)30 b(problem)f(seems)h
(to)150 1856 y(ha)m(v)m(e)j(b)s(een)d(just)h(the)h(t)m(w)m(o)h(t)m(yp)s
(os)e(de\014ning)f(the)h(wrong)g(lengths.)44 b(W)-8 b(e)32
b(allo)m(w)f Fo(m4)g Fu(exit)g(b)m(y)h(giving)e(it)h(an)150
1965 y(EOF)f(as)h(input:)390 2094 y Fm(C-d)390 2198 y
Fo(Program)46 b(exited)g(normally.)150 2332 y Fu(The)35
b(message)h(`)p Fo(Program)29 b(exited)g(normally.)p
Fu(')k(is)h(from)h(GDB;)h(it)f(indicates)f Fo(m4)h Fu(has)g(\014nished)
e(exe-)150 2442 y(cuting.)40 b(W)-8 b(e)32 b(can)e(end)g(our)g(GDB)h
(session)f(with)f(the)i(GDB)g Fo(quit)e Fu(command.)390
2570 y Fo(\(gdb\))46 b Fm(quit)p eop
%%Page: 9 11
9 10 bop 150 -116 a Fu(Chapter)30 b(2:)41 b(Getting)31
b(In)f(and)f(Out)h(of)h(GDB)1971 b(9)150 299 y Fp(2)80
b(Getting)53 b(In)h(and)g(Out)f(of)h(GDB)275 595 y Fu(This)28
b(c)m(hapter)j(discusses)e(ho)m(w)h(to)h(start)g(GDB,)h(and)e(ho)m(w)g
(to)h(get)h(out)e(of)h(it.)40 b(The)30 b(essen)m(tials)g(are:)225
750 y Fq(\017)60 b Fu(t)m(yp)s(e)31 b(`)p Fo(gdb)p Fu(')f(to)h(start)g
(GDB.)225 895 y Fq(\017)60 b Fu(t)m(yp)s(e)31 b Fl(quit)e
Fu(or)h Fl(C-d)g Fu(to)h(exit.)150 1204 y Fs(2.1)68 b(In)l(v)l(oking)46
b(GDB)275 1417 y Fu(In)m(v)m(ok)m(e)37 b(GDB)h(b)m(y)e(running)d(the)j
(program)g Fo(gdb)p Fu(.)58 b(Once)36 b(started,)i(GDB)g(reads)e
(commands)f(from)150 1527 y(the)c(terminal)d(un)m(til)h(y)m(ou)i(tell)e
(it)h(to)h(exit.)275 1682 y(Y)-8 b(ou)32 b(can)h(also)f(run)e
Fo(gdb)i Fu(with)e(a)j(v)-5 b(ariet)m(y)32 b(of)h(argumen)m(ts)f(and)g
(options,)g(to)h(sp)s(ecify)d(more)j(of)f(y)m(our)150
1791 y(debugging)d(en)m(vironmen)m(t)h(at)h(the)g(outset.)275
1946 y(The)h(command-line)f(options)h(describ)s(ed)e(here)j(are)g
(designed)e(to)j(co)m(v)m(er)g(a)f(v)-5 b(ariet)m(y)33
b(of)g(situations;)150 2056 y(in)c(some)i(en)m(vironmen)m(ts,)f(some)h
(of)f(these)h(options)f(ma)m(y)h(e\013ectiv)m(ely)g(b)s(e)f(una)m(v)-5
b(ailable.)275 2211 y(The)31 b(most)i(usual)d(w)m(a)m(y)j(to)g(start)g
(GDB)g(is)e(with)g(one)h(argumen)m(t,)i(sp)s(ecifying)29
b(an)j(executable)h(pro-)150 2321 y(gram:)390 2470 y
Fo(gdb)47 b Fn(program)150 2625 y Fu(Y)-8 b(ou)31 b(can)g(also)f(start)
h(with)e(b)s(oth)h(an)g(executable)h(program)f(and)g(a)g(core)i(\014le)
d(sp)s(eci\014ed:)390 2774 y Fo(gdb)47 b Fn(program)g(core)275
2930 y Fu(Y)-8 b(ou)37 b(can,)j(instead,)f(sp)s(ecify)d(a)h(pro)s(cess)
g(ID)h(as)g(a)f(second)h(argumen)m(t,)i(if)c(y)m(ou)i(w)m(an)m(t)g(to)g
(debug)f(a)150 3039 y(running)28 b(pro)s(cess:)390 3188
y Fo(gdb)47 b Fn(program)g Fo(1234)150 3344 y Fu(w)m(ould)34
b(attac)m(h)k(GDB)e(to)h(pro)s(cess)e Fo(1234)f Fu(\(unless)g(y)m(ou)i
(also)g(ha)m(v)m(e)g(a)g(\014le)f(named)g(`)p Fo(1234)p
Fu(';)j(GDB)e(do)s(es)150 3453 y(c)m(hec)m(k)c(for)e(a)h(core)g(\014le)
e(\014rst\).)275 3608 y(T)-8 b(aking)32 b(adv)-5 b(an)m(tage)36
b(of)d(the)g(second)h(command-line)d(argumen)m(t)j(requires)e(a)i
(fairly)d(complete)j(op-)150 3718 y(erating)f(system;)h(when)d(y)m(ou)i
(use)g(GDB)g(as)g(a)g(remote)h(debugger)e(attac)m(hed)i(to)g(a)f(bare)f
(b)s(oard,)h(there)150 3827 y(ma)m(y)e(not)g(b)s(e)e(an)m(y)i(notion)f
(of)g(\\pro)s(cess",)h(and)f(there)h(is)e(often)i(no)f(w)m(a)m(y)i(to)f
(get)g(a)g(core)g(dump.)275 3983 y(Y)-8 b(ou)48 b(can)g(run)e
Fo(gdb)h Fu(without)g(prin)m(ting)e(the)j(fron)m(t)g(material,)k(whic)m
(h)46 b(describ)s(es)g(GDB's)j(non-)150 4092 y(w)m(arran)m(t)m(y)-8
b(,)32 b(b)m(y)e(sp)s(ecifying)f Fo(-silent)p Fu(:)390
4241 y Fo(gdb)47 b(-silent)150 4397 y Fu(Y)-8 b(ou)37
b(can)g(further)f(con)m(trol)h(ho)m(w)g(GDB)g(starts)g(up)f(b)m(y)h
(using)e(command-line)g(options.)59 b(GDB)38 b(itself)150
4506 y(can)31 b(remind)d(y)m(ou)j(of)f(the)h(options)f(a)m(v)-5
b(ailable.)150 4661 y(T)m(yp)s(e)390 4811 y Fo(gdb)47
b(-help)150 4966 y Fu(to)34 b(displa)m(y)d(all)g(a)m(v)-5
b(ailable)32 b(options)g(and)h(brie\015y)e(describ)s(e)g(their)h(use)g
(\(`)p Fo(gdb)e(-h)p Fu(')j(is)e(a)j(shorter)e(equiv)-5
b(a-)150 5075 y(len)m(t\).)275 5230 y(All)22 b(options)i(and)f(command)
h(line)f(argumen)m(ts)h(y)m(ou)h(giv)m(e)g(are)f(pro)s(cessed)g(in)f
(sequen)m(tial)g(order.)38 b(The)150 5340 y(order)30
b(mak)m(es)h(a)g(di\013erence)f(when)f(the)i(`)p Fo(-x)p
Fu(')f(option)g(is)f(used.)p eop
%%Page: 10 12
10 11 bop 150 -116 a Fu(10)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fk(2.1.1)63 b(Cho)s(osing)43 b(\014les)275 502
y Fu(When)22 b(GDB)j(starts,)g(it)e(reads)f(an)m(y)i(argumen)m(ts)f
(other)h(than)f(options)f(as)h(sp)s(ecifying)e(an)i(executable)150
612 y(\014le)28 b(and)g(core)i(\014le)e(\(or)i(pro)s(cess)e(ID\).)i
(This)d(is)h(the)h(same)h(as)f(if)f(the)h(argumen)m(ts)g(w)m(ere)h(sp)s
(eci\014ed)d(b)m(y)i(the)150 722 y(`)p Fo(-se)p Fu(')k(and)g(`)p
Fo(-c)p Fu(')h(options)f(resp)s(ectiv)m(ely)-8 b(.)50
b(\(GDB)35 b(reads)e(the)h(\014rst)f(argumen)m(t)h(that)g(do)s(es)f
(not)h(ha)m(v)m(e)h(an)150 831 y(asso)s(ciated)30 b(option)f(\015ag)g
(as)h(equiv)-5 b(alen)m(t)28 b(to)i(the)g(`)p Fo(-se)p
Fu(')f(option)g(follo)m(w)m(ed)g(b)m(y)g(that)h(argumen)m(t;)g(and)f
(the)150 941 y(second)k(argumen)m(t)g(that)g(do)s(es)f(not)h(ha)m(v)m
(e)h(an)e(asso)s(ciated)h(option)f(\015ag,)i(if)d(an)m(y)-8
b(,)35 b(as)d(equiv)-5 b(alen)m(t)32 b(to)i(the)150 1050
y(`)p Fo(-c)p Fu(')c(option)g(follo)m(w)m(ed)g(b)m(y)g(that)h(argumen)m
(t.\))275 1196 y(If)24 b(GDB)i(has)e(not)i(b)s(een)e(con\014gured)g(to)
h(included)e(core)i(\014le)f(supp)s(ort,)h(suc)m(h)f(as)h(for)g(most)g
(em)m(b)s(edded)150 1305 y(targets,)32 b(then)e(it)g(will)e(complain)h
(ab)s(out)h(a)g(second)h(argumen)m(t)g(and)f(ignore)f(it.)275
1451 y(Man)m(y)42 b(options)e(ha)m(v)m(e)j(b)s(oth)d(long)h(and)g
(short)g(forms;)47 b(b)s(oth)40 b(are)i(sho)m(wn)f(in)f(the)h(follo)m
(wing)f(list.)150 1561 y(GDB)28 b(also)e(recognizes)h(the)g(long)f
(forms)g(if)f(y)m(ou)i(truncate)g(them,)g(so)g(long)f(as)h(enough)f(of)
g(the)h(option)f(is)150 1670 y(presen)m(t)31 b(to)h(b)s(e)f(unam)m
(biguous.)41 b(\(If)32 b(y)m(ou)f(prefer,)g(y)m(ou)h(can)f(\015ag)h
(option)e(argumen)m(ts)i(with)e(`)p Fo(--)p Fu(')h(rather)150
1780 y(than)f(`)p Fo(-)p Fu(',)h(though)f(w)m(e)h(illustrate)d(the)j
(more)g(usual)d(con)m(v)m(en)m(tion.\))150 1956 y Fo(-symbols)g
Fn(\014le)150 2065 y Fo(-s)i Fn(\014le)237 b Fu(Read)31
b(sym)m(b)s(ol)e(table)h(from)g(\014le)f Fn(\014le)p
Fu(.)150 2236 y Fo(-exec)g Fn(\014le)150 2345 y Fo(-e)h
Fn(\014le)237 b Fu(Use)21 b(\014le)e Fn(\014le)25 b Fu(as)c(the)f
(executable)i(\014le)d(to)i(execute)h(when)e(appropriate,)h(and)f(for)g
(examining)630 2455 y(pure)29 b(data)i(in)e(conjunction)h(with)f(a)i
(core)g(dump.)150 2625 y Fo(-se)e Fn(\014le)190 b Fu(Read)31
b(sym)m(b)s(ol)e(table)h(from)g(\014le)f Fn(\014le)35
b Fu(and)30 b(use)g(it)g(as)g(the)h(executable)g(\014le.)150
2795 y Fo(-core)e Fn(\014le)150 2905 y Fo(-c)h Fn(\014le)237
b Fu(Use)31 b(\014le)e Fn(\014le)35 b Fu(as)30 b(a)h(core)g(dump)e(to)i
(examine.)150 3075 y Fo(-c)f Fn(n)m(um)m(b)s(er)630 3185
y Fu(Connect)k(to)g(pro)s(cess)g(ID)f Fn(n)m(um)m(b)s(er)p
Fu(,)h(as)g(with)e(the)i Fo(attach)e Fu(command)i(\(unless)e(there)i
(is)630 3295 y(a)d(\014le)e(in)g(core-dump)g(format)i(named)e
Fn(n)m(um)m(b)s(er)p Fu(,)g(in)g(whic)m(h)g(case)i(`)p
Fo(-c)p Fu(')f(sp)s(eci\014es)f(that)i(\014le)630 3404
y(as)g(a)f(core)i(dump)c(to)j(read\).)150 3575 y Fo(-command)d
Fn(\014le)150 3684 y Fo(-x)i Fn(\014le)237 b Fu(Execute)48
b(GDB)h(commands)e(from)g(\014le)g Fn(\014le)p Fu(.)91
b(See)47 b(Section)h(15.3)h([Command)d(\014les],)630
3794 y(page)31 b(145.)150 3964 y Fo(-directory)d Fn(directory)150
4074 y Fo(-d)i Fn(directory)630 4183 y Fu(Add)f Fn(directory)38
b Fu(to)31 b(the)g(path)f(to)h(searc)m(h)g(for)f(source)h(\014les.)150
4354 y Fo(-m)150 4463 y(-mapped)144 b Fr(Warning:)52
b(this)38 b(option)g(dep)-5 b(ends)39 b(on)f(op)-5 b(er)g(ating)40
b(system)e(facilities)f(that)i(ar)-5 b(e)38 b(not)g(sup-)630
4573 y(p)-5 b(orte)g(d)35 b(on)e(al)5 b(l)33 b(systems.)630
4682 y Fu(If)d(memory-mapp)s(ed)e(\014les)h(are)i(a)m(v)-5
b(ailable)29 b(on)h(y)m(our)g(system)g(through)g(the)g
Fo(mmap)f Fu(system)630 4792 y(call,)d(y)m(ou)f(can)g(use)f(this)g
(option)h(to)g(ha)m(v)m(e)h(GDB)g(write)e(the)h(sym)m(b)s(ols)f(from)g
(y)m(our)h(program)630 4902 y(in)m(to)g(a)h(reusable)f(\014le)f(in)h
(the)g(curren)m(t)h(directory)-8 b(.)39 b(If)25 b(the)g(program)h(y)m
(ou)g(are)f(debugging)g(is)630 5011 y(called)j(`)p Fo(/tmp/fred)p
Fu(',)f(the)i(mapp)s(ed)e(sym)m(b)s(ol)g(\014le)g(is)h(`)p
Fo(./fred.syms)p Fu('.)38 b(F)-8 b(uture)28 b(GDB)i(de-)630
5121 y(bugging)c(sessions)g(notice)h(the)g(presence)g(of)g(this)e
(\014le,)i(and)g(can)g(quic)m(kly)e(map)i(in)e(sym)m(b)s(ol)630
5230 y(information)k(from)h(it,)h(rather)g(than)f(reading)g(the)h(sym)m
(b)s(ol)e(table)i(from)f(the)h(executable)630 5340 y(program.)p
eop
%%Page: 11 13
11 12 bop 150 -116 a Fu(Chapter)30 b(2:)41 b(Getting)31
b(In)f(and)f(Out)h(of)h(GDB)1925 b(11)630 299 y(The)39
b(`)p Fo(.syms)p Fu(')f(\014le)g(is)g(sp)s(eci\014c)g(to)i(the)f(host)h
(mac)m(hine)f(where)f(GDB)i(is)f(run.)65 b(It)39 b(holds)630
408 y(an)33 b(exact)h(image)f(of)h(the)f(in)m(ternal)e(GDB)j(sym)m(b)s
(ol)e(table.)48 b(It)33 b(cannot)h(b)s(e)e(shared)g(across)630
518 y(m)m(ultiple)c(host)j(platforms.)150 679 y Fo(-r)150
789 y(-readnow)96 b Fu(Read)21 b(eac)m(h)g(sym)m(b)s(ol)e(\014le's)h
(en)m(tire)g(sym)m(b)s(ol)f(table)h(immediately)-8 b(,)22
b(rather)e(than)g(the)g(default,)630 898 y(whic)m(h)36
b(is)g(to)h(read)g(it)f(incremen)m(tally)g(as)h(it)f(is)g(needed.)60
b(This)35 b(mak)m(es)j(startup)f(slo)m(w)m(er,)630 1008
y(but)30 b(mak)m(es)h(future)e(op)s(erations)h(faster.)275
1170 y(The)i Fo(-mapped)f Fu(and)i Fo(-readnow)d Fu(options)j(are)g(t)m
(ypically)f(com)m(bined)g(in)g(order)h(to)g(build)d(a)k(`)p
Fo(.syms)p Fu(')150 1280 y(\014le)i(that)i(con)m(tains)f(complete)h
(sym)m(b)s(ol)e(information.)59 b(\(See)38 b(Section)f(12.1)h
([Commands)e(to)i(sp)s(ecify)150 1389 y(\014les],)33
b(page)g(101,)h(for)f(information)e(on)h(`)p Fo(.syms)p
Fu(')g(\014les.\))46 b(A)33 b(simple)d(GDB)k(in)m(v)m(o)s(cation)e(to)i
(do)e(nothing)150 1499 y(but)e(build)d(a)k(`)p Fo(.syms)p
Fu(')e(\014le)h(for)g(future)f(use)h(is:)390 1629 y Fo(gdb)47
b(-batch)f(-nx)h(-mapped)f(-readnow)f(programname)150
1857 y Fk(2.1.2)63 b(Cho)s(osing)43 b(mo)s(des)275 2051
y Fu(Y)-8 b(ou)36 b(can)g(run)f(GDB)i(in)d(v)-5 b(arious)35
b(alternativ)m(e)i(mo)s(des|for)e(example,)i(in)e(batc)m(h)h(mo)s(de)g
(or)g(quiet)150 2161 y(mo)s(de.)150 2323 y Fo(-nx)150
2432 y(-n)384 b Fu(Do)21 b(not)g(execute)g(commands)f(from)g(an)m(y)h
(initialization)c(\014les)i(\(normally)g(called)g(`)p
Fo(.gdbinit)p Fu(',)630 2542 y(or)25 b(`)p Fo(gdb.ini)p
Fu(')g(on)g(PCs\).)39 b(Normally)-8 b(,)26 b(the)f(commands)h(in)e
(these)i(\014les)e(are)i(executed)g(after)630 2651 y(all)h(the)h
(command)g(options)f(and)h(argumen)m(ts)g(ha)m(v)m(e)h(b)s(een)f(pro)s
(cessed.)39 b(See)29 b(Section)e(15.3)630 2761 y([Command)j(\014les],)f
(page)j(145.)150 2922 y Fo(-quiet)150 3032 y(-q)384 b
Fu(\\Quiet".)58 b(Do)37 b(not)f(prin)m(t)f(the)h(in)m(tro)s(ductory)f
(and)h(cop)m(yrigh)m(t)g(messages.)59 b(These)36 b(mes-)630
3141 y(sages)31 b(are)g(also)f(suppressed)f(in)g(batc)m(h)i(mo)s(de.)
150 3302 y Fo(-batch)192 b Fu(Run)31 b(in)g(batc)m(h)i(mo)s(de.)46
b(Exit)32 b(with)f(status)h Fo(0)g Fu(after)h(pro)s(cessing)e(all)g
(the)i(command)f(\014les)630 3412 y(sp)s(eci\014ed)f(with)h(`)p
Fo(-x)p Fu(')h(\(and)g(all)f(commands)h(from)f(initialization)e
(\014les,)j(if)f(not)h(inhibited)630 3522 y(with)g(`)p
Fo(-n)p Fu('\).)54 b(Exit)34 b(with)f(nonzero)i(status)g(if)e(an)i
(error)f(o)s(ccurs)g(in)f(executing)i(the)g(GDB)630 3631
y(commands)30 b(in)f(the)i(command)f(\014les.)630 3767
y(Batc)m(h)25 b(mo)s(de)e(ma)m(y)h(b)s(e)f(useful)e(for)j(running)c
(GDB)25 b(as)e(a)h(\014lter,)g(for)f(example)h(to)g(do)m(wnload)630
3876 y(and)h(run)f(a)j(program)e(on)h(another)g(computer;)h(in)e(order)
g(to)h(mak)m(e)h(this)e(more)h(useful,)f(the)630 3986
y(message)870 4115 y Fo(Program)46 b(exited)g(normally.)630
4251 y Fu(\(whic)m(h)40 b(is)f(ordinarily)e(issued)i(whenev)m(er)h(a)h
(program)f(running)e(under)h(GDB)i(con)m(trol)630 4360
y(terminates\))31 b(is)e(not)i(issued)d(when)i(running)d(in)i(batc)m(h)
i(mo)s(de.)150 4521 y Fo(-cd)e Fn(directory)630 4631
y Fu(Run)c(GDB)j(using)d Fn(directory)34 b Fu(as)27 b(its)f(w)m(orking)
f(directory)-8 b(,)28 b(instead)e(of)g(the)h(curren)m(t)g(direc-)630
4740 y(tory)-8 b(.)150 4902 y Fo(-fullname)150 5011 y(-f)384
b Ft(gnu)26 b Fu(Emacs)h(sets)f(this)g(option)f(when)h(it)g(runs)e(GDB)
k(as)e(a)h(subpro)s(cess.)38 b(It)26 b(tells)g(GDB)h(to)630
5121 y(output)34 b(the)i(full)c(\014le)i(name)h(and)f(line)f(n)m(um)m
(b)s(er)h(in)g(a)h(standard,)g(recognizable)g(fashion)630
5230 y(eac)m(h)h(time)f(a)h(stac)m(k)h(frame)e(is)f(displa)m(y)m(ed)g
(\(whic)m(h)h(includes)d(eac)m(h)37 b(time)e(y)m(our)g(program)630
5340 y(stops\).)53 b(This)33 b(recognizable)h(format)h(lo)s(oks)f(lik)m
(e)f(t)m(w)m(o)j(`)p Fo(\\032)p Fu(')e(c)m(haracters,)j(follo)m(w)m(ed)
d(b)m(y)p eop
%%Page: 12 14
12 13 bop 150 -116 a Fu(12)2644 b(Debugging)31 b(with)e(GDB)630
299 y(the)36 b(\014le)f(name,)j(line)c(n)m(um)m(b)s(er)h(and)g(c)m
(haracter)j(p)s(osition)c(separated)i(b)m(y)g(colons,)h(and)f(a)630
408 y(newline.)k(The)30 b(Emacs-to-GDB)k(in)m(terface)d(program)g(uses)
f(the)h(t)m(w)m(o)h(`)p Fo(\\032)p Fu(')e(c)m(haracters)630
518 y(as)h(a)f(signal)f(to)j(displa)m(y)c(the)j(source)f(co)s(de)h(for)
f(the)h(frame.)150 677 y Fo(-b)f Fn(bps)216 b Fu(Set)29
b(the)f(line)f(sp)s(eed)h(\(baud)g(rate)h(or)g(bits)e(p)s(er)g
(second\))i(of)g(an)m(y)g(serial)e(in)m(terface)i(used)f(b)m(y)630
787 y(GDB)j(for)g(remote)g(debugging.)150 946 y Fo(-tty)e
Fn(device)630 1056 y Fu(Run)g(using)g Fn(device)35 b
Fu(for)c(y)m(our)f(program's)g(standard)g(input)e(and)i(output.)150
1313 y Fs(2.2)68 b(Quitting)46 b(GDB)150 1581 y Fo(quit)288
b Fu(T)-8 b(o)38 b(exit)g(GDB,)h(use)f(the)g Fo(quit)f
Fu(command)g(\(abbreviated)h Fo(q)p Fu(\),)i(or)e(t)m(yp)s(e)g(an)g
(end-of-\014le)630 1690 y(c)m(haracter)d(\(usually)c
Fl(C-d)p Fu(\).)48 b(If)33 b(y)m(ou)g(do)g(not)h(supply)c
Fn(expression)p Fu(,)j(GDB)h(will)d(terminate)630 1800
y(normally;)d(otherwise)g(it)g(will)e(terminate)j(using)e(the)i(result)
f(of)h Fn(expression)e Fu(as)i(the)g(error)630 1910 y(co)s(de.)275
2094 y(An)k(in)m(terrupt)g(\(often)i Fl(C-c)p Fu(\))e(do)s(es)h(not)g
(exit)g(from)g(GDB,)h(but)e(rather)h(terminates)g(the)g(action)h(of)150
2203 y(an)m(y)g(GDB)i(command)d(that)i(is)e(in)g(progress)h(and)f
(returns)g(to)i(GDB)g(command)f(lev)m(el.)54 b(It)36
b(is)e(safe)h(to)150 2313 y(t)m(yp)s(e)29 b(the)f(in)m(terrupt)f(c)m
(haracter)j(at)f(an)m(y)g(time)f(b)s(ecause)g(GDB)i(do)s(es)e(not)h
(allo)m(w)f(it)g(to)h(tak)m(e)h(e\013ect)g(un)m(til)150
2423 y(a)h(time)f(when)f(it)h(is)g(safe.)275 2557 y(If)k(y)m(ou)h(ha)m
(v)m(e)i(b)s(een)d(using)f(GDB)j(to)g(con)m(trol)g(an)e(attac)m(hed)j
(pro)s(cess)e(or)g(device,)h(y)m(ou)f(can)h(release)150
2667 y(it)45 b(with)f(the)i Fo(detach)e Fu(command)h(\(see)h(Section)g
(4.7)g([Debugging)g(an)f(already-running)e(pro)s(cess],)150
2776 y(page)31 b(23\).)150 3034 y Fs(2.3)68 b(Shell)45
b(commands)275 3226 y Fu(If)31 b(y)m(ou)h(need)f(to)i(execute)g(o)s
(ccasional)f(shell)e(commands)h(during)f(y)m(our)h(debugging)g
(session,)h(there)150 3336 y(is)d(no)i(need)f(to)h(lea)m(v)m(e)h(or)e
(susp)s(end)e(GDB;)k(y)m(ou)e(can)h(just)f(use)g(the)h
Fo(shell)d Fu(command.)150 3545 y Fo(shell)h Fn(command)h(string)630
3655 y Fu(In)m(v)m(ok)m(e)24 b(a)g(standard)e(shell)f(to)j(execute)g
Fn(command)f(string)p Fu(.)37 b(If)22 b(it)h(exists,)h(the)f(en)m
(vironmen)m(t)630 3764 y(v)-5 b(ariable)29 b Fo(SHELL)g
Fu(determines)g(whic)m(h)h(shell)e(to)j(run.)40 b(Otherwise)29
b(GDB)i(uses)f Fo(/bin/sh)p Fu(.)275 3924 y(The)h(utilit)m(y)f
Fo(make)g Fu(is)h(often)h(needed)f(in)f(dev)m(elopmen)m(t)j(en)m
(vironmen)m(ts.)43 b(Y)-8 b(ou)33 b(do)e(not)h(ha)m(v)m(e)h(to)f(use)
150 4033 y(the)f Fo(shell)e Fu(command)h(for)g(this)f(purp)s(ose)g(in)g
(GDB:)150 4242 y Fo(make)g Fn(mak)m(e-args)630 4352 y
Fu(Execute)j(the)f Fo(make)g Fu(program)f(with)g(the)i(sp)s(eci\014ed)d
(argumen)m(ts.)44 b(This)29 b(is)i(equiv)-5 b(alen)m(t)30
b(to)630 4462 y(`)p Fo(shell)f(make)g Fn(mak)m(e-args)t
Fu('.)p eop
%%Page: 13 15
13 14 bop 150 -116 a Fu(Chapter)30 b(3:)41 b(GDB)31 b(Commands)2363
b(13)150 299 y Fp(3)80 b(GDB)53 b(Commands)275 567 y
Fu(Y)-8 b(ou)34 b(can)g(abbreviate)g(a)h(GDB)g(command)f(to)h(the)f
(\014rst)f(few)h(letters)g(of)h(the)f(command)g(name,)h(if)150
677 y(that)f(abbreviation)f(is)f(unam)m(biguous;)i(and)f(y)m(ou)h(can)g
(rep)s(eat)g(certain)g(GDB)h(commands)e(b)m(y)g(t)m(yping)150
787 y(just)335 784 y Fj(h)p 359 731 151 4 v 359 787 a
Fi(RET)p 359 802 V 506 784 a Fj(i)536 787 y Fu(.)56 b(Y)-8
b(ou)36 b(can)g(also)g(use)f(the)1493 784 y Fj(h)p 1517
731 148 4 v 1517 787 a Fi(T)-6 b(AB)p 1517 802 V 1661
784 a Fj(i)1726 787 y Fu(k)m(ey)36 b(to)h(get)f(GDB)h(to)f(\014ll)e
(out)i(the)g(rest)f(of)h(a)g(w)m(ord)f(in)g(a)150 896
y(command)30 b(\(or)h(to)g(sho)m(w)f(y)m(ou)h(the)g(alternativ)m(es)f
(a)m(v)-5 b(ailable,)30 b(if)f(there)i(is)e(more)i(than)f(one)h(p)s
(ossibilit)m(y\).)150 1182 y Fs(3.1)68 b(Command)45 b(syn)l(tax)275
1386 y Fu(A)38 b(GDB)i(command)f(is)f(a)h(single)e(line)g(of)i(input.)
64 b(There)38 b(is)g(no)h(limit)d(on)j(ho)m(w)g(long)f(it)g(can)h(b)s
(e.)150 1496 y(It)c(starts)g(with)f(a)h(command)f(name,)j(whic)m(h)c
(is)h(follo)m(w)m(ed)g(b)m(y)h(argumen)m(ts)g(whose)g(meaning)f(dep)s
(ends)150 1606 y(on)k(the)g(command)g(name.)63 b(F)-8
b(or)39 b(example,)h(the)e(command)g Fo(step)f Fu(accepts)i(an)f
(argumen)m(t)g(whic)m(h)f(is)150 1715 y(the)c(n)m(um)m(b)s(er)e(of)i
(times)g(to)g(step,)h(as)f(in)e(`)p Fo(step)f(5)p Fu('.)48
b(Y)-8 b(ou)33 b(can)g(also)g(use)f(the)h Fo(step)f Fu(command)h(with)e
(no)150 1825 y(argumen)m(ts.)41 b(Some)30 b(command)h(names)f(do)g(not)
h(allo)m(w)f(an)m(y)g(argumen)m(ts.)275 1971 y(GDB)38
b(command)e(names)h(ma)m(y)h(alw)m(a)m(ys)g(b)s(e)e(truncated)h(if)f
(that)i(abbreviation)d(is)i(unam)m(biguous.)150 2080
y(Other)28 b(p)s(ossible)e(command)j(abbreviations)e(are)i(listed)e(in)
g(the)i(do)s(cumen)m(tation)g(for)f(individual)c(com-)150
2190 y(mands.)38 b(In)23 b(some)i(cases,)h(ev)m(en)f(am)m(biguous)f
(abbreviations)f(are)h(allo)m(w)m(ed;)j(for)d(example,)h
Fo(s)f Fu(is)f(sp)s(ecially)150 2300 y(de\014ned)36 b(as)i(equiv)-5
b(alen)m(t)36 b(to)i Fo(step)e Fu(ev)m(en)i(though)f(there)h(are)g
(other)f(commands)g(whose)g(names)g(start)150 2409 y(with)29
b Fo(s)p Fu(.)40 b(Y)-8 b(ou)31 b(can)g(test)g(abbreviations)e(b)m(y)h
(using)f(them)i(as)f(argumen)m(ts)h(to)g(the)g Fo(help)e
Fu(command.)275 2555 y(A)23 b(blank)f(line)f(as)j(input)d(to)j(GDB)g
(\(t)m(yping)f(just)1929 2552 y Fj(h)p 1953 2499 151
4 v 1953 2555 a Fi(RET)p 1953 2570 V 2100 2552 a Fj(i)2130
2555 y Fu(\))g(means)g(to)h(rep)s(eat)g(the)f(previous)f(command.)150
2665 y(Certain)28 b(commands)h(\(for)g(example,)g Fo(run)p
Fu(\))g(will)d(not)k(rep)s(eat)f(this)f(w)m(a)m(y;)i(these)g(are)f
(commands)g(whose)150 2774 y(unin)m(ten)m(tional)f(rep)s(etition)g
(migh)m(t)h(cause)h(trouble)f(and)g(whic)m(h)f(y)m(ou)i(are)g(unlik)m
(ely)d(to)k(w)m(an)m(t)f(to)g(rep)s(eat.)275 2920 y(The)c
Fo(list)f Fu(and)h Fo(x)g Fu(commands,)i(when)d(y)m(ou)i(rep)s(eat)g
(them)g(with)2505 2917 y Fj(h)p 2529 2864 V 2529 2920
a Fi(RET)p 2529 2936 V 2676 2917 a Fj(i)2706 2920 y Fu(,)g(construct)g
(new)g(argumen)m(ts)150 3030 y(rather)j(than)g(rep)s(eating)g(exactly)h
(as)g(t)m(yp)s(ed.)40 b(This)29 b(p)s(ermits)f(easy)j(scanning)f(of)g
(source)h(or)f(memory)-8 b(.)275 3176 y(GDB)28 b(can)h(also)e(use)1006
3173 y Fj(h)p 1030 3120 V 1030 3176 a Fi(RET)p 1030 3191
V 1177 3173 a Fj(i)1234 3176 y Fu(in)g(another)h(w)m(a)m(y:)40
b(to)29 b(partition)e(length)m(y)g(output,)h(in)f(a)h(w)m(a)m(y)h
(similar)c(to)150 3285 y(the)k(common)g(utilit)m(y)f
Fo(more)g Fu(\(see)h(Section)g(14.4)i([Screen)e(size],)g(page)h(141\).)
42 b(Since)28 b(it)g(is)g(easy)i(to)g(press)150 3395
y(one)311 3392 y Fj(h)p 336 3339 V 336 3395 a Fi(RET)p
336 3410 V 482 3392 a Fj(i)537 3395 y Fu(to)s(o)c(man)m(y)f(in)f(this)f
(situation,)j(GDB)g(disables)d(command)i(rep)s(etition)e(after)j(an)m
(y)f(command)150 3505 y(that)31 b(generates)h(this)d(sort)i(of)f
(displa)m(y)-8 b(.)275 3651 y(An)m(y)33 b(text)i(from)f(a)g
Fl(#)f Fu(to)i(the)f(end)f(of)h(the)g(line)e(is)h(a)h(commen)m(t;)j(it)
c(do)s(es)h(nothing.)50 b(This)32 b(is)h(useful)150 3760
y(mainly)c(in)g(command)h(\014les)f(\(see)i(Section)g(15.3)g([Command)f
(\014les],)g(page)h(145\).)150 4046 y Fs(3.2)68 b(Command)45
b(completion)275 4250 y Fu(GDB)29 b(can)g(\014ll)d(in)h(the)i(rest)g
(of)f(a)h(w)m(ord)f(in)f(a)i(command)g(for)f(y)m(ou,)h(if)f(there)g(is)
g(only)f(one)i(p)s(ossibilit)m(y;)150 4360 y(it)35 b(can)h(also)g(sho)m
(w)f(y)m(ou)h(what)g(the)g(v)-5 b(alid)34 b(p)s(ossibilities)d(are)36
b(for)g(the)g(next)f(w)m(ord)h(in)e(a)i(command,)h(at)150
4469 y(an)m(y)30 b(time.)40 b(This)27 b(w)m(orks)j(for)f(GDB)h
(commands,)g(GDB)g(sub)s(commands,)e(and)h(the)h(names)f(of)g(sym)m(b)s
(ols)150 4579 y(in)g(y)m(our)h(program.)275 4725 y(Press)k(the)681
4722 y Fj(h)p 705 4669 148 4 v 705 4725 a Fi(T)-6 b(AB)p
705 4740 V 848 4722 a Fj(i)913 4725 y Fu(k)m(ey)36 b(whenev)m(er)f(y)m
(ou)h(w)m(an)m(t)g(GDB)g(to)g(\014ll)d(out)j(the)f(rest)g(of)h(a)f(w)m
(ord.)55 b(If)35 b(there)g(is)150 4835 y(only)h(one)h(p)s(ossibilit)m
(y)-8 b(,)35 b(GDB)j(\014lls)c(in)i(the)g(w)m(ord,)j(and)d(w)m(aits)g
(for)h(y)m(ou)g(to)g(\014nish)d(the)j(command)g(\(or)150
4944 y(press)379 4941 y Fj(h)p 403 4888 151 4 v 403 4944
a Fi(RET)p 403 4960 V 549 4941 a Fj(i)610 4944 y Fu(to)31
b(en)m(ter)g(it\).)40 b(F)-8 b(or)31 b(example,)g(if)e(y)m(ou)i(t)m(yp)
s(e)390 5084 y Fo(\(gdb\))46 b(info)h(bre)1106 5081 y
Fj(h)p 1130 5028 148 4 v 1130 5084 a Fi(T)-6 b(AB)p 1130
5100 V 1274 5081 a Fj(i)150 5230 y Fu(GDB)33 b(\014lls)e(in)f(the)j
(rest)f(of)h(the)f(w)m(ord)g(`)p Fo(breakpoints)p Fu(',)f(since)g(that)
i(is)f(the)g(only)g Fo(info)f Fu(sub)s(command)150 5340
y(b)s(eginning)d(with)h(`)p Fo(bre)p Fu(':)p eop
%%Page: 14 16
14 15 bop 150 -116 a Fu(14)2644 b(Debugging)31 b(with)e(GDB)390
299 y Fo(\(gdb\))46 b(info)h(breakpoints)150 437 y Fu(Y)-8
b(ou)49 b(can)g(either)f(press)1063 434 y Fj(h)p 1087
381 151 4 v 1087 437 a Fi(RET)p 1087 453 V 1234 434 a
Fj(i)1312 437 y Fu(at)i(this)d(p)s(oin)m(t,)53 b(to)c(run)e(the)i
Fo(info)29 b(breakpoints)46 b Fu(command,)53 b(or)150
547 y(bac)m(kspace)32 b(and)e(en)m(ter)i(something)e(else,)h(if)e(`)p
Fo(breakpoints)p Fu(')g(do)s(es)h(not)h(lo)s(ok)f(lik)m(e)g(the)h
(command)g(y)m(ou)150 657 y(exp)s(ected.)42 b(\(If)30
b(y)m(ou)h(w)m(ere)g(sure)f(y)m(ou)h(w)m(an)m(ted)g Fo(info)e
(breakpoints)f Fu(in)h(the)i(\014rst)f(place,)g(y)m(ou)h(migh)m(t)g(as)
150 766 y(w)m(ell)26 b(just)h(t)m(yp)s(e)709 763 y Fj(h)p
733 710 V 733 766 a Fi(RET)p 733 781 V 880 763 a Fj(i)937
766 y Fu(immediately)e(after)j(`)p Fo(info)h(bre)p Fu(',)f(to)f
(exploit)g(command)f(abbreviations)g(rather)150 876 y(than)k(command)g
(completion\).)275 1014 y(If)23 b(there)h(is)g(more)g(than)g(one)g(p)s
(ossibilit)m(y)d(for)j(the)g(next)g(w)m(ord)g(when)f(y)m(ou)i(press)
3004 1011 y Fj(h)p 3028 958 148 4 v 3028 1014 a Fi(T)-6
b(AB)p 3028 1030 V 3172 1011 a Fj(i)3202 1014 y Fu(,)25
b(GDB)g(sounds)150 1124 y(a)35 b(b)s(ell.)50 b(Y)-8 b(ou)35
b(can)f(either)g(supply)e(more)j(c)m(haracters)g(and)f(try)g(again,)i
(or)e(just)g(press)3175 1121 y Fj(h)p 3199 1068 V 3199
1124 a Fi(T)-6 b(AB)p 3199 1139 V 3343 1121 a Fj(i)3407
1124 y Fu(a)35 b(second)150 1233 y(time;)42 b(GDB)d(displa)m(ys)d(all)h
(the)h(p)s(ossible)e(completions)h(for)g(that)i(w)m(ord.)63
b(F)-8 b(or)39 b(example,)h(y)m(ou)e(migh)m(t)150 1343
y(w)m(an)m(t)d(to)f(set)g(a)g(breakp)s(oin)m(t)f(on)h(a)g(subroutine)d
(whose)j(name)f(b)s(egins)g(with)f(`)p Fo(make_)p Fu(',)i(but)f(when)g
(y)m(ou)150 1453 y(t)m(yp)s(e)g Fl(b)d(make_)675 1450
y Fj(h)p 698 1397 V 698 1453 a Fi(T)-6 b(AB)p 698 1468
V 841 1450 a Fj(i)904 1453 y Fu(GDB)33 b(just)g(sounds)e(the)i(b)s
(ell.)45 b(T)m(yping)2315 1450 y Fj(h)p 2339 1397 V 2339
1453 a Fi(T)-6 b(AB)p 2339 1468 V 2483 1450 a Fj(i)2546
1453 y Fu(again)32 b(displa)m(ys)f(all)g(the)i(function)150
1562 y(names)d(in)f(y)m(our)i(program)f(that)h(b)s(egin)e(with)g(those)
i(c)m(haracters,)h(for)e(example:)390 1695 y Fo(\(gdb\))46
b(b)i(make_)1058 1692 y Fj(h)p 1082 1639 V 1082 1695
a Fi(T)-6 b(AB)p 1082 1710 V 1226 1692 a Fj(i)150 1799
y Fu(GDB)31 b(sounds)e(b)s(ell;)g(press)1113 1796 y Fj(h)p
1137 1743 V 1137 1799 a Fi(T)-6 b(AB)p 1137 1814 V 1280
1796 a Fj(i)1341 1799 y Fu(again,)30 b(to)h(see:)390
1902 y Fo(make_a_section_from_file)232 b(make_environ)390
2006 y(make_abs_section)616 b(make_function_type)390
2110 y(make_blockvector)g(make_pointer_type)390 2214
y(make_cleanup)808 b(make_reference_type)390 2317 y(make_command)g
(make_symbol_completion_li)o(st)390 2421 y(\(gdb\))46
b(b)i(make_)150 2560 y Fu(After)29 b(displa)m(ying)c(the)k(a)m(v)-5
b(ailable)28 b(p)s(ossibilities,)c(GDB)30 b(copies)e(y)m(our)g(partial)
f(input)g(\(`)p Fo(b)j(make_)p Fu(')e(in)f(the)150 2669
y(example\))j(so)h(y)m(ou)g(can)f(\014nish)e(the)j(command.)275
2808 y(If)c(y)m(ou)i(just)e(w)m(an)m(t)i(to)g(see)f(the)h(list)d(of)j
(alternativ)m(es)f(in)f(the)h(\014rst)f(place,)i(y)m(ou)f(can)h(press)e
Fl(M-?)g Fu(rather)150 2917 y(than)32 b(pressing)715
2914 y Fj(h)p 740 2861 V 740 2917 a Fi(T)-6 b(AB)p 740
2933 V 883 2914 a Fj(i)945 2917 y Fu(t)m(wice.)47 b Fl(M-?)31
b Fu(means)1676 2914 y Fj(h)p 1700 2861 211 4 v 1700
2917 a Fi(MET)-6 b(A)p 1700 2933 V 1907 2914 a Fj(i)1967
2917 y Fl(?)p Fu(.)45 b(Y)-8 b(ou)33 b(can)f(t)m(yp)s(e)h(this)e
(either)g(b)m(y)h(holding)e(do)m(wn)150 3027 y(a)e(k)m(ey)h(designated)
f(as)g(the)1096 3024 y Fj(h)p 1120 2971 V 1120 3027 a
Fi(MET)-6 b(A)p 1120 3042 V 1327 3024 a Fj(i)1384 3027
y Fu(shift)27 b(on)h(y)m(our)g(k)m(eyb)s(oard)g(\(if)f(there)h(is)f
(one\))i(while)d(t)m(yping)h Fl(?)p Fu(,)i(or)f(as)150
3134 y Fj(h)p 174 3081 139 4 v 174 3137 a Fi(ESC)p 174
3152 V 308 3134 a Fj(i)368 3137 y Fu(follo)m(w)m(ed)i(b)m(y)h
Fl(?)p Fu(.)275 3275 y(Sometimes)37 b(the)i(string)e(y)m(ou)i(need,)h
(while)c(logically)h(a)i(\\w)m(ord",)i(ma)m(y)e(con)m(tain)f(paren)m
(theses)h(or)150 3385 y(other)c(c)m(haracters)h(that)f(GDB)g(normally)e
(excludes)h(from)g(its)g(notion)f(of)i(a)g(w)m(ord.)53
b(T)-8 b(o)35 b(p)s(ermit)d(w)m(ord)150 3494 y(completion)i(to)i(w)m
(ork)f(in)f(this)g(situation,)h(y)m(ou)h(ma)m(y)f(enclose)h(w)m(ords)e
(in)g Fo(')h Fu(\(single)f(quote)h(marks\))g(in)150 3604
y(GDB)c(commands.)275 3742 y(The)38 b(most)i(lik)m(ely)e(situation)g
(where)h(y)m(ou)h(migh)m(t)f(need)g(this)f(is)g(in)g(t)m(yping)h(the)g
(name)h(of)f(a)h(C)p Fo(++)150 3852 y Fu(function.)f(This)27
b(is)h(b)s(ecause)h(C)p Fo(++)f Fu(allo)m(ws)g(function)g(o)m(v)m
(erloading)h(\(m)m(ultiple)e(de\014nitions)f(of)j(the)h(same)150
3961 y(function,)24 b(distinguished)d(b)m(y)j(argumen)m(t)h(t)m(yp)s
(e\).)39 b(F)-8 b(or)25 b(example,)g(when)f(y)m(ou)g(w)m(an)m(t)h(to)g
(set)g(a)g(breakp)s(oin)m(t)150 4071 y(y)m(ou)44 b(ma)m(y)g(need)f(to)h
(distinguish)c(whether)i(y)m(ou)i(mean)g(the)f(v)m(ersion)g(of)g
Fo(name)g Fu(that)h(tak)m(es)h(an)e Fo(int)150 4181 y
Fu(parameter,)31 b Fo(name\(int\))p Fu(,)c(or)j(the)g(v)m(ersion)f
(that)h(tak)m(es)h(a)f Fo(float)e Fu(parameter,)j Fo(name\(float\))p
Fu(.)37 b(T)-8 b(o)30 b(use)150 4290 y(the)37 b(w)m(ord-completion)f
(facilities)f(in)g(this)h(situation,)h(t)m(yp)s(e)g(a)g(single)f(quote)
h Fo(')f Fu(at)i(the)f(b)s(eginning)d(of)150 4400 y(the)g(function)e
(name.)51 b(This)32 b(alerts)i(GDB)h(that)f(it)f(ma)m(y)i(need)e(to)i
(consider)d(more)i(information)e(than)150 4509 y(usual)d(when)g(y)m(ou)
i(press)1026 4506 y Fj(h)p 1050 4453 148 4 v 1050 4509
a Fi(T)-6 b(AB)p 1050 4525 V 1193 4506 a Fj(i)1254 4509
y Fu(or)30 b Fl(M-?)f Fu(to)j(request)e(w)m(ord)g(completion:)390
4642 y Fo(\(gdb\))46 b(b)i('bubble\()1201 4639 y Fj(h)p
1226 4586 122 4 v 1226 4642 a Fi(M-?)p 1226 4657 V 1343
4639 a Fj(i)390 4746 y Fo(bubble\(double,double\))185
b(bubble\(int,int\))390 4850 y(\(gdb\))46 b(b)i('bubble\()275
4988 y Fu(In)31 b(some)i(cases,)g(GDB)h(can)e(tell)f(that)i(completing)
e(a)i(name)f(requires)f(using)g(quotes.)46 b(When)32
b(this)150 5098 y(happ)s(ens,)27 b(GDB)j(inserts)d(the)i(quote)g(for)f
(y)m(ou)h(\(while)e(completing)g(as)i(m)m(uc)m(h)f(as)h(it)f(can\))h
(if)f(y)m(ou)g(do)h(not)150 5207 y(t)m(yp)s(e)i(the)f(quote)h(in)e(the)
i(\014rst)e(place:)390 5340 y Fo(\(gdb\))46 b(b)i(bub)963
5337 y Fj(h)p 987 5284 148 4 v 987 5340 a Fi(T)-6 b(AB)p
987 5355 V 1131 5337 a Fj(i)p eop
%%Page: 15 17
15 16 bop 150 -116 a Fu(Chapter)30 b(3:)41 b(GDB)31 b(Commands)2363
b(15)150 299 y(GDB)31 b(alters)g(y)m(our)f(input)e(line)h(to)i(the)g
(follo)m(wing,)e(and)h(rings)f(a)h(b)s(ell:)390 403 y
Fo(\(gdb\))46 b(b)i('bubble\()150 539 y Fu(In)29 b(general,)h(GDB)h
(can)f(tell)f(that)h(a)g(quote)g(is)f(needed)h(\(and)f(inserts)f(it\))i
(if)f(y)m(ou)h(ha)m(v)m(e)h(not)f(y)m(et)g(started)150
648 y(t)m(yping)g(the)g(argumen)m(t)h(list)e(when)h(y)m(ou)g(ask)h(for)
f(completion)g(on)g(an)g(o)m(v)m(erloaded)i(sym)m(b)s(ol.)275
785 y(F)-8 b(or)31 b(more)f(information)e(ab)s(out)i(o)m(v)m(erloaded)i
(functions,)d(see)h(Section)h(9.4.1.3)h([C)p Fo(++)e
Fu(expressions],)150 894 y(page)41 b(78.)72 b(Y)-8 b(ou)41
b(can)f(use)g(the)h(command)f Fo(set)30 b(overload-resolution)25
b(off)39 b Fu(to)i(disable)e(o)m(v)m(erload)150 1004
y(resolution;)29 b(see)i(Section)f(9.4.1.7)j([GDB)f(features)f(for)f(C)
p Fo(++)p Fu(],)g(page)h(79.)150 1265 y Fs(3.3)68 b(Getting)46
b(help)275 1460 y Fu(Y)-8 b(ou)36 b(can)h(alw)m(a)m(ys)f(ask)h(GDB)g
(itself)e(for)h(information)f(on)h(its)f(commands,)j(using)d(the)h
(command)150 1569 y Fo(help)p Fu(.)150 1783 y Fo(help)150
1893 y(h)432 b Fu(Y)-8 b(ou)32 b(can)f(use)g Fo(help)f
Fu(\(abbreviated)h Fo(h)p Fu(\))g(with)f(no)h(argumen)m(ts)h(to)g
(displa)m(y)d(a)j(short)f(list)f(of)630 2002 y(named)g(classes)g(of)h
(commands:)870 2132 y Fo(\(gdb\))46 b(help)870 2236 y(List)h(of)g
(classes)f(of)h(commands:)870 2443 y(running)f(--)h(Running)f(the)h
(program)870 2547 y(stack)f(--)i(Examining)d(the)i(stack)870
2651 y(data)g(--)g(Examining)e(data)870 2755 y(breakpoints)g(--)i
(Making)f(program)g(stop)g(at)i(certain)d(points)870
2858 y(files)h(--)i(Specifying)d(and)h(examining)g(files)870
2962 y(status)g(--)h(Status)f(inquiries)870 3066 y(support)g(--)h
(Support)f(facilities)870 3170 y(user-defined)e(--)k(User-defined)c
(commands)870 3274 y(aliases)i(--)h(Aliases)f(of)h(other)f(commands)870
3377 y(obscure)g(--)h(Obscure)f(features)870 3585 y(Type)h("help")f
(followed)f(by)i(a)h(class)e(name)h(for)g(a)g(list)g(of)870
3689 y(commands)f(in)h(that)f(class.)870 3792 y(Type)h("help")f
(followed)f(by)i(command)f(name)h(for)g(full)870 3896
y(documentation.)870 4000 y(Command)f(name)g(abbreviations)f(are)i
(allowed)e(if)j(unambiguous.)870 4104 y(\(gdb\))150 4265
y(help)29 b Fn(class)76 b Fu(Using)31 b(one)h(of)g(the)f(general)h
(help)e(classes)i(as)g(an)f(argumen)m(t,)i(y)m(ou)f(can)g(get)h(a)f
(list)e(of)i(the)630 4374 y(individual)g(commands)k(in)f(that)i(class.)
59 b(F)-8 b(or)38 b(example,)g(here)e(is)g(the)g(help)f(displa)m(y)g
(for)630 4484 y(the)c(class)f Fo(status)p Fu(:)870 4614
y Fo(\(gdb\))46 b(help)h(status)870 4717 y(Status)f(inquiries.)870
4925 y(List)h(of)g(commands:)870 5132 y(show)g(--)g(Generic)f(command)f
(for)i(showing)f(things)g(set)918 5236 y(with)g("set")870
5340 y(info)h(--)g(Generic)f(command)f(for)i(printing)f(status)p
eop
%%Page: 16 18
16 17 bop 150 -116 a Fu(16)2644 b(Debugging)31 b(with)e(GDB)870
403 y Fo(Type)47 b("help")f(followed)f(by)i(command)f(name)h(for)g
(full)870 506 y(documentation.)870 610 y(Command)f(name)g
(abbreviations)f(are)i(allowed)e(if)j(unambiguous.)870
714 y(\(gdb\))150 872 y(help)29 b Fn(command)630 981
y Fu(With)e(a)h(command)g(name)f(as)h Fo(help)f Fu(argumen)m(t,)i(GDB)g
(displa)m(ys)c(a)j(short)g(paragraph)f(on)630 1091 y(ho)m(w)j(to)i(use)
e(that)h(command.)150 1249 y Fo(complete)d Fn(args)630
1358 y Fu(The)21 b Fo(complete)29 b Fn(args)c Fu(command)d(lists)f(all)
f(the)i(p)s(ossible)e(completions)h(for)h(the)g(b)s(eginning)630
1468 y(of)37 b(a)g(command.)60 b(Use)37 b Fn(args)k Fu(to)d(sp)s(ecify)
d(the)i(b)s(eginning)d(of)j(the)g(command)g(y)m(ou)g(w)m(an)m(t)630
1577 y(completed.)k(F)-8 b(or)31 b(example:)870 1705
y Fo(complete)46 b(i)630 1839 y Fu(results)29 b(in:)870
1967 y Fo(info)870 2070 y(inspect)870 2174 y(ignore)630
2301 y Fu(This)g(is)g(in)m(tended)g(for)h(use)g(b)m(y)h
Ft(gnu)f Fu(Emacs.)275 2459 y(In)22 b(addition)f(to)j
Fo(help)p Fu(,)g(y)m(ou)f(can)h(use)f(the)g(GDB)h(commands)f
Fo(info)f Fu(and)g Fo(show)g Fu(to)i(inquire)d(ab)s(out)i(the)150
2568 y(state)31 b(of)g(y)m(our)f(program,)g(or)g(the)g(state)h(of)g
(GDB)g(itself.)39 b(Eac)m(h)31 b(command)f(supp)s(orts)e(man)m(y)i
(topics)g(of)150 2678 y(inquiry;)25 b(this)g(man)m(ual)g(in)m(tro)s
(duces)g(eac)m(h)i(of)f(them)g(in)f(the)h(appropriate)f(con)m(text.)41
b(The)26 b(listings)d(under)150 2787 y Fo(info)29 b Fu(and)h(under)f
Fo(show)g Fu(in)g(the)i(Index)e(p)s(oin)m(t)h(to)h(all)e(the)h
(sub-commands.)40 b(See)31 b([Index],)f(page)h(179.)150
2993 y Fo(info)288 b Fu(This)26 b(command)h(\(abbreviated)h
Fo(i)p Fu(\))f(is)g(for)g(describing)e(the)j(state)h(of)f(y)m(our)g
(program.)39 b(F)-8 b(or)630 3103 y(example,)40 b(y)m(ou)e(can)g(list)f
(the)h(argumen)m(ts)g(giv)m(en)g(to)h(y)m(our)e(program)h(with)f
Fo(info)29 b(args)p Fu(,)630 3212 y(list)g(the)i(registers)f(curren)m
(tly)g(in)f(use)i(with)e Fo(info)g(registers)p Fu(,)f(or)j(list)e(the)i
(breakp)s(oin)m(ts)630 3322 y(y)m(ou)g(ha)m(v)m(e)i(set)e(with)f
Fo(info)f(breakpoints)p Fu(.)40 b(Y)-8 b(ou)31 b(can)h(get)g(a)f
(complete)h(list)e(of)h(the)g Fo(info)630 3431 y Fu(sub-commands)e
(with)g Fo(help)g(info)o Fu(.)150 3589 y Fo(set)336 b
Fu(Y)-8 b(ou)26 b(can)h(assign)e(the)h(result)f(of)h(an)g(expression)f
(to)i(an)f(en)m(vironmen)m(t)f(v)-5 b(ariable)25 b(with)g
Fo(set)p Fu(.)630 3699 y(F)-8 b(or)31 b(example,)f(y)m(ou)h(can)g(set)g
(the)f(GDB)i(prompt)d(to)i(a)g($-sign)f(with)f Fo(set)h(prompt)e($)p
Fu(.)150 3856 y Fo(show)288 b Fu(In)37 b(con)m(trast)i(to)f
Fo(info)p Fu(,)h Fo(show)d Fu(is)h(for)g(describing)f(the)i(state)h(of)
e(GDB)i(itself.)61 b(Y)-8 b(ou)39 b(can)630 3966 y(c)m(hange)e(most)f
(of)g(the)g(things)f(y)m(ou)h(can)g Fo(show)p Fu(,)g(b)m(y)g(using)e
(the)i(related)g(command)g Fo(set)p Fu(;)630 4076 y(for)27
b(example,)h(y)m(ou)g(can)g(con)m(trol)g(what)f(n)m(um)m(b)s(er)f
(system)i(is)e(used)h(for)g(displa)m(ys)f(with)g Fo(set)630
4185 y(radix)p Fu(,)j(or)i(simply)c(inquire)h(whic)m(h)h(is)h(curren)m
(tly)f(in)g(use)h(with)f Fo(show)h(radix)p Fu(.)630 4319
y(T)-8 b(o)40 b(displa)m(y)e(all)h(the)g(settable)i(parameters)f(and)f
(their)f(curren)m(t)i(v)-5 b(alues,)41 b(y)m(ou)f(can)g(use)630
4428 y Fo(show)26 b Fu(with)g(no)h(argumen)m(ts;)i(y)m(ou)e(ma)m(y)h
(also)f(use)g Fo(info)i(set)p Fu(.)39 b(Both)27 b(commands)g(pro)s
(duce)630 4538 y(the)k(same)f(displa)m(y)-8 b(.)275 4696
y(Here)28 b(are)g(three)g(miscellaneous)f Fo(show)f Fu(sub)s(commands,)
h(all)g(of)h(whic)m(h)f(are)h(exceptional)g(in)e(lac)m(king)150
4805 y(corresp)s(onding)i Fo(set)i Fu(commands:)150 5011
y Fo(show)f(version)630 5121 y Fu(Sho)m(w)h(what)h(v)m(ersion)f(of)h
(GDB)h(is)e(running.)39 b(Y)-8 b(ou)31 b(should)e(include)g(this)g
(information)g(in)630 5230 y(GDB)g(bug-rep)s(orts.)39
b(If)27 b(m)m(ultiple)f(v)m(ersions)h(of)h(GDB)g(are)h(in)d(use)i(at)g
(y)m(our)g(site,)g(y)m(ou)g(ma)m(y)630 5340 y(o)s(ccasionally)d(w)m(an)
m(t)h(to)h(determine)d(whic)m(h)h(v)m(ersion)g(of)h(GDB)g(y)m(ou)g(are)
g(running;)f(as)h(GDB)p eop
%%Page: 17 19
17 18 bop 150 -116 a Fu(Chapter)30 b(3:)41 b(GDB)31 b(Commands)2363
b(17)630 299 y(ev)m(olv)m(es,)41 b(new)c(commands)g(are)g(in)m(tro)s
(duced,)h(and)f(old)g(ones)g(ma)m(y)h(wither)e(a)m(w)m(a)m(y)-8
b(.)64 b(The)630 408 y(v)m(ersion)30 b(n)m(um)m(b)s(er)f(is)g(also)i
(announced)e(when)h(y)m(ou)g(start)h(GDB.)150 568 y Fo(show)e(copying)
630 677 y Fu(Displa)m(y)h(information)e(ab)s(out)i(p)s(ermission)e(for)
i(cop)m(ying)g(GDB.)150 837 y Fo(show)f(warranty)630
946 y Fu(Displa)m(y)h(the)g Ft(gnu)g Fu(\\NO)h(W)-10
b(ARRANTY")31 b(statemen)m(t.)p eop
%%Page: 18 20
18 19 bop 150 -116 a Fu(18)2644 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 19 21
19 20 bop 150 -116 a Fu(Chapter)30 b(4:)41 b(Running)28
b(Programs)i(Under)g(GDB)1783 b(19)150 299 y Fp(4)80
b(Running)54 b(Programs)f(Under)f(GDB)275 553 y Fu(When)35
b(y)m(ou)i(run)d(a)j(program)f(under)e(GDB,)j(y)m(ou)g(m)m(ust)f
(\014rst)f(generate)j(debugging)d(information)150 663
y(when)29 b(y)m(ou)i(compile)e(it.)275 804 y(Y)-8 b(ou)28
b(ma)m(y)g(start)g(GDB)h(with)d(its)h(argumen)m(ts,)i(if)e(an)m(y)-8
b(,)29 b(in)d(an)i(en)m(vironmen)m(t)f(of)h(y)m(our)g(c)m(hoice.)40
b(If)28 b(y)m(ou)150 914 y(are)33 b(doing)e(nativ)m(e)i(debugging,)f(y)
m(ou)h(ma)m(y)g(redirect)f(y)m(our)g(program's)g(input)f(and)h(output,)
g(debug)g(an)150 1024 y(already)e(running)e(pro)s(cess,)i(or)g(kill)e
(a)j(c)m(hild)e(pro)s(cess.)150 1298 y Fs(4.1)68 b(Compiling)46
b(for)f(debugging)275 1497 y Fu(In)38 b(order)h(to)h(debug)e(a)i
(program)f(e\013ectiv)m(ely)-8 b(,)42 b(y)m(ou)e(need)f(to)h(generate)g
(debugging)f(information)150 1607 y(when)34 b(y)m(ou)h(compile)f(it.)54
b(This)33 b(debugging)g(information)h(is)g(stored)h(in)e(the)i(ob)5
b(ject)36 b(\014le;)g(it)f(describ)s(es)150 1717 y(the)44
b(data)h(t)m(yp)s(e)f(of)g(eac)m(h)h(v)-5 b(ariable)43
b(or)h(function)e(and)h(the)i(corresp)s(ondence)e(b)s(et)m(w)m(een)i
(source)f(line)150 1826 y(n)m(um)m(b)s(ers)29 b(and)h(addresses)f(in)h
(the)g(executable)h(co)s(de.)275 1968 y(T)-8 b(o)30 b(request)h
(debugging)e(information,)g(sp)s(ecify)g(the)i(`)p Fo(-g)p
Fu(')f(option)g(when)f(y)m(ou)i(run)e(the)h(compiler.)275
2109 y(Man)m(y)h(C)g(compilers)e(are)i(unable)f(to)i(handle)d(the)i(`)p
Fo(-g)p Fu(')g(and)f(`)p Fo(-O)p Fu(')h(options)f(together.)44
b(Using)30 b(those)150 2218 y(compilers,)f(y)m(ou)i(cannot)g(generate)h
(optimized)d(executables)i(con)m(taining)f(debugging)f(information.)275
2360 y(GCC,)39 b(the)g Ft(gnu)g Fu(C)g(compiler,)h(supp)s(orts)e(`)p
Fo(-g)p Fu(')h(with)f(or)h(without)f(`)p Fo(-O)p Fu(',)k(making)d(it)f
(p)s(ossible)f(to)150 2469 y(debug)e(optimized)f(co)s(de.)57
b(W)-8 b(e)37 b(recommend)e(that)i(y)m(ou)f Fr(always)45
b Fu(use)35 b(`)p Fo(-g)p Fu(')g(whenev)m(er)h(y)m(ou)g(compile)f(a)150
2579 y(program.)60 b(Y)-8 b(ou)38 b(ma)m(y)f(think)e(y)m(our)i(program)
g(is)f(correct,)k(but)c(there)h(is)f(no)h(sense)g(in)f(pushing)e(y)m
(our)150 2689 y(luc)m(k.)275 2830 y(When)43 b(y)m(ou)i(debug)f(a)g
(program)g(compiled)f(with)g(`)p Fo(-g)30 b(-O)p Fu(',)47
b(remem)m(b)s(er)d(that)g(the)h(optimizer)e(is)150 2939
y(rearranging)23 b(y)m(our)h(co)s(de;)i(the)e(debugger)g(sho)m(ws)f(y)m
(ou)h(what)g(is)e(really)h(there.)39 b(Do)24 b(not)g(b)s(e)f(to)s(o)i
(surprised)150 3049 y(when)31 b(the)h(execution)g(path)g(do)s(es)f(not)
h(exactly)h(matc)m(h)f(y)m(our)g(source)g(\014le!)44
b(An)32 b(extreme)h(example:)43 b(if)150 3159 y(y)m(ou)27
b(de\014ne)f(a)h(v)-5 b(ariable,)26 b(but)g(nev)m(er)h(use)g(it,)g(GDB)
h(nev)m(er)f(sees)g(that)g(v)-5 b(ariable|b)s(ecause)26
b(the)g(compiler)150 3268 y(optimizes)k(it)f(out)i(of)g(existence.)275
3410 y(Some)c(things)g(do)h(not)g(w)m(ork)g(as)g(w)m(ell)f(with)g(`)p
Fo(-g)j(-O)p Fu(')d(as)i(with)d(just)i(`)p Fo(-g)p Fu(',)g
(particularly)e(on)h(mac)m(hines)150 3519 y(with)38 b(instruction)f(sc)
m(heduling.)65 b(If)39 b(in)f(doubt,)j(recompile)d(with)g(`)p
Fo(-g)p Fu(')h(alone,)j(and)d(if)f(this)g(\014xes)h(the)150
3629 y(problem,)29 b(please)h(rep)s(ort)g(it)g(to)h(us)f(as)g(a)h(bug)f
(\(including)d(a)k(test)g(case!\).)275 3770 y(Older)36
b(v)m(ersions)h(of)h(the)g Ft(gnu)f Fu(C)h(compiler)e(p)s(ermitted)h(a)
h(v)-5 b(arian)m(t)38 b(option)f(`)p Fo(-gg)p Fu(')g(for)h(debugging)
150 3880 y(information.)h(GDB)31 b(no)f(longer)f(supp)s(orts)f(this)h
(format;)i(if)d(y)m(our)i Ft(gnu)g Fu(C)f(compiler)g(has)g(this)g
(option,)150 3989 y(do)h(not)h(use)f(it.)150 4225 y Fs(4.2)68
b(Starting)46 b(y)l(our)f(program)150 4513 y Fo(run)150
4622 y(r)432 b Fu(Use)24 b(the)g Fo(run)e Fu(command)i(to)g(start)g(y)m
(our)g(program)f(under)f(GDB.)j(Y)-8 b(ou)24 b(m)m(ust)f(\014rst)g(sp)s
(ecify)630 4732 y(the)28 b(program)f(name)h(\(except)g(on)g(VxW)-8
b(orks\))29 b(with)d(an)h(argumen)m(t)h(to)g(GDB)h(\(see)g(Chap-)630
4842 y(ter)d(2)h([Getting)g(In)f(and)f(Out)h(of)g(GDB],)i(page)f(9\),)h
(or)e(b)m(y)g(using)f(the)h Fo(file)f Fu(or)h Fo(exec-file)630
4951 y Fu(command)k(\(see)h(Section)g(12.1)h([Commands)d(to)i(sp)s
(ecify)e(\014les],)h(page)h(101\).)275 5121 y(If)h(y)m(ou)h(are)h
(running)c(y)m(our)j(program)g(in)e(an)i(execution)h(en)m(vironmen)m(t)
e(that)i(supp)s(orts)d(pro)s(cesses,)150 5230 y Fo(run)25
b Fu(creates)j(an)e(inferior)e(pro)s(cess)i(and)f(mak)m(es)i(that)g
(pro)s(cess)f(run)e(y)m(our)j(program.)39 b(\(In)25 b(en)m(vironmen)m
(ts)150 5340 y(without)k(pro)s(cesses,)i Fo(run)e Fu(jumps)g(to)i(the)g
(start)g(of)f(y)m(our)g(program.\))p eop
%%Page: 20 22
20 21 bop 150 -116 a Fu(20)2644 b(Debugging)31 b(with)e(GDB)275
299 y(The)21 b(execution)g(of)h(a)g(program)f(is)f(a\013ected)j(b)m(y)f
(certain)f(information)f(it)h(receiv)m(es)h(from)f(its)g(sup)s(erior.)
150 408 y(GDB)40 b(pro)m(vides)e(w)m(a)m(ys)h(to)h(sp)s(ecify)d(this)h
(information,)i(whic)m(h)d(y)m(ou)i(m)m(ust)g(do)g Fr(b)-5
b(efor)g(e)46 b Fu(starting)39 b(y)m(our)150 518 y(program.)g(\(Y)-8
b(ou)27 b(can)f(c)m(hange)h(it)e(after)h(starting)g(y)m(our)g(program,)
g(but)f(suc)m(h)h(c)m(hanges)h(only)e(a\013ect)i(y)m(our)150
628 y(program)i(the)h(next)f(time)g(y)m(ou)h(start)g(it.\))40
b(This)27 b(information)h(ma)m(y)i(b)s(e)f(divided)d(in)m(to)k(four)e
(categories:)150 786 y(The)i Fr(ar)-5 b(guments.)630
896 y Fu(Sp)s(ecify)29 b(the)h(argumen)m(ts)h(to)g(giv)m(e)g(y)m(our)f
(program)g(as)h(the)f(argumen)m(ts)h(of)f(the)h Fo(run)e
Fu(com-)630 1005 y(mand.)45 b(If)31 b(a)i(shell)d(is)h(a)m(v)-5
b(ailable)31 b(on)h(y)m(our)g(target,)i(the)f(shell)d(is)h(used)g(to)i
(pass)e(the)i(argu-)630 1115 y(men)m(ts,)c(so)f(that)h(y)m(ou)f(ma)m(y)
h(use)e(normal)g(con)m(v)m(en)m(tions)i(\(suc)m(h)f(as)h(wildcard)c
(expansion)i(or)630 1225 y(v)-5 b(ariable)34 b(substitution\))f(in)h
(describing)f(the)j(argumen)m(ts.)56 b(In)34 b(Unix)g(systems,)j(y)m
(ou)f(can)630 1334 y(con)m(trol)24 b(whic)m(h)e(shell)f(is)h(used)h
(with)f(the)h Fo(SHELL)f Fu(en)m(vironmen)m(t)h(v)-5
b(ariable.)37 b(See)24 b(Section)f(4.3)630 1444 y([Y)-8
b(our)31 b(program's)f(argumen)m(ts],)h(page)g(20.)150
1602 y(The)f Fr(envir)-5 b(onment.)630 1712 y Fu(Y)d(our)23
b(program)f(normally)f(inherits)g(its)h(en)m(vironmen)m(t)g(from)h
(GDB,)h(but)e(y)m(ou)h(can)g(use)g(the)630 1822 y(GDB)30
b(commands)e Fo(set)i(environment)25 b Fu(and)j Fo(unset)h(environment)
d Fu(to)j(c)m(hange)h(parts)f(of)630 1931 y(the)41 b(en)m(vironmen)m(t)
f(that)h(a\013ect)h(y)m(our)f(program.)71 b(See)41 b(Section)f(4.4)i
([Y)-8 b(our)41 b(program's)630 2041 y(en)m(vironmen)m(t],)30
b(page)i(21.)150 2199 y(The)e Fr(working)j(dir)-5 b(e)g(ctory.)630
2309 y Fu(Y)d(our)32 b(program)f(inherits)e(its)i(w)m(orking)g
(directory)g(from)g(GDB.)i(Y)-8 b(ou)32 b(can)g(set)g(the)g(GDB)630
2419 y(w)m(orking)37 b(directory)f(with)g(the)i Fo(cd)f
Fu(command)g(in)f(GDB.)i(See)g(Section)f(4.5)h([Y)-8
b(our)38 b(pro-)630 2528 y(gram's)31 b(w)m(orking)e(directory],)i(page)
g(22.)150 2687 y(The)f Fr(standar)-5 b(d)35 b(input)e(and)h(output.)630
2796 y Fu(Y)-8 b(our)32 b(program)f(normally)f(uses)h(the)g(same)h
(device)f(for)h(standard)e(input)g(and)h(standard)630
2906 y(output)21 b(as)h(GDB)h(is)e(using.)37 b(Y)-8 b(ou)22
b(can)g(redirect)f(input)f(and)h(output)h(in)e(the)i
Fo(run)f Fu(command)630 3016 y(line,)j(or)g(y)m(ou)g(can)g(use)g(the)g
Fo(tty)f Fu(command)g(to)i(set)f(a)g(di\013eren)m(t)g(device)f(for)h(y)
m(our)g(program.)630 3125 y(See)31 b(Section)f(4.6)h([Y)-8
b(our)31 b(program's)f(input)f(and)g(output],)i(page)g(22.)630
3259 y Fr(Warning:)58 b Fu(While)35 b(input)f(and)h(output)h
(redirection)f(w)m(ork,)j(y)m(ou)e(cannot)h(use)f(pip)s(es)e(to)630
3369 y(pass)e(the)g(output)g(of)h(the)f(program)h(y)m(ou)f(are)h
(debugging)e(to)i(another)g(program;)g(if)f(y)m(ou)630
3478 y(attempt)f(this,)f(GDB)h(is)f(lik)m(ely)f(to)i(wind)d(up)h
(debugging)h(the)g(wrong)g(program.)275 3637 y(When)36
b(y)m(ou)g(issue)f(the)i Fo(run)e Fu(command,)j(y)m(our)f(program)f(b)s
(egins)f(to)i(execute)g(immediately)-8 b(.)58 b(See)150
3747 y(Chapter)38 b(5)h([Stopping)e(and)h(con)m(tin)m(uing],)i(page)f
(27,)j(for)c(discussion)e(of)i(ho)m(w)h(to)g(arrange)g(for)f(y)m(our)
150 3856 y(program)27 b(to)h(stop.)40 b(Once)27 b(y)m(our)g(program)g
(has)h(stopp)s(ed,)f(y)m(ou)g(ma)m(y)h(call)f(functions)f(in)g(y)m(our)
h(program,)150 3966 y(using)i(the)h Fo(print)f Fu(or)i
Fo(call)e Fu(commands.)40 b(See)31 b(Chapter)f(8)g([Examining)f(Data],)
k(page)e(55.)275 4100 y(If)i(the)h(mo)s(di\014cation)e(time)h(of)h(y)m
(our)g(sym)m(b)s(ol)e(\014le)h(has)h(c)m(hanged)g(since)f(the)h(last)g
(time)f(GDB)i(read)150 4210 y(its)f(sym)m(b)s(ols,)g(GDB)i(discards)d
(its)h(sym)m(b)s(ol)f(table,)i(and)f(reads)h(it)f(again.)53
b(When)34 b(it)g(do)s(es)g(this,)h(GDB)150 4319 y(tries)30
b(to)h(retain)f(y)m(our)g(curren)m(t)g(breakp)s(oin)m(ts.)150
4575 y Fs(4.3)68 b(Y)-11 b(our)44 b(program's)i(argumen)l(ts)275
4768 y Fu(The)25 b(argumen)m(ts)h(to)h(y)m(our)f(program)g(can)g(b)s(e)
f(sp)s(eci\014ed)f(b)m(y)i(the)g(argumen)m(ts)h(of)f(the)g
Fo(run)f Fu(command.)150 4877 y(They)30 b(are)i(passed)e(to)i(a)f
(shell,)e(whic)m(h)h(expands)g(wildcard)e(c)m(haracters)33
b(and)d(p)s(erforms)f(redirection)h(of)150 4987 y(I/O,)j(and)g(thence)g
(to)h(y)m(our)f(program.)48 b(Y)-8 b(our)33 b Fo(SHELL)f
Fu(en)m(vironmen)m(t)h(v)-5 b(ariable)31 b(\(if)i(it)f(exists\))h(sp)s
(eci\014es)150 5096 y(what)d(shell)f(GDB)i(uses.)41 b(If)30
b(y)m(ou)g(do)h(not)f(de\014ne)g Fo(SHELL)p Fu(,)f(GDB)i(uses)f
Fo(/bin/sh)p Fu(.)275 5230 y Fo(run)f Fu(with)f(no)i(argumen)m(ts)g
(uses)g(the)g(same)h(argumen)m(ts)f(used)f(b)m(y)h(the)g(previous)f
Fo(run)p Fu(,)g(or)h(those)g(set)150 5340 y(b)m(y)g(the)h
Fo(set)e(args)h Fu(command.)p eop
%%Page: 21 23
21 22 bop 150 -116 a Fu(Chapter)30 b(4:)41 b(Running)28
b(Programs)i(Under)g(GDB)1783 b(21)150 299 y Fo(set)29
b(args)115 b Fu(Sp)s(ecify)35 b(the)h(argumen)m(ts)h(to)g(b)s(e)f(used)
f(the)i(next)f(time)g(y)m(our)g(program)g(is)g(run.)57
b(If)36 b Fo(set)630 408 y(args)31 b Fu(has)h(no)g(argumen)m(ts,)h
Fo(run)e Fu(executes)i(y)m(our)f(program)g(with)f(no)h(argumen)m(ts.)46
b(Once)630 518 y(y)m(ou)39 b(ha)m(v)m(e)g(run)e(y)m(our)h(program)g
(with)f(argumen)m(ts,)k(using)c Fo(set)29 b(args)37 b
Fu(b)s(efore)h(the)h(next)630 628 y Fo(run)29 b Fu(is)h(the)g(only)g(w)
m(a)m(y)h(to)g(run)e(it)h(again)h(without)e(argumen)m(ts.)150
807 y Fo(show)g(args)67 b Fu(Sho)m(w)30 b(the)g(argumen)m(ts)h(to)g
(giv)m(e)g(y)m(our)f(program)h(when)e(it)h(is)f(started.)150
1115 y Fs(4.4)68 b(Y)-11 b(our)44 b(program's)i(en)l(vironmen)l(t)275
1328 y Fu(The)20 b Fn(en)m(vironmen)m(t)i Fu(consists)e(of)h(a)g(set)g
(of)g(en)m(vironmen)m(t)f(v)-5 b(ariables)19 b(and)h(their)g(v)-5
b(alues.)37 b(En)m(vironmen)m(t)150 1438 y(v)-5 b(ariables)34
b(con)m(v)m(en)m(tionally)h(record)g(suc)m(h)f(things)g(as)h(y)m(our)g
(user)f(name,)j(y)m(our)e(home)g(directory)-8 b(,)36
b(y)m(our)150 1547 y(terminal)30 b(t)m(yp)s(e,)i(and)e(y)m(our)i(searc)
m(h)g(path)f(for)g(programs)g(to)h(run.)42 b(Usually)30
b(y)m(ou)h(set)h(up)e(en)m(vironmen)m(t)150 1657 y(v)-5
b(ariables)34 b(with)f(the)j(shell)d(and)h(they)h(are)h(inherited)d(b)m
(y)i(all)e(the)j(other)f(programs)g(y)m(ou)g(run.)53
b(When)150 1767 y(debugging,)47 b(it)c(can)i(b)s(e)e(useful)f(to)j(try)
f(running)d(y)m(our)j(program)g(with)f(a)h(mo)s(di\014ed)e(en)m
(vironmen)m(t)150 1876 y(without)29 b(ha)m(ving)h(to)h(start)g(GDB)h(o)
m(v)m(er)g(again.)150 2146 y Fo(path)d Fn(directory)630
2256 y Fu(Add)k Fn(directory)41 b Fu(to)34 b(the)g(fron)m(t)g(of)g(the)
g Fo(PATH)f Fu(en)m(vironmen)m(t)g(v)-5 b(ariable)33
b(\(the)h(searc)m(h)g(path)630 2365 y(for)39 b(executables\),)i(for)e
(b)s(oth)f(GDB)i(and)e(y)m(our)h(program.)66 b(Y)-8 b(ou)39
b(ma)m(y)g(sp)s(ecify)f(sev)m(eral)630 2475 y(directory)32
b(names,)h(separated)g(b)m(y)f(`)p Fo(:)p Fu(')g(or)h(whitespace.)46
b(If)32 b Fn(directory)39 b Fu(is)32 b(already)g(in)f(the)630
2584 y(path,)f(it)g(is)g(mo)m(v)m(ed)h(to)g(the)g(fron)m(t,)f(so)h(it)f
(is)f(searc)m(hed)i(so)s(oner.)630 2729 y(Y)-8 b(ou)37
b(can)g(use)f(the)h(string)f(`)p Fo($cwd)p Fu(')g(to)h(refer)f(to)i
(whatev)m(er)f(is)f(the)h(curren)m(t)f(w)m(orking)g(di-)630
2839 y(rectory)k(at)h(the)e(time)g(GDB)i(searc)m(hes)f(the)g(path.)68
b(If)39 b(y)m(ou)h(use)f(`)p Fo(.)p Fu(')h(instead,)h(it)e(refers)630
2948 y(to)34 b(the)g(directory)f(where)g(y)m(ou)h(executed)g(the)g
Fo(path)e Fu(command.)50 b(GDB)34 b(replaces)g(`)p Fo(.)p
Fu(')f(in)630 3058 y(the)d Fn(directory)38 b Fu(argumen)m(t)30
b(\(with)f(the)h(curren)m(t)g(path\))g(b)s(efore)g(adding)f
Fn(directory)37 b Fu(to)31 b(the)630 3167 y(searc)m(h)g(path.)150
3347 y Fo(show)e(paths)630 3457 y Fu(Displa)m(y)23 b(the)h(list)e(of)i
(searc)m(h)g(paths)g(for)f(executables)h(\(the)h Fo(PATH)d
Fu(en)m(vironmen)m(t)i(v)-5 b(ariable\).)150 3636 y Fo(show)29
b(environment)f Fu([)p Fn(v)-5 b(arname)5 b Fu(])630
3746 y(Prin)m(t)32 b(the)h(v)-5 b(alue)32 b(of)h(en)m(vironmen)m(t)f(v)
-5 b(ariable)32 b Fn(v)-5 b(arname)38 b Fu(to)33 b(b)s(e)f(giv)m(en)h
(to)g(y)m(our)g(program)630 3856 y(when)i(it)g(starts.)58
b(If)35 b(y)m(ou)h(do)g(not)g(supply)e Fn(v)-5 b(arname)p
Fu(,)37 b(prin)m(t)e(the)h(names)f(and)h(v)-5 b(alues)35
b(of)630 3965 y(all)40 b(en)m(vironmen)m(t)g(v)-5 b(ariables)39
b(to)i(b)s(e)f(giv)m(en)h(to)g(y)m(our)g(program.)71
b(Y)-8 b(ou)41 b(can)g(abbreviate)630 4075 y Fo(environment)27
b Fu(as)k Fo(env)p Fu(.)150 4254 y Fo(set)e(environment)f
Fn(v)-5 b(arname)35 b Fu([)p Fo(=)p Fu(])c Fn(v)-5 b(alue)630
4364 y Fu(Set)22 b(en)m(vironmen)m(t)f(v)-5 b(ariable)20
b Fn(v)-5 b(arname)27 b Fu(to)22 b Fn(v)-5 b(alue)p Fu(.)37
b(The)21 b(v)-5 b(alue)21 b(c)m(hanges)h(for)g(y)m(our)f(program)630
4474 y(only)-8 b(,)36 b(not)f(for)g(GDB)h(itself.)53
b Fn(v)-5 b(alue)39 b Fu(ma)m(y)d(b)s(e)e(an)m(y)h(string;)i(the)e(v)-5
b(alues)34 b(of)h(en)m(vironmen)m(t)630 4583 y(v)-5 b(ariables)33
b(are)i(just)f(strings,)h(and)f(an)m(y)g(in)m(terpretation)g(is)g
(supplied)d(b)m(y)k(y)m(our)f(program)630 4693 y(itself.)39
b(The)29 b Fn(v)-5 b(alue)34 b Fu(parameter)29 b(is)g(optional;)g(if)f
(it)h(is)f(eliminated,)g(the)h(v)-5 b(ariable)28 b(is)g(set)i(to)630
4802 y(a)h(n)m(ull)d(v)-5 b(alue.)630 4947 y(F)d(or)31
b(example,)f(this)g(command:)870 5086 y Fo(set)47 b(env)g(USER)f(=)i
(foo)630 5230 y Fu(tells)23 b(a)h(Unix)e(program,)j(when)e(subsequen)m
(tly)f(run,)i(that)g(its)f(user)g(is)g(named)g(`)p Fo(foo)p
Fu('.)38 b(\(The)630 5340 y(spaces)31 b(around)e(`)p
Fo(=)p Fu(')i(are)f(used)g(for)g(clarit)m(y)g(here;)h(they)f(are)h(not)
g(actually)f(required.\))p eop
%%Page: 22 24
22 23 bop 150 -116 a Fu(22)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(unset)g(environment)e Fn(v)-5 b(arname)630 408
y Fu(Remo)m(v)m(e)29 b(v)-5 b(ariable)27 b Fn(v)-5 b(arname)33
b Fu(from)27 b(the)g(en)m(vironmen)m(t)h(to)g(b)s(e)f(passed)g(to)h(y)m
(our)g(program.)630 518 y(This)39 b(is)h(di\013eren)m(t)g(from)g(`)p
Fo(set)30 b(env)f Fn(v)-5 b(arname)36 b Fo(=)p Fu(';)46
b Fo(unset)29 b(environment)38 b Fu(remo)m(v)m(es)k(the)630
628 y(v)-5 b(ariable)29 b(from)h(the)h(en)m(vironmen)m(t,)f(rather)g
(than)g(assigning)f(it)h(an)g(empt)m(y)h(v)-5 b(alue.)275
790 y Fr(Warning:)44 b Fu(GDB)27 b(runs)e(y)m(our)h(program)g(using)f
(the)i(shell)d(indicated)h(b)m(y)h(y)m(our)g Fo(SHELL)f
Fu(en)m(vironmen)m(t)150 899 y(v)-5 b(ariable)31 b(if)h(it)g(exists)g
(\(or)h Fo(/bin/sh)e Fu(if)g(not\).)48 b(If)32 b(y)m(our)g
Fo(SHELL)g Fu(v)-5 b(ariable)31 b(names)h(a)h(shell)e(that)i(runs)e(an)
150 1009 y(initialization)d(\014le|suc)m(h)j(as)h(`)p
Fo(.cshrc)p Fu(')e(for)h(C-shell,)f(or)i(`)p Fo(.bashrc)p
Fu(')e(for)h(BASH|an)m(y)h(v)-5 b(ariables)31 b(y)m(ou)150
1118 y(set)c(in)f(that)h(\014le)f(a\013ect)i(y)m(our)f(program.)39
b(Y)-8 b(ou)27 b(ma)m(y)h(wish)d(to)i(mo)m(v)m(e)h(setting)f(of)g(en)m
(vironmen)m(t)f(v)-5 b(ariables)150 1228 y(to)31 b(\014les)e(that)i
(are)g(only)f(run)f(when)g(y)m(ou)i(sign)e(on,)i(suc)m(h)f(as)g(`)p
Fo(.login)p Fu(')f(or)i(`)p Fo(.profile)p Fu('.)150 1489
y Fs(4.5)68 b(Y)-11 b(our)44 b(program's)i(w)l(orking)g(directory)275
1684 y Fu(Eac)m(h)35 b(time)f(y)m(ou)g(start)h(y)m(our)g(program)f
(with)f Fo(run)p Fu(,)i(it)e(inherits)g(its)g(w)m(orking)h(directory)g
(from)g(the)150 1793 y(curren)m(t)43 b(w)m(orking)g(directory)g(of)h
(GDB.)h(The)e(GDB)i(w)m(orking)e(directory)g(is)g(initially)d(whatev)m
(er)k(it)150 1903 y(inherited)32 b(from)i(its)g(paren)m(t)h(pro)s(cess)
f(\(t)m(ypically)f(the)i(shell\),)f(but)g(y)m(ou)h(can)g(sp)s(ecify)e
(a)i(new)f(w)m(orking)150 2012 y(directory)c(in)f(GDB)i(with)e(the)i
Fo(cd)f Fu(command.)275 2149 y(The)f(GDB)h(w)m(orking)f(directory)g
(also)g(serv)m(es)h(as)g(a)g(default)f(for)g(the)h(commands)f(that)h
(sp)s(ecify)e(\014les)150 2258 y(for)i(GDB)i(to)f(op)s(erate)g(on.)40
b(See)31 b(Section)f(12.1)i([Commands)e(to)h(sp)s(ecify)e(\014les],)h
(page)h(101.)150 2472 y Fo(cd)f Fn(directory)630 2582
y Fu(Set)h(the)f(GDB)i(w)m(orking)d(directory)h(to)h
Fn(directory)p Fu(.)150 2743 y Fo(pwd)336 b Fu(Prin)m(t)29
b(the)i(GDB)g(w)m(orking)f(directory)-8 b(.)150 3005
y Fs(4.6)68 b(Y)-11 b(our)44 b(program's)i(input)f(and)f(output)275
3199 y Fu(By)23 b(default,)i(the)e(program)h(y)m(ou)f(run)f(under)g
(GDB)j(do)s(es)e(input)f(and)h(output)g(to)h(the)g(same)f(terminal)150
3308 y(that)j(GDB)h(uses.)39 b(GDB)27 b(switc)m(hes)e(the)h(terminal)e
(to)j(its)e(o)m(wn)h(terminal)e(mo)s(des)h(to)h(in)m(teract)h(with)d(y)
m(ou,)150 3418 y(but)i(it)g(records)h(the)g(terminal)e(mo)s(des)i(y)m
(our)f(program)h(w)m(as)g(using)e(and)i(switc)m(hes)f(bac)m(k)i(to)f
(them)g(when)150 3528 y(y)m(ou)k(con)m(tin)m(ue)f(running)e(y)m(our)i
(program.)150 3742 y Fo(info)f(terminal)630 3851 y Fu(Displa)m(ys)22
b(information)g(recorded)h(b)m(y)h(GDB)g(ab)s(out)f(the)h(terminal)e
(mo)s(des)h(y)m(our)g(program)630 3961 y(is)29 b(using.)275
4123 y(Y)-8 b(ou)37 b(can)g(redirect)f(y)m(our)h(program's)g(input)e
(and/or)i(output)f(using)g(shell)f(redirection)g(with)h(the)150
4232 y Fo(run)29 b Fu(command.)41 b(F)-8 b(or)31 b(example,)390
4363 y Fo(run)47 b(>)g(outfile)150 4499 y Fu(starts)31
b(y)m(our)f(program,)h(div)m(erting)e(its)g(output)h(to)h(the)g(\014le)
e(`)p Fo(outfile)p Fu('.)275 4635 y(Another)39 b(w)m(a)m(y)i(to)g(sp)s
(ecify)d(where)h(y)m(our)h(program)g(should)d(do)j(input)e(and)h
(output)g(is)g(with)g(the)150 4745 y Fo(tty)32 b Fu(command.)48
b(This)31 b(command)i(accepts)h(a)g(\014le)e(name)h(as)g(argumen)m(t,)h
(and)f(causes)g(this)f(\014le)g(to)i(b)s(e)150 4854 y(the)h(default)g
(for)g(future)f Fo(run)g Fu(commands.)55 b(It)35 b(also)h(resets)f(the)
g(con)m(trolling)g(terminal)e(for)i(the)h(c)m(hild)150
4964 y(pro)s(cess,)30 b(for)g(future)g Fo(run)f Fu(commands.)41
b(F)-8 b(or)31 b(example,)390 5094 y Fo(tty)47 b(/dev/ttyb)150
5230 y Fu(directs)21 b(that)g(pro)s(cesses)g(started)h(with)e
(subsequen)m(t)h Fo(run)f Fu(commands)h(default)f(to)i(do)f(input)f
(and)g(output)150 5340 y(on)30 b(the)h(terminal)e(`)p
Fo(/dev/ttyb)p Fu(')f(and)i(ha)m(v)m(e)h(that)g(as)g(their)e(con)m
(trolling)h(terminal.)p eop
%%Page: 23 25
23 24 bop 150 -116 a Fu(Chapter)30 b(4:)41 b(Running)28
b(Programs)i(Under)g(GDB)1783 b(23)275 299 y(An)32 b(explicit)g
(redirection)g(in)g Fo(run)h Fu(o)m(v)m(errides)g(the)g
Fo(tty)g Fu(command's)g(e\013ect)i(on)e(the)h(input/output)150
408 y(device,)d(but)e(not)i(its)f(e\013ect)h(on)g(the)f(con)m(trolling)
g(terminal.)275 555 y(When)g(y)m(ou)h(use)g(the)g Fo(tty)e
Fu(command)i(or)g(redirect)f(input)f(in)g(the)i Fo(run)f
Fu(command,)h(only)f(the)h(input)150 665 y Fr(for)i(your)g(pr)-5
b(o)g(gr)g(am)41 b Fu(is)29 b(a\013ected.)43 b(The)30
b(input)e(for)i(GDB)i(still)c(comes)j(from)f(y)m(our)g(terminal.)150
953 y Fs(4.7)68 b(Debugging)46 b(an)f(already-running)g(pro)t(cess)150
1189 y Fo(attach)29 b Fn(pro)s(cess-id)630 1299 y Fu(This)39
b(command)i(attac)m(hes)j(to)e(a)f(running)e(pro)s(cess|one)i(that)g(w)
m(as)h(started)g(outside)630 1409 y(GDB.)22 b(\()p Fo(info)29
b(files)19 b Fu(sho)m(ws)h(y)m(our)g(activ)m(e)i(targets.\))39
b(The)20 b(command)g(tak)m(es)i(as)e(argumen)m(t)630
1518 y(a)27 b(pro)s(cess)f(ID.)h(The)f(usual)f(w)m(a)m(y)j(to)f(\014nd)
e(out)i(the)g(pro)s(cess-id)e(of)i(a)g(Unix)e(pro)s(cess)i(is)e(with)
630 1628 y(the)31 b Fo(ps)e Fu(utilit)m(y)-8 b(,)30 b(or)g(with)f(the)i
(`)p Fo(jobs)e(-l)p Fu(')h(shell)f(command.)630 1769
y Fo(attach)38 b Fu(do)s(es)h(not)g(rep)s(eat)h(if)e(y)m(ou)i(press)
2141 1766 y Fj(h)p 2165 1713 151 4 v 2165 1769 a Fi(RET)p
2165 1784 V 2312 1766 a Fj(i)2381 1769 y Fu(a)g(second)f(time)g(after)h
(executing)g(the)630 1878 y(command.)275 2056 y(T)-8
b(o)33 b(use)g Fo(attach)p Fu(,)f(y)m(our)h(program)f(m)m(ust)h(b)s(e)f
(running)e(in)i(an)h(en)m(vironmen)m(t)f(whic)m(h)g(supp)s(orts)f(pro-)
150 2166 y(cesses;)f(for)f(example,)g Fo(attach)e Fu(do)s(es)h(not)h(w)
m(ork)g(for)f(programs)h(on)f(bare-b)s(oard)g(targets)j(that)e(lac)m(k)
g(an)150 2275 y(op)s(erating)h(system.)41 b(Y)-8 b(ou)31
b(m)m(ust)f(also)g(ha)m(v)m(e)i(p)s(ermission)27 b(to)k(send)f(the)g
(pro)s(cess)g(a)h(signal.)275 2422 y(When)i(y)m(ou)i(use)f
Fo(attach)p Fu(,)f(the)i(debugger)f(\014nds)e(the)i(program)g(running)e
(in)h(the)h(pro)s(cess)g(\014rst)f(b)m(y)150 2532 y(lo)s(oking)h(in)g
(the)h(curren)m(t)h(w)m(orking)e(directory)-8 b(,)37
b(then)e(\(if)f(the)i(program)f(is)f(not)i(found\))e(b)m(y)h(using)f
(the)150 2641 y(source)i(\014le)f(searc)m(h)h(path)f(\(see)i(Section)f
(7.3)g([Sp)s(ecifying)e(source)i(directories],)g(page)h(53\).)57
b(Y)-8 b(ou)37 b(can)150 2751 y(also)c(use)f(the)h Fo(file)e
Fu(command)i(to)g(load)f(the)h(program.)47 b(See)33 b(Section)f(12.1)j
([Commands)c(to)j(Sp)s(ecify)150 2861 y(Files],)c(page)h(101.)275
3007 y(The)36 b(\014rst)g(thing)f(GDB)j(do)s(es)e(after)h(arranging)f
(to)i(debug)d(the)i(sp)s(eci\014ed)e(pro)s(cess)h(is)g(to)h(stop)g(it.)
150 3117 y(Y)-8 b(ou)38 b(can)g(examine)f(and)g(mo)s(dify)f(an)h(attac)
m(hed)i(pro)s(cess)e(with)g(all)f(the)i(GDB)g(commands)f(that)i(are)150
3227 y(ordinarily)c(a)m(v)-5 b(ailable)37 b(when)f(y)m(ou)i(start)h
(pro)s(cesses)e(with)g Fo(run)p Fu(.)61 b(Y)-8 b(ou)39
b(can)f(insert)e(breakp)s(oin)m(ts;)41 b(y)m(ou)150 3336
y(can)35 b(step)g(and)f(con)m(tin)m(ue;)k(y)m(ou)d(can)g(mo)s(dify)e
(storage.)56 b(If)35 b(y)m(ou)g(w)m(ould)e(rather)i(the)g(pro)s(cess)g
(con)m(tin)m(ue)150 3446 y(running,)28 b(y)m(ou)j(ma)m(y)g(use)f(the)g
Fo(continue)e Fu(command)i(after)h(attac)m(hing)h(GDB)f(to)g(the)g(pro)
s(cess.)150 3692 y Fo(detach)192 b Fu(When)21 b(y)m(ou)h(ha)m(v)m(e)h
(\014nished)c(debugging)i(the)h(attac)m(hed)h(pro)s(cess,)h(y)m(ou)e
(can)f(use)h(the)g Fo(detach)630 3802 y Fu(command)32
b(to)g(release)g(it)g(from)f(GDB)i(con)m(trol.)45 b(Detac)m(hing)33
b(the)f(pro)s(cess)g(con)m(tin)m(ues)g(its)630 3911 y(execution.)61
b(After)38 b(the)f Fo(detach)f Fu(command,)j(that)f(pro)s(cess)f(and)f
(GDB)i(b)s(ecome)g(com-)630 4021 y(pletely)c(indep)s(enden)m(t)f(once)i
(more,)i(and)d(y)m(ou)h(are)h(ready)e(to)i Fo(attach)d
Fu(another)i(pro)s(cess)630 4131 y(or)i(start)g(one)g(with)f
Fo(run)p Fu(.)59 b Fo(detach)35 b Fu(do)s(es)h(not)h(rep)s(eat)g(if)f
(y)m(ou)h(press)3079 4128 y Fj(h)p 3103 4075 V 3103 4131
a Fi(RET)p 3103 4146 V 3250 4128 a Fj(i)3317 4131 y Fu(again)f(after)
630 4240 y(executing)31 b(the)f(command.)275 4418 y(If)h(y)m(ou)i(exit)
f(GDB)i(or)e(use)g(the)h Fo(run)e Fu(command)h(while)e(y)m(ou)j(ha)m(v)
m(e)h(an)e(attac)m(hed)i(pro)s(cess,)f(y)m(ou)f(kill)150
4528 y(that)d(pro)s(cess.)40 b(By)29 b(default,)f(GDB)i(asks)e(for)h
(con\014rmation)e(if)h(y)m(ou)h(try)f(to)i(do)e(either)g(of)h(these)g
(things;)150 4637 y(y)m(ou)36 b(can)f(con)m(trol)h(whether)e(or)i(not)f
(y)m(ou)h(need)f(to)h(con\014rm)e(b)m(y)h(using)f(the)h
Fo(set)30 b(confirm)j Fu(command)150 4747 y(\(see)e(Section)g(14.6)g
([Optional)e(w)m(arnings)h(and)f(messages],)j(page)f(142\).)150
5035 y Fs(4.8)68 b(Killing)47 b(the)e(c)l(hild)g(pro)t(cess)150
5340 y Fo(kill)288 b Fu(Kill)28 b(the)i(c)m(hild)f(pro)s(cess)h(in)f
(whic)m(h)g(y)m(our)h(program)h(is)e(running)f(under)g(GDB.)p
eop
%%Page: 24 26
24 25 bop 150 -116 a Fu(24)2644 b(Debugging)31 b(with)e(GDB)275
299 y(This)f(command)h(is)g(useful)f(if)h(y)m(ou)h(wish)e(to)j(debug)e
(a)h(core)h(dump)d(instead)h(of)h(a)g(running)d(pro)s(cess.)150
408 y(GDB)k(ignores)f(an)m(y)h(core)g(dump)e(\014le)g(while)g(y)m(our)h
(program)g(is)g(running.)275 543 y(On)25 b(some)i(op)s(erating)f
(systems,)i(a)f(program)f(cannot)h(b)s(e)f(executed)i(outside)e(GDB)h
(while)e(y)m(ou)i(ha)m(v)m(e)150 652 y(breakp)s(oin)m(ts)22
b(set)i(on)f(it)g(inside)e(GDB.)k(Y)-8 b(ou)24 b(can)f(use)g(the)h
Fo(kill)e Fu(command)h(in)f(this)g(situation)h(to)h(p)s(ermit)150
762 y(running)k(y)m(our)i(program)g(outside)g(the)g(debugger.)275
896 y(The)39 b Fo(kill)g Fu(command)h(is)f(also)i(useful)d(if)h(y)m(ou)
i(wish)d(to)j(recompile)e(and)h(relink)e(y)m(our)i(program,)150
1006 y(since)29 b(on)h(man)m(y)h(systems)f(it)f(is)g(imp)s(ossible)e
(to)k(mo)s(dify)d(an)i(executable)h(\014le)e(while)f(it)h(is)g(running)
f(in)h(a)150 1115 y(pro)s(cess.)40 b(In)30 b(this)f(case,)j(when)d(y)m
(ou)h(next)h(t)m(yp)s(e)f Fo(run)p Fu(,)g(GDB)h(notices)g(that)g(the)f
(\014le)f(has)h(c)m(hanged,)i(and)150 1225 y(reads)e(the)h(sym)m(b)s
(ol)e(table)h(again)h(\(while)d(trying)i(to)h(preserv)m(e)f(y)m(our)h
(curren)m(t)f(breakp)s(oin)m(t)f(settings\).)150 1481
y Fs(4.9)68 b(Additional)46 b(pro)t(cess)e(information)275
1673 y Fu(Some)36 b(op)s(erating)g(systems)h(pro)m(vide)e(a)i(facilit)m
(y)f(called)g(`)p Fo(/proc)p Fu(')f(that)i(can)g(b)s(e)f(used)g(to)h
(examine)150 1783 y(the)c(image)h(of)f(a)h(running)d(pro)s(cess)h
(using)g(\014le-system)h(subroutines.)47 b(If)33 b(GDB)h(is)e
(con\014gured)h(for)g(an)150 1893 y(op)s(erating)24 b(system)h(with)f
(this)g(facilit)m(y)-8 b(,)25 b(the)g(command)g Fo(info)k(proc)24
b Fu(is)g(a)m(v)-5 b(ailable)24 b(to)i(rep)s(ort)e(on)h(sev)m(eral)150
2002 y(kinds)35 b(of)i(information)e(ab)s(out)h(the)h(pro)s(cess)f
(running)e(y)m(our)j(program.)59 b Fo(info)29 b(proc)36
b Fu(w)m(orks)g(only)g(on)150 2112 y(SVR4)28 b(systems)g(that)h(supp)s
(ort)d Fo(procfs)p Fu(.)38 b(This)26 b(includes)g(OSF/1)i(\(Digital)g
(Unix\),)g(Solaris,)f(Irix,)h(and)150 2221 y(Unixw)m(are,)i(but)g(not)g
(HP-UX)h(or)g(Lin)m(ux,)e(for)h(example.)150 2429 y Fo(info)f(proc)67
b Fu(Summarize)29 b(a)m(v)-5 b(ailable)30 b(information)e(ab)s(out)i
(the)h(pro)s(cess.)150 2588 y Fo(info)e(proc)g(mappings)630
2698 y Fu(Rep)s(ort)36 b(on)g(the)g(address)f(ranges)i(accessible)e(in)
g(the)h(program,)i(with)d(information)f(on)630 2807 y(whether)c(y)m
(our)g(program)g(ma)m(y)h(read,)g(write,)f(or)g(execute)i(eac)m(h)f
(range.)150 2966 y Fo(info)e(proc)g(times)630 3075 y
Fu(Starting)g(time,)g(user)g(CPU)g(time,)h(and)e(system)i(CPU)f(time)g
(for)g(y)m(our)h(program)f(and)g(its)630 3185 y(c)m(hildren.)150
3344 y Fo(info)g(proc)g(id)630 3453 y Fu(Rep)s(ort)f(on)g(the)h(pro)s
(cess)f(IDs)h(related)f(to)h(y)m(our)f(program:)40 b(its)28
b(o)m(wn)g(pro)s(cess)g(ID,)h(the)g(ID)630 3563 y(of)i(its)e(paren)m
(t,)i(the)g(pro)s(cess)f(group)f(ID,)i(and)f(the)h(session)e(ID.)150
3722 y Fo(info)g(proc)g(status)630 3831 y Fu(General)h(information)f
(on)h(the)h(state)h(of)e(the)h(pro)s(cess.)40 b(If)30
b(the)h(pro)s(cess)f(is)f(stopp)s(ed,)h(this)630 3941
y(rep)s(ort)g(includes)e(the)i(reason)h(for)f(stopping,)f(and)h(an)m(y)
h(signal)e(receiv)m(ed.)150 4100 y Fo(info)g(proc)g(all)630
4209 y Fu(Sho)m(w)h(all)f(the)i(ab)s(o)m(v)m(e)g(information)e(ab)s
(out)h(the)h(pro)s(cess.)150 4466 y Fs(4.10)68 b(Debugging)46
b(programs)f(with)h(m)l(ultiple)g(threads)275 4658 y
Fu(In)24 b(some)h(op)s(erating)g(systems,)h(suc)m(h)f(as)h(HP-UX)f(and)
g(Solaris,)g(a)g(single)f(program)h(ma)m(y)g(ha)m(v)m(e)i(more)150
4767 y(than)34 b(one)h Fn(thread)k Fu(of)34 b(execution.)54
b(The)35 b(precise)f(seman)m(tics)h(of)f(threads)h(di\013er)e(from)h
(one)h(op)s(erating)150 4877 y(system)42 b(to)h(another,)i(but)d(in)e
(general)i(the)g(threads)g(of)g(a)h(single)d(program)i(are)g(akin)g(to)
g(m)m(ultiple)150 4987 y(pro)s(cesses|except)g(that)f(they)g(share)f
(one)i(address)e(space)h(\(that)h(is,)g(they)f(can)g(all)f(examine)h
(and)150 5096 y(mo)s(dify)f(the)i(same)g(v)-5 b(ariables\).)75
b(On)41 b(the)h(other)g(hand,)i(eac)m(h)f(thread)e(has)h(its)f(o)m(wn)h
(registers)g(and)150 5206 y(execution)31 b(stac)m(k,)h(and)d(p)s
(erhaps)g(priv)-5 b(ate)30 b(memory)-8 b(.)275 5340 y(GDB)31
b(pro)m(vides)e(these)i(facilities)e(for)h(debugging)f(m)m(ulti-thread)
g(programs:)p eop
%%Page: 25 27
25 26 bop 150 -116 a Fu(Chapter)30 b(4:)41 b(Running)28
b(Programs)i(Under)g(GDB)1783 b(25)225 299 y Fq(\017)60
b Fu(automatic)31 b(noti\014cation)f(of)h(new)e(threads)225
434 y Fq(\017)60 b Fu(`)p Fo(thread)29 b Fn(threadno)5
b Fu(',)30 b(a)h(command)f(to)h(switc)m(h)f(among)h(threads)225
569 y Fq(\017)60 b Fu(`)p Fo(info)29 b(threads)p Fu(',)g(a)i(command)f
(to)h(inquire)d(ab)s(out)i(existing)g(threads)225 703
y Fq(\017)60 b Fu(`)p Fo(thread)29 b(apply)g([)p Fn(threadno)5
b Fo(])29 b([)p Fn(all)t Fo(])f Fn(args)t Fu(',)43 b(a)e(command)f(to)h
(apply)d(a)j(command)f(to)h(a)f(list)f(of)330 813 y(threads)225
948 y Fq(\017)60 b Fu(thread-sp)s(eci\014c)29 b(breakp)s(oin)m(ts)390
1102 y Fr(Warning:)68 b Fu(These)40 b(facilities)g(are)h(not)h(y)m(et)g
(a)m(v)-5 b(ailable)40 b(on)h(ev)m(ery)h(GDB)h(con\014guration)390
1206 y(where)34 b(the)h(op)s(erating)f(system)g(supp)s(orts)f(threads.)
53 b(If)34 b(y)m(our)g(GDB)i(do)s(es)e(not)h(supp)s(ort)390
1310 y(threads,)27 b(these)g(commands)e(ha)m(v)m(e)j(no)e(e\013ect.)41
b(F)-8 b(or)27 b(example,)g(a)g(system)f(without)f(thread)390
1414 y(supp)s(ort)31 b(sho)m(ws)i(no)f(output)h(from)f(`)p
Fo(info)e(threads)p Fu(',)i(and)g(alw)m(a)m(ys)h(rejects)h(the)f
Fo(thread)390 1518 y Fu(command,)d(lik)m(e)g(this:)630
1647 y Fo(\(gdb\))46 b(info)h(threads)630 1751 y(\(gdb\))f(thread)g(1)
630 1855 y(Thread)g(ID)h(1)h(not)f(known.)93 b(Use)47
b(the)g("info)g(threads")e(command)h(to)630 1958 y(see)h(the)g(IDs)g
(of)g(currently)e(known)i(threads.)275 2093 y Fu(The)24
b(GDB)h(thread)f(debugging)g(facilit)m(y)g(allo)m(ws)f(y)m(ou)i(to)h
(observ)m(e)f(all)e(threads)h(while)f(y)m(our)h(program)150
2203 y(runs|but)39 b(whenev)m(er)i(GDB)i(tak)m(es)g(con)m(trol,)h(one)e
(thread)f(in)f(particular)g(is)g(alw)m(a)m(ys)i(the)g(fo)s(cus)f(of)150
2313 y(debugging.)k(This)30 b(thread)i(is)g(called)f(the)h
Fn(curren)m(t)g(thread)p Fu(.)46 b(Debugging)32 b(commands)g(sho)m(w)g
(program)150 2422 y(information)d(from)h(the)g(p)s(ersp)s(ectiv)m(e)g
(of)g(the)h(curren)m(t)f(thread.)275 2557 y(Whenev)m(er)35
b(GDB)h(detects)g(a)f(new)f(thread)h(in)e(y)m(our)i(program,)h(it)e
(displa)m(ys)f(the)i(target)i(system's)150 2667 y(iden)m(ti\014cation)
30 b(for)g(the)i(thread)e(with)g(a)i(message)g(in)d(the)j(form)e(`)p
Fo([New)g Fn(systag)8 b Fo(])p Fu('.)43 b Fn(systag)d
Fu(is)30 b(a)h(thread)150 2777 y(iden)m(ti\014er)c(whose)i(form)f(v)-5
b(aries)28 b(dep)s(ending)f(on)h(the)h(particular)f(system.)40
b(F)-8 b(or)29 b(example,)h(on)e(LynxOS,)150 2886 y(y)m(ou)j(migh)m(t)f
(see)390 3016 y Fo([New)47 b(process)e(35)j(thread)e(27])150
3151 y Fu(when)40 b(GDB)j(notices)e(a)h(new)e(thread.)73
b(In)41 b(con)m(trast,)k(on)d(an)f(SGI)f(system,)45 b(the)c
Fn(systag)50 b Fu(is)40 b(simply)150 3260 y(something)30
b(lik)m(e)g(`)p Fo(process)e(368)p Fu(',)i(with)f(no)h(further)g
(quali\014er.)275 3396 y(F)-8 b(or)54 b(debugging)e(purp)s(oses,)58
b(GDB)c(asso)s(ciates)g(its)f(o)m(wn)h(thread)f(n)m(um)m(b)s(er|alw)m
(a)m(ys)f(a)i(single)150 3505 y(in)m(teger|with)29 b(eac)m(h)j(thread)e
(in)f(y)m(our)h(program.)150 3716 y Fo(info)f(threads)630
3826 y Fu(Displa)m(y)e(a)i(summary)e(of)h(all)f(threads)h(curren)m(tly)
f(in)g(y)m(our)h(program.)40 b(GDB)29 b(displa)m(ys)d(for)630
3936 y(eac)m(h)32 b(thread)e(\(in)f(this)g(order\):)679
4070 y(1.)61 b(the)31 b(thread)f(n)m(um)m(b)s(er)f(assigned)g(b)m(y)i
(GDB)679 4205 y(2.)61 b(the)31 b(target)g(system's)g(thread)f(iden)m
(ti\014er)f(\()p Fn(systag)8 b Fu(\))679 4340 y(3.)61
b(the)31 b(curren)m(t)f(stac)m(k)i(frame)e(summary)f(for)h(that)h
(thread)630 4500 y(An)41 b(asterisk)h(`)p Fo(*)p Fu(')g(to)g(the)g
(left)f(of)h(the)g(GDB)h(thread)e(n)m(um)m(b)s(er)g(indicates)f(the)i
(curren)m(t)630 4610 y(thread.)630 4745 y(F)-8 b(or)31
b(example,)390 4874 y Fo(\(gdb\))46 b(info)h(threads)485
4977 y(3)h(process)e(35)h(thread)f(27)95 b(0x34e5)46
b(in)h(sigpause)f(\(\))485 5081 y(2)i(process)e(35)h(thread)f(23)95
b(0x34e5)46 b(in)h(sigpause)f(\(\))390 5185 y(*)h(1)h(process)e(35)h
(thread)f(13)95 b(main)47 b(\(argc=1,)e(argv=0x7ffffff8\))581
5289 y(at)i(threadtest.c:68)p eop
%%Page: 26 28
26 27 bop 150 -116 a Fu(26)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(thread)g Fn(threadno)630 408 y Fu(Mak)m(e)40
b(thread)f(n)m(um)m(b)s(er)f Fn(threadno)43 b Fu(the)c(curren)m(t)g
(thread.)65 b(The)39 b(command)f(argumen)m(t)630 518
y Fn(threadno)d Fu(is)29 b(the)i(in)m(ternal)f(GDB)h(thread)g(n)m(um)m
(b)s(er,)e(as)i(sho)m(wn)f(in)f(the)i(\014rst)f(\014eld)f(of)i(the)630
628 y(`)p Fo(info)e(threads)p Fu(')35 b(displa)m(y)-8
b(.)57 b(GDB)38 b(resp)s(onds)c(b)m(y)i(displa)m(ying)e(the)j(system)f
(iden)m(ti\014er)f(of)630 737 y(the)c(thread)f(y)m(ou)g(selected,)i
(and)d(its)h(curren)m(t)g(stac)m(k)i(frame)e(summary:)870
866 y Fo(\(gdb\))46 b(thread)g(2)870 970 y([Switching)f(to)i(process)f
(35)h(thread)f(23])870 1073 y(0x34e5)g(in)h(sigpause)f(\(\))630
1208 y Fu(As)40 b(with)f(the)i(`)p Fo([New)29 b(...])p
Fu(')40 b(message,)k(the)d(form)f(of)g(the)h(text)g(after)g(`)p
Fo(Switching)28 b(to)p Fu(')630 1318 y(dep)s(ends)h(on)h(y)m(our)g
(system's)h(con)m(v)m(en)m(tions)g(for)f(iden)m(tifying)e(threads.)150
1477 y Fo(thread)h(apply)g([)p Fn(threadno)5 b Fo(])29
b([)p Fn(all)t Fo(])f Fn(args)630 1587 y Fu(The)34 b
Fo(thread)29 b(apply)k Fu(command)i(allo)m(ws)f(y)m(ou)h(to)h(apply)d
(a)j(command)e(to)i(one)f(or)g(more)630 1696 y(threads.)57
b(Sp)s(ecify)34 b(the)i(n)m(um)m(b)s(ers)f(of)h(the)g(threads)f(that)i
(y)m(ou)f(w)m(an)m(t)h(a\013ected)g(with)e(the)630 1806
y(command)g(argumen)m(t)h Fn(threadno)p Fu(.)56 b Fn(threadno)40
b Fu(is)35 b(the)h(in)m(ternal)e(GDB)j(thread)e(n)m(um)m(b)s(er,)630
1915 y(as)c(sho)m(wn)g(in)e(the)j(\014rst)e(\014eld)f(of)j(the)f(`)p
Fo(info)e(threads)p Fu(')g(displa)m(y)-8 b(.)42 b(T)-8
b(o)31 b(apply)f(a)h(command)630 2025 y(to)g(all)e(threads,)i(use)f
Fo(thread)e(apply)h(all)h Fn(args)p Fu(.)275 2209 y(Whenev)m(er)35
b(GDB)h(stops)f(y)m(our)g(program,)h(due)f(to)h(a)f(breakp)s(oin)m(t)f
(or)h(a)g(signal,)h(it)e(automatically)150 2319 y(selects)25
b(the)g(thread)f(where)g(that)h(breakp)s(oin)m(t)f(or)g(signal)f(happ)s
(ened.)37 b(GDB)26 b(alerts)e(y)m(ou)h(to)g(the)g(con)m(text)150
2428 y(switc)m(h)30 b(with)f(a)i(message)g(of)g(the)f(form)g(`)p
Fo([Switching)e(to)i Fn(systag)8 b Fo(])p Fu(')31 b(to)g(iden)m(tify)e
(the)h(thread.)275 2563 y(See)h(Section)f(5.4)i([Stopping)e(and)g
(starting)g(m)m(ulti-thread)g(programs],)h(page)h(42,)g(for)e(more)h
(infor-)150 2672 y(mation)e(ab)s(out)g(ho)m(w)g(GDB)h(b)s(eha)m(v)m(es)
g(when)e(y)m(ou)i(stop)f(and)g(start)g(programs)g(with)f(m)m(ultiple)f
(threads.)275 2807 y(See)35 b(Section)f(5.1.2)j([Setting)e(w)m(atc)m
(hp)s(oin)m(ts],)i(page)e(31,)j(for)c(information)g(ab)s(out)g(w)m(atc)
m(hp)s(oin)m(ts)h(in)150 2917 y(programs)30 b(with)f(m)m(ultiple)f
(threads.)150 3174 y Fs(4.11)68 b(Debugging)46 b(programs)f(with)h(m)l
(ultiple)g(pro)t(cesses)275 3367 y Fu(GDB)33 b(has)g(no)f(sp)s(ecial)g
(supp)s(ort)e(for)j(debugging)f(programs)g(whic)m(h)f(create)k
(additional)30 b(pro)s(cesses)150 3476 y(using)k(the)h
Fo(fork)f Fu(function.)54 b(When)35 b(a)g(program)g(forks,)i(GDB)f
(will)c(con)m(tin)m(ue)k(to)g(debug)e(the)i(paren)m(t)150
3586 y(pro)s(cess)28 b(and)f(the)i(c)m(hild)e(pro)s(cess)g(will)f(run)h
(unimp)s(eded.)37 b(If)27 b(y)m(ou)i(ha)m(v)m(e)g(set)g(a)g(breakp)s
(oin)m(t)e(in)g(an)m(y)i(co)s(de)150 3695 y(whic)m(h)i(the)i(c)m(hild)d
(then)j(executes,)h(the)f(c)m(hild)d(will)g(get)k(a)e
Fo(SIGTRAP)f Fu(signal)g(whic)m(h)g(\(unless)g(it)h(catc)m(hes)150
3805 y(the)f(signal\))e(will)f(cause)j(it)f(to)h(terminate.)275
3939 y(Ho)m(w)m(ev)m(er,)36 b(if)d(y)m(ou)g(w)m(an)m(t)i(to)f(debug)f
(the)h(c)m(hild)d(pro)s(cess)j(there)f(is)g(a)h(w)m(ork)-5
b(around)32 b(whic)m(h)h(isn't)f(to)s(o)150 4049 y(painful.)39
b(Put)31 b(a)g(call)f(to)i Fo(sleep)d Fu(in)g(the)i(co)s(de)h(whic)m(h)
d(the)i(c)m(hild)e(pro)s(cess)i(executes)h(after)f(the)g(fork.)42
b(It)150 4159 y(ma)m(y)32 b(b)s(e)f(useful)e(to)j(sleep)f(only)g(if)f
(a)i(certain)f(en)m(vironmen)m(t)g(v)-5 b(ariable)30
b(is)h(set,)h(or)g(a)f(certain)h(\014le)e(exists,)150
4268 y(so)f(that)g(the)f(dela)m(y)h(need)f(not)h(o)s(ccur)f(when)g(y)m
(ou)g(don't)h(w)m(an)m(t)g(to)g(run)e(GDB)j(on)e(the)h(c)m(hild.)38
b(While)28 b(the)150 4378 y(c)m(hild)c(is)g(sleeping,)h(use)g(the)h
Fo(ps)f Fu(program)g(to)h(get)g(its)f(pro)s(cess)g(ID.)h(Then)e(tell)h
(GDB)h(\(a)g(new)f(in)m(v)m(o)s(cation)150 4487 y(of)36
b(GDB)i(if)d(y)m(ou)i(are)g(also)f(debugging)f(the)i(paren)m(t)f(pro)s
(cess\))h(to)g(attac)m(h)h(to)f(the)f(c)m(hild)f(pro)s(cess)h(\(see)150
4597 y(Section)26 b(4.7)i([A)m(ttac)m(h],)i(page)d(23\).)41
b(F)-8 b(rom)27 b(that)g(p)s(oin)m(t)e(on)h(y)m(ou)h(can)g(debug)e(the)
i(c)m(hild)e(pro)s(cess)h(just)g(lik)m(e)150 4707 y(an)m(y)31
b(other)f(pro)s(cess)g(whic)m(h)f(y)m(ou)i(attac)m(hed)h(to.)p
eop
%%Page: 27 29
27 28 bop 150 -116 a Fu(Chapter)30 b(5:)41 b(Stopping)29
b(and)h(Con)m(tin)m(uing)2042 b(27)150 299 y Fp(5)80
b(Stopping)53 b(and)g(Con)l(tin)l(uing)275 543 y Fu(The)24
b(principal)d(purp)s(oses)i(of)i(using)e(a)i(debugger)g(are)g(so)g
(that)g(y)m(ou)g(can)g(stop)g(y)m(our)g(program)f(b)s(efore)150
653 y(it)35 b(terminates;)k(or)d(so)g(that,)i(if)d(y)m(our)h(program)g
(runs)e(in)m(to)i(trouble,)h(y)m(ou)f(can)g(in)m(v)m(estigate)h(and)e
(\014nd)150 762 y(out)c(wh)m(y)-8 b(.)275 900 y(Inside)41
b(GDB,)k(y)m(our)f(program)f(ma)m(y)h(stop)g(for)f(an)m(y)h(of)g(sev)m
(eral)g(reasons,)j(suc)m(h)c(as)h(a)g(signal,)i(a)150
1010 y(breakp)s(oin)m(t,)39 b(or)g(reac)m(hing)f(a)h(new)e(line)g
(after)i(a)f(GDB)i(command)e(suc)m(h)g(as)g Fo(step)p
Fu(.)64 b(Y)-8 b(ou)38 b(ma)m(y)h(then)150 1120 y(examine)32
b(and)f(c)m(hange)j(v)-5 b(ariables,)31 b(set)i(new)e(breakp)s(oin)m
(ts)g(or)h(remo)m(v)m(e)i(old)d(ones,)i(and)f(then)g(con)m(tin)m(ue)150
1229 y(execution.)51 b(Usually)-8 b(,)34 b(the)g(messages)h(sho)m(wn)f
(b)m(y)f(GDB)i(pro)m(vide)e(ample)h(explanation)e(of)j(the)f(status)150
1339 y(of)d(y)m(our)f(program|but)f(y)m(ou)i(can)g(also)f(explicitly)e
(request)i(this)g(information)e(at)j(an)m(y)g(time.)150
1558 y Fo(info)e(program)630 1668 y Fu(Displa)m(y)35
b(information)f(ab)s(out)h(the)h(status)h(of)e(y)m(our)h(program:)51
b(whether)36 b(it)f(is)g(running)630 1777 y(or)30 b(not,)h(what)g(pro)s
(cess)e(it)h(is,)g(and)g(wh)m(y)g(it)g(stopp)s(ed.)150
2043 y Fs(5.1)68 b(Breakp)t(oin)l(ts,)46 b(w)l(atc)l(hp)t(oin)l(ts,)g
(and)f(catc)l(hp)t(oin)l(ts)275 2239 y Fu(A)e Fn(breakp)s(oin)m(t)i
Fu(mak)m(es)f(y)m(our)g(program)f(stop)h(whenev)m(er)f(a)h(certain)g(p)
s(oin)m(t)e(in)h(the)h(program)f(is)150 2349 y(reac)m(hed.)67
b(F)-8 b(or)40 b(eac)m(h)g(breakp)s(oin)m(t,)h(y)m(ou)e(can)g(add)g
(conditions)e(to)j(con)m(trol)g(in)d(\014ner)h(detail)h(whether)150
2459 y(y)m(our)e(program)h(stops.)62 b(Y)-8 b(ou)38 b(can)g(set)g
(breakp)s(oin)m(ts)e(with)g(the)i Fo(break)e Fu(command)h(and)g(its)g
(v)-5 b(arian)m(ts)150 2568 y(\(see)31 b(Section)g(5.1.1)h([Setting)e
(breakp)s(oin)m(ts],)g(page)h(28\),)h(to)g(sp)s(ecify)d(the)h(place)h
(where)f(y)m(our)g(program)150 2678 y(should)e(stop)j(b)m(y)f(line)f(n)
m(um)m(b)s(er,)g(function)g(name)i(or)f(exact)i(address)d(in)g(the)i
(program.)275 2816 y(In)41 b(HP-UX,)h(SunOS)e(4.x,)45
b(SVR4,)g(Op)s(enStep,)e(MacOS,)g(and)e(Alpha)f(OSF/1)i
(con\014gurations,)150 2925 y(y)m(ou)34 b(can)f(set)h(breakp)s(oin)m
(ts)e(in)g(shared)h(libraries)d(b)s(efore)j(the)g(executable)h(is)f
(run.)48 b(There)32 b(is)h(a)g(minor)150 3035 y(limitation)i(on)j
(HP-UX)g(systems:)55 b(y)m(ou)38 b(m)m(ust)g(w)m(ait)f(un)m(til)f(the)i
(executable)g(is)f(run)f(in)g(order)h(to)h(set)150 3144
y(breakp)s(oin)m(ts)43 b(in)f(shared)i(library)d(routines)i(that)i(are)
f(not)g(called)f(directly)g(b)m(y)h(the)g(program)g(\(for)150
3254 y(example,)30 b(routines)g(that)h(are)f(argumen)m(ts)h(in)e(a)i
Fo(pthread_create)26 b Fu(call\).)275 3392 y(A)41 b Fn(w)m(atc)m(hp)s
(oin)m(t)j Fu(is)c(a)i(sp)s(ecial)e(breakp)s(oin)m(t)g(that)j(stops)e
(y)m(our)g(program)g(when)g(the)h(v)-5 b(alue)40 b(of)i(an)150
3502 y(expression)23 b(c)m(hanges.)40 b(Y)-8 b(ou)25
b(m)m(ust)f(use)g(a)h(di\013eren)m(t)f(command)g(to)h(set)g(w)m(atc)m
(hp)s(oin)m(ts)g(\(see)g(Section)f(5.1.2)150 3611 y([Setting)j(w)m(atc)
m(hp)s(oin)m(ts],)h(page)g(31\),)h(but)e(aside)f(from)g(that,)j(y)m(ou)
e(can)h(manage)g(a)f(w)m(atc)m(hp)s(oin)m(t)g(lik)m(e)g(an)m(y)150
3721 y(other)33 b(breakp)s(oin)m(t:)43 b(y)m(ou)33 b(enable,)f
(disable,)f(and)h(delete)h(b)s(oth)e(breakp)s(oin)m(ts)g(and)h(w)m(atc)
m(hp)s(oin)m(ts)g(using)150 3830 y(the)f(same)f(commands.)275
3968 y(Y)-8 b(ou)37 b(can)h(arrange)g(to)g(ha)m(v)m(e)g(v)-5
b(alues)37 b(from)g(y)m(our)g(program)g(displa)m(y)m(ed)f
(automatically)h(whenev)m(er)150 4078 y(GDB)31 b(stops)g(at)g(a)g
(breakp)s(oin)m(t.)39 b(See)31 b(Section)f(8.6)i([Automatic)f(displa)m
(y],)e(page)i(60.)275 4216 y(A)c Fn(catc)m(hp)s(oin)m(t)i
Fu(is)e(another)g(sp)s(ecial)f(breakp)s(oin)m(t)g(that)h(stops)g(y)m
(our)g(program)g(when)f(a)i(certain)f(kind)150 4325 y(of)f(ev)m(en)m(t)
h(o)s(ccurs,)f(suc)m(h)g(as)f(the)h(thro)m(wing)f(of)h(a)g(C)p
Fo(++)e Fu(exception)i(or)g(the)f(loading)g(of)h(a)g(library)-8
b(.)37 b(As)25 b(with)150 4435 y(w)m(atc)m(hp)s(oin)m(ts,)39
b(y)m(ou)f(use)f(a)g(di\013eren)m(t)g(command)g(to)h(set)f(a)h(catc)m
(hp)s(oin)m(t)g(\(see)g(Section)f(5.1.3)i([Setting)150
4545 y(catc)m(hp)s(oin)m(ts],)h(page)e(32\),)i(but)d(aside)f(from)h
(that,)j(y)m(ou)d(can)h(manage)g(a)g(catc)m(hp)s(oin)m(t)g(lik)m(e)e
(an)m(y)i(other)150 4654 y(breakp)s(oin)m(t.)50 b(\(T)-8
b(o)34 b(stop)g(when)f(y)m(our)g(program)h(receiv)m(es)g(a)g(signal,)g
(use)f(the)h Fo(handle)e Fu(command;)j(see)150 4764 y(Section)30
b(5.3)i([Signals],)d(page)i(40.\))275 4902 y(GDB)i(assigns)f(a)i(n)m
(um)m(b)s(er)d(to)j(eac)m(h)g(breakp)s(oin)m(t,)e(w)m(atc)m(hp)s(oin)m
(t,)i(or)f(catc)m(hp)s(oin)m(t)g(when)f(y)m(ou)h(create)150
5011 y(it;)h(these)g(n)m(um)m(b)s(ers)e(are)h(successiv)m(e)h(in)m
(tegers)f(starting)g(with)f(one.)50 b(In)32 b(man)m(y)i(of)f(the)g
(commands)g(for)150 5121 y(con)m(trolling)40 b(v)-5 b(arious)40
b(features)h(of)g(breakp)s(oin)m(ts)f(y)m(ou)h(use)f(the)i(breakp)s
(oin)m(t)d(n)m(um)m(b)s(er)h(to)i(sa)m(y)f(whic)m(h)150
5230 y(breakp)s(oin)m(t)32 b(y)m(ou)g(w)m(an)m(t)i(to)f(c)m(hange.)49
b(Eac)m(h)33 b(breakp)s(oin)m(t)e(ma)m(y)j(b)s(e)e Fn(enabled)j
Fu(or)d Fn(disabled)t Fu(;)f(if)h(disabled,)150 5340
y(it)e(has)g(no)g(e\013ect)i(on)e(y)m(our)h(program)f(un)m(til)f(y)m
(ou)h(enable)g(it)g(again.)p eop
%%Page: 28 30
28 29 bop 150 -116 a Fu(28)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fk(5.1.1)63 b(Setting)41 b(breakp)s(oin)m(ts)275
487 y Fu(Breakp)s(oin)m(ts)e(are)h(set)g(with)e(the)i
Fo(break)e Fu(command)i(\(abbreviated)f Fo(b)p Fu(\).)69
b(The)39 b(debugger)g(con)m(v)m(e-)150 596 y(nience)d(v)-5
b(ariable)35 b(`)p Fo($bpnum)p Fu(')g(records)h(the)h(n)m(um)m(b)s(er)e
(of)i(the)f(breakp)s(oin)m(ts)g(y)m(ou'v)m(e)i(set)f(most)f(recen)m
(tly;)150 706 y(see)e(Section)e(8.9)j([Con)m(v)m(enience)e(v)-5
b(ariables],)33 b(page)h(67,)h(for)e(a)g(discussion)d(of)k(what)f(y)m
(ou)g(can)g(do)g(with)150 815 y(con)m(v)m(enience)e(v)-5
b(ariables.)275 945 y(Y)d(ou)30 b(ha)m(v)m(e)i(sev)m(eral)f(w)m(a)m(ys)
g(to)g(sa)m(y)g(where)f(the)h(breakp)s(oin)m(t)e(should)f(go.)150
1095 y Fo(break)h Fn(function)630 1204 y Fu(Set)35 b(a)g(breakp)s(oin)m
(t)f(at)h(en)m(try)g(to)h(function)d Fn(function)p Fu(.)53
b(When)34 b(using)g(source)h(languages)630 1314 y(that)h(p)s(ermit)e(o)
m(v)m(erloading)i(of)f(sym)m(b)s(ols,)h(suc)m(h)f(as)h(C)p
Fo(++)p Fu(,)g Fn(function)e Fu(ma)m(y)i(refer)g(to)g(more)630
1423 y(than)23 b(one)g(p)s(ossible)d(place)j(to)h(break.)38
b(See)23 b(Section)g(5.1.8)i([Breakp)s(oin)m(t)e(men)m(us],)h(page)g
(37,)630 1533 y(for)30 b(a)h(discussion)d(of)i(that)h(situation.)150
1683 y Fo(break)e(+)p Fn(o\013set)150 1792 y Fo(break)g(-)p
Fn(o\013set)630 1902 y Fu(Set)39 b(a)f(breakp)s(oin)m(t)g(some)h(n)m
(um)m(b)s(er)e(of)h(lines)f(forw)m(ard)h(or)g(bac)m(k)h(from)f(the)h(p)
s(osition)d(at)630 2011 y(whic)m(h)29 b(execution)i(stopp)s(ed)e(in)g
(the)i(curren)m(tly)e(selected)i(frame.)150 2161 y Fo(break)e
Fn(linen)m(um)630 2271 y Fu(Set)h(a)h(breakp)s(oin)m(t)e(at)i(line)e
Fn(linen)m(um)f Fu(in)h(the)h(curren)m(t)g(source)h(\014le.)40
b(That)30 b(\014le)f(is)h(the)g(last)630 2380 y(\014le)37
b(whose)g(source)g(text)i(w)m(as)f(prin)m(ted.)60 b(This)36
b(breakp)s(oin)m(t)g(stops)i(y)m(our)f(program)h(just)630
2490 y(b)s(efore)30 b(it)g(executes)i(an)m(y)e(of)h(the)f(co)s(de)h(on)
f(that)h(line.)150 2639 y Fo(break)e Fn(\014lename)5
b Fo(:)p Fn(linen)m(um)630 2749 y Fu(Set)31 b(a)f(breakp)s(oin)m(t)g
(at)h(line)d Fn(linen)m(um)g Fu(in)h(source)i(\014le)e
Fn(\014lename)p Fu(.)150 2899 y Fo(break)g Fn(\014lename)5
b Fo(:)p Fn(function)630 3008 y Fu(Set)26 b(a)h(breakp)s(oin)m(t)d(at)j
(en)m(try)f(to)h(function)e Fn(function)g Fu(found)f(in)h(\014le)g
Fn(\014lename)p Fu(.)38 b(Sp)s(ecifying)630 3118 y(a)29
b(\014le)e(name)i(as)f(w)m(ell)g(as)h(a)f(function)f(name)i(is)e(sup)s
(er\015uous)f(except)j(when)f(m)m(ultiple)e(\014les)630
3227 y(con)m(tain)31 b(similarly)c(named)j(functions.)150
3377 y Fo(break)f(*)p Fn(address)630 3486 y Fu(Set)39
b(a)g(breakp)s(oin)m(t)f(at)h(address)f Fn(address)p
Fu(.)65 b(Y)-8 b(ou)39 b(can)g(use)f(this)g(to)h(set)h(breakp)s(oin)m
(ts)d(in)630 3596 y(parts)27 b(of)g(y)m(our)g(program)g(whic)m(h)f(do)h
(not)g(ha)m(v)m(e)h(debugging)e(information)f(or)j(source)f(\014les.)
150 3746 y Fo(break)240 b Fu(When)35 b(called)g(without)f(an)m(y)i
(argumen)m(ts,)h Fo(break)d Fu(sets)i(a)f(breakp)s(oin)m(t)g(at)h(the)f
(next)h(in-)630 3855 y(struction)27 b(to)i(b)s(e)e(executed)i(in)d(the)
i(selected)g(stac)m(k)i(frame)d(\(see)i(Chapter)f(6)g([Examining)630
3965 y(the)h(Stac)m(k],)i(page)e(45\).)42 b(In)28 b(an)m(y)h(selected)g
(frame)g(but)f(the)h(innermost,)f(this)f(mak)m(es)j(y)m(our)630
4074 y(program)35 b(stop)g(as)g(so)s(on)f(as)h(con)m(trol)g(returns)f
(to)i(that)f(frame.)54 b(This)33 b(is)h(similar)e(to)k(the)630
4184 y(e\013ect)26 b(of)f(a)g Fo(finish)e Fu(command)h(in)f(the)i
(frame)g(inside)d(the)j(selected)g(frame|except)g(that)630
4294 y Fo(finish)h Fu(do)s(es)i(not)g(lea)m(v)m(e)h(an)f(activ)m(e)h
(breakp)s(oin)m(t.)39 b(If)28 b(y)m(ou)g(use)f Fo(break)g
Fu(without)g(an)h(argu-)630 4403 y(men)m(t)33 b(in)f(the)h(innermost)f
(frame,)i(GDB)g(stops)f(the)g(next)h(time)e(it)h(reac)m(hes)h(the)f
(curren)m(t)630 4513 y(lo)s(cation;)d(this)f(ma)m(y)i(b)s(e)f(useful)f
(inside)f(lo)s(ops.)630 4642 y(GDB)c(normally)d(ignores)i(breakp)s(oin)
m(ts)f(when)g(it)h(resumes)f(execution,)j(un)m(til)c(at)j(least)g(one)
630 4752 y(instruction)e(has)j(b)s(een)e(executed.)40
b(If)24 b(it)g(did)e(not)j(do)f(this,)h(y)m(ou)g(w)m(ould)e(b)s(e)h
(unable)f(to)i(pro-)630 4862 y(ceed)j(past)f(a)g(breakp)s(oin)m(t)f
(without)g(\014rst)g(disabling)e(the)j(breakp)s(oin)m(t.)39
b(This)25 b(rule)h(applies)630 4971 y(whether)k(or)g(not)h(the)f
(breakp)s(oin)m(t)g(already)g(existed)g(when)f(y)m(our)h(program)g
(stopp)s(ed.)150 5121 y Fo(break)f(...)g(if)h Fn(cond)630
5230 y Fu(Set)j(a)g(breakp)s(oin)m(t)e(with)h(condition)f
Fn(cond)t Fu(;)i(ev)-5 b(aluate)33 b(the)g(expression)f
Fn(cond)j Fu(eac)m(h)f(time)630 5340 y(the)26 b(breakp)s(oin)m(t)e(is)h
(reac)m(hed,)j(and)d(stop)g(only)g(if)g(the)g(v)-5 b(alue)26
b(is)e(nonzero|that)j(is,)f(if)e Fn(cond)p eop
%%Page: 29 31
29 30 bop 150 -116 a Fu(Chapter)30 b(5:)41 b(Stopping)29
b(and)h(Con)m(tin)m(uing)2042 b(29)630 299 y(ev)-5 b(aluates)43
b(as)g(true.)77 b(`)p Fo(...)p Fu(')42 b(stands)g(for)h(one)g(of)f(the)
h(p)s(ossible)d(argumen)m(ts)j(describ)s(ed)630 408 y(ab)s(o)m(v)m(e)d
(\(or)f(no)g(argumen)m(t\))g(sp)s(ecifying)e(where)h(to)i(break.)66
b(See)39 b(Section)f(5.1.6)j([Break)630 518 y(conditions],)29
b(page)i(35,)h(for)e(more)h(information)d(on)j(breakp)s(oin)m(t)e
(conditions.)150 690 y Fo(tbreak)g Fn(args)630 800 y
Fu(Set)g(a)h(breakp)s(oin)m(t)e(enabled)g(only)g(for)g(one)i(stop.)40
b Fn(args)33 b Fu(are)d(the)f(same)g(as)g(for)g(the)g
Fo(break)630 909 y Fu(command,)42 b(and)d(the)g(breakp)s(oin)m(t)g(is)f
(set)i(in)e(the)i(same)g(w)m(a)m(y)-8 b(,)43 b(but)c(the)g(breakp)s
(oin)m(t)g(is)630 1019 y(automatically)d(deleted)f(after)i(the)f
(\014rst)f(time)h(y)m(our)f(program)h(stops)g(there.)57
b(See)36 b(Sec-)630 1129 y(tion)30 b(5.1.5)i([Disabling)d(breakp)s(oin)
m(ts],)g(page)i(34.)150 1301 y Fo(hbreak)e Fn(args)630
1410 y Fu(Set)35 b(a)g(hardw)m(are-assisted)g(breakp)s(oin)m(t.)53
b Fn(args)38 b Fu(are)e(the)f(same)g(as)g(for)g(the)g
Fo(break)e Fu(com-)630 1520 y(mand)h(and)g(the)h(breakp)s(oin)m(t)f(is)
g(set)h(in)f(the)h(same)g(w)m(a)m(y)-8 b(,)37 b(but)e(the)g(breakp)s
(oin)m(t)e(requires)630 1630 y(hardw)m(are)g(supp)s(ort)f(and)h(some)h
(target)i(hardw)m(are)d(ma)m(y)h(not)g(ha)m(v)m(e)h(this)e(supp)s(ort.)
48 b(The)630 1739 y(main)26 b(purp)s(ose)f(of)i(this)f(is)g(EPR)m(OM/R)
m(OM)i(co)s(de)f(debugging,)g(so)g(y)m(ou)g(can)g(set)g(a)h(break-)630
1849 y(p)s(oin)m(t)23 b(at)i(an)f(instruction)f(without)g(c)m(hanging)h
(the)h(instruction.)36 b(This)23 b(can)h(b)s(e)g(used)f(with)630
1958 y(the)28 b(new)f(trap-generation)i(pro)m(vided)d(b)m(y)i(SP)-8
b(AR)m(Clite)27 b(DSU.)h(DSU)g(will)d(generate)k(traps)630
2068 y(when)k(a)g(program)h(accesses)h(some)f(data)g(or)g(instruction)d
(address)i(that)h(is)e(assigned)h(to)630 2178 y(the)g(debug)f
(registers.)48 b(Ho)m(w)m(ev)m(er)35 b(the)e(hardw)m(are)g(breakp)s
(oin)m(t)f(registers)g(can)h(only)f(tak)m(e)630 2287
y(t)m(w)m(o)e(data)g(breakp)s(oin)m(ts,)e(and)g(GDB)i(will)d(reject)i
(this)f(command)h(if)f(more)h(than)f(t)m(w)m(o)j(are)630
2397 y(used.)47 b(Delete)34 b(or)f(disable)e(un)m(used)g(hardw)m(are)h
(breakp)s(oin)m(ts)g(b)s(efore)g(setting)h(new)g(ones.)630
2506 y(See)e(Section)f(5.1.6)i([Break)f(conditions],)f(page)h(35.)150
2679 y Fo(thbreak)d Fn(args)630 2788 y Fu(Set)42 b(a)h(hardw)m
(are-assisted)e(breakp)s(oin)m(t)g(enabled)g(only)h(for)g(one)g(stop.)
76 b Fn(args)46 b Fu(are)d(the)630 2898 y(same)36 b(as)f(for)g(the)h
Fo(hbreak)d Fu(command)i(and)g(the)g(breakp)s(oin)m(t)f(is)h(set)g(in)f
(the)i(same)f(w)m(a)m(y)-8 b(.)630 3007 y(Ho)m(w)m(ev)m(er,)44
b(lik)m(e)39 b(the)h Fo(tbreak)e Fu(command,)k(the)e(breakp)s(oin)m(t)e
(is)h(automatically)g(deleted)630 3117 y(after)31 b(the)g(\014rst)e
(time)i(y)m(our)f(program)g(stops)h(there.)41 b(Also,)31
b(lik)m(e)e(the)i Fo(hbreak)e Fu(command,)630 3226 y(the)34
b(breakp)s(oin)m(t)e(requires)h(hardw)m(are)g(supp)s(ort)f(and)h(some)h
(target)h(hardw)m(are)e(ma)m(y)i(not)630 3336 y(ha)m(v)m(e)30
b(this)e(supp)s(ort.)39 b(See)29 b(Section)g(5.1.5)h([Disabling)e
(breakp)s(oin)m(ts],)g(page)i(34.)41 b(Also)29 b(See)630
3446 y(Section)h(5.1.6)i([Break)g(conditions],)d(page)i(35.)150
3618 y Fo(rbreak)e Fn(regex)630 3727 y Fu(Set)37 b(breakp)s(oin)m(ts)e
(on)h(all)g(functions)f(matc)m(hing)h(the)h(regular)f(expression)f
Fn(regex)p Fu(.)60 b(This)630 3837 y(command)28 b(sets)g(an)g
(unconditional)d(breakp)s(oin)m(t)i(on)h(all)f(matc)m(hes,)i(prin)m
(ting)d(a)i(list)f(of)h(all)630 3947 y(breakp)s(oin)m(ts)c(it)h(set.)40
b(Once)25 b(these)h(breakp)s(oin)m(ts)e(are)i(set,)h(they)e(are)h
(treated)g(just)f(lik)m(e)g(the)630 4056 y(breakp)s(oin)m(ts)k(set)i
(with)e(the)h Fo(break)f Fu(command.)40 b(Y)-8 b(ou)31
b(can)f(delete)h(them,)f(disable)f(them,)630 4166 y(or)h(mak)m(e)i
(them)e(conditional)f(the)h(same)h(w)m(a)m(y)g(as)g(an)m(y)g(other)f
(breakp)s(oin)m(t.)630 4307 y(When)41 b(debugging)f(C)p
Fo(++)g Fu(programs,)j Fo(rbreak)c Fu(is)h(useful)g(for)g(setting)h
(breakp)s(oin)m(ts)f(on)630 4416 y(o)m(v)m(erloaded)31
b(functions)e(that)i(are)g(not)g(mem)m(b)s(ers)e(of)i(an)m(y)f(sp)s
(ecial)f(classes.)150 4589 y Fo(info)g(breakpoints)f
Fu([)p Fn(n)p Fu(])150 4698 y Fo(info)h(break)g Fu([)p
Fn(n)p Fu(])150 4808 y Fo(info)g(watchpoints)f Fu([)p
Fn(n)p Fu(])630 4917 y(Prin)m(t)46 b(a)i(table)e(of)i(all)e(breakp)s
(oin)m(ts,)k(w)m(atc)m(hp)s(oin)m(ts,)i(and)46 b(catc)m(hp)s(oin)m(ts)i
(set)f(and)g(not)630 5027 y(deleted,)30 b(with)f(the)i(follo)m(wing)e
(columns)g(for)h(eac)m(h)i(breakp)s(oin)m(t:)630 5199
y Fr(Br)-5 b(e)g(akp)g(oint)35 b(Numb)-5 b(ers)630 5340
y(T)e(yp)i(e)295 b Fu(Breakp)s(oin)m(t,)30 b(w)m(atc)m(hp)s(oin)m(t,)h
(or)g(catc)m(hp)s(oin)m(t.)p eop
%%Page: 30 32
30 31 bop 150 -116 a Fu(30)2644 b(Debugging)31 b(with)e(GDB)630
299 y Fr(Disp)-5 b(osition)1110 408 y Fu(Whether)32 b(the)g(breakp)s
(oin)m(t)f(is)g(mark)m(ed)g(to)i(b)s(e)e(disabled)f(or)h(deleted)h
(when)1110 518 y(hit.)630 682 y Fr(Enable)-5 b(d)33 b(or)h(Disable)-5
b(d)1110 791 y Fu(Enabled)37 b(breakp)s(oin)m(ts)h(are)h(mark)m(ed)g
(with)e(`)p Fo(y)p Fu('.)66 b(`)p Fo(n)p Fu(')39 b(marks)f(breakp)s
(oin)m(ts)1110 901 y(that)31 b(are)g(not)f(enabled.)630
1064 y Fr(A)-5 b(ddr)g(ess)176 b Fu(Where)31 b(the)f(breakp)s(oin)m(t)g
(is)f(in)g(y)m(our)h(program,)h(as)f(a)h(memory)f(address)630
1228 y Fr(What)267 b Fu(Where)36 b(the)g(breakp)s(oin)m(t)e(is)h(in)f
(the)i(source)f(for)h(y)m(our)f(program,)i(as)f(a)g(\014le)1110
1337 y(and)30 b(line)e(n)m(um)m(b)s(er.)630 1501 y(If)k(a)g(breakp)s
(oin)m(t)f(is)g(conditional,)g Fo(info)e(break)h Fu(sho)m(ws)i(the)g
(condition)f(on)h(the)g(line)e(fol-)630 1611 y(lo)m(wing)36
b(the)i(a\013ected)g(breakp)s(oin)m(t;)i(breakp)s(oin)m(t)c(commands,)j
(if)d(an)m(y)-8 b(,)40 b(are)e(listed)d(after)630 1720
y(that.)630 1857 y Fo(info)29 b(breakpoints)39 b Fu(with)i(a)i(breakp)s
(oin)m(t)e(n)m(um)m(b)s(er)g Fn(n)h Fu(as)g(argumen)m(t)h(lists)e(only)
g(that)630 1966 y(breakp)s(oin)m(t.)72 b(The)40 b(con)m(v)m(enience)i
(v)-5 b(ariable)40 b Fo($_)g Fu(and)h(the)g(default)f
(examining-address)630 2076 y(for)i(the)g Fo(x)f Fu(command)h(are)g
(set)h(to)g(the)f(address)f(of)h(the)g(last)g(breakp)s(oin)m(t)f
(listed)f(\(see)630 2185 y(Section)30 b(8.5)i([Examining)c(memory],)j
(page)g(59\).)630 2322 y Fo(info)e(breakpoints)e Fu(displa)m(ys)g(a)j
(coun)m(t)g(of)g(the)f(n)m(um)m(b)s(er)f(of)i(times)f(the)h(breakp)s
(oin)m(t)e(has)630 2432 y(b)s(een)35 b(hit.)56 b(This)34
b(is)h(esp)s(ecially)g(useful)f(in)g(conjunction)h(with)g(the)h
Fo(ignore)e Fu(command.)630 2541 y(Y)-8 b(ou)33 b(can)g(ignore)f(a)h
(large)g(n)m(um)m(b)s(er)e(of)i(breakp)s(oin)m(t)f(hits,)g(lo)s(ok)g
(at)i(the)e(breakp)s(oin)m(t)g(info)630 2651 y(to)37
b(see)h(ho)m(w)e(man)m(y)h(times)f(the)h(breakp)s(oin)m(t)f(w)m(as)h
(hit,)g(and)f(then)h(run)e(again,)k(ignoring)630 2760
y(one)g(less)f(than)h(that)g(n)m(um)m(b)s(er.)65 b(This)37
b(will)f(get)k(y)m(ou)f(quic)m(kly)e(to)j(the)f(last)g(hit)e(of)i(that)
630 2870 y(breakp)s(oin)m(t.)275 3036 y(GDB)34 b(allo)m(ws)f(y)m(ou)g
(to)h(set)g(an)m(y)g(n)m(um)m(b)s(er)e(of)i(breakp)s(oin)m(ts)e(at)i
(the)f(same)h(place)g(in)e(y)m(our)h(program.)150 3145
y(There)k(is)g(nothing)g(silly)f(or)i(meaningless)e(ab)s(out)i(this.)62
b(When)38 b(the)g(breakp)s(oin)m(ts)f(are)h(conditional,)150
3255 y(this)29 b(is)h(ev)m(en)h(useful)d(\(see)k(Section)e(5.1.6)i
([Break)f(conditions],)f(page)h(35\).)275 3393 y(GDB)40
b(itself)e(sometimes)h(sets)g(breakp)s(oin)m(ts)f(in)g(y)m(our)h
(program)g(for)g(sp)s(ecial)e(purp)s(oses,)j(suc)m(h)f(as)150
3503 y(prop)s(er)k(handling)f(of)j Fo(longjmp)e Fu(\(in)g(C)i
(programs\).)83 b(These)45 b(in)m(ternal)e(breakp)s(oin)m(ts)h(are)h
(assigned)150 3612 y(negativ)m(e)32 b(n)m(um)m(b)s(ers,)d(starting)h
(with)f Fo(-1)p Fu(;)h(`)p Fo(info)f(breakpoints)p Fu(')f(do)s(es)i
(not)h(displa)m(y)d(them.)275 3751 y(Y)-8 b(ou)53 b(can)g(see)g(these)g
(breakp)s(oin)m(ts)e(with)h(the)h(GDB)g(main)m(tenance)g(command)g(`)p
Fo(maint)29 b(info)150 3861 y(breakpoints)p Fu('.)150
4082 y Fo(maint)g(info)g(breakpoints)630 4192 y Fu(Using)38
b(the)h(same)g(format)g(as)g(`)p Fo(info)30 b(breakpoints)p
Fu(',)38 b(displa)m(y)f(b)s(oth)h(the)h(breakp)s(oin)m(ts)630
4301 y(y)m(ou'v)m(e)h(set)e(explicitly)-8 b(,)39 b(and)e(those)i(GDB)g
(is)e(using)g(for)h(in)m(ternal)e(purp)s(oses.)63 b(In)m(ternal)630
4411 y(breakp)s(oin)m(ts)38 b(are)h(sho)m(wn)g(with)e(negativ)m(e)j
(breakp)s(oin)m(t)e(n)m(um)m(b)s(ers.)65 b(The)39 b(t)m(yp)s(e)g
(column)630 4521 y(iden)m(ti\014es)29 b(what)h(kind)f(of)h(breakp)s
(oin)m(t)f(is)h(sho)m(wn:)630 4684 y Fo(breakpoint)1110
4794 y Fu(Normal,)g(explicitly)e(set)j(breakp)s(oin)m(t.)630
4957 y Fo(watchpoint)1110 5067 y Fu(Normal,)f(explicitly)e(set)j(w)m
(atc)m(hp)s(oin)m(t.)630 5230 y Fo(longjmp)144 b Fu(In)m(ternal)50
b(breakp)s(oin)m(t,)55 b(used)50 b(to)i(handle)d(correctly)i(stepping)f
(through)1110 5340 y Fo(longjmp)28 b Fu(calls.)p eop
%%Page: 31 33
31 32 bop 150 -116 a Fu(Chapter)30 b(5:)41 b(Stopping)29
b(and)h(Con)m(tin)m(uing)2042 b(31)630 299 y Fo(longjmp)28
b(resume)1110 408 y Fu(In)m(ternal)i(breakp)s(oin)m(t)f(at)i(the)g
(target)h(of)e(a)h Fo(longjmp)p Fu(.)630 562 y Fo(until)240
b Fu(T)-8 b(emp)s(orary)27 b(in)m(ternal)f(breakp)s(oin)m(t)g(used)g(b)
m(y)h(the)h(GDB)g Fo(until)e Fu(command.)630 715 y Fo(finish)192
b Fu(T)-8 b(emp)s(orary)21 b(in)m(ternal)f(breakp)s(oin)m(t)g(used)g(b)
m(y)h(the)h(GDB)g Fo(finish)e Fu(command.)150 929 y Fk(5.1.2)63
b(Setting)41 b(w)m(atc)m(hp)s(oin)m(ts)275 1119 y Fu(Y)-8
b(ou)24 b(can)h(use)f(a)g(w)m(atc)m(hp)s(oin)m(t)h(to)g(stop)f
(execution)h(whenev)m(er)f(the)g(v)-5 b(alue)24 b(of)h(an)f(expression)
f(c)m(hanges,)150 1228 y(without)29 b(ha)m(ving)h(to)h(predict)f(a)h
(particular)d(place)j(where)e(this)h(ma)m(y)h(happ)s(en.)275
1360 y(Dep)s(ending)g(on)i(y)m(our)g(system,)h(w)m(atc)m(hp)s(oin)m(ts)
f(ma)m(y)g(b)s(e)g(implemen)m(ted)e(in)h(soft)m(w)m(are)i(or)f(hardw)m
(are.)150 1469 y(GDB)22 b(do)s(es)e(soft)m(w)m(are)i(w)m(atc)m(hp)s
(oin)m(ting)e(b)m(y)h(single-stepping)d(y)m(our)j(program)f(and)g
(testing)h(the)g(v)-5 b(ariable's)150 1579 y(v)g(alue)32
b(eac)m(h)j(time,)e(whic)m(h)f(is)g(h)m(undreds)f(of)i(times)f(slo)m(w)
m(er)i(than)e(normal)g(execution.)49 b(\(But)33 b(this)f(ma)m(y)150
1688 y(still)e(b)s(e)i(w)m(orth)h(it,)f(to)i(catc)m(h)g(errors)e(where)
f(y)m(ou)i(ha)m(v)m(e)h(no)e(clue)g(what)h(part)f(of)h(y)m(our)f
(program)g(is)g(the)150 1798 y(culprit.\))275 1929 y(On)22
b(some)h(systems,)i(suc)m(h)e(as)h(HP-UX)f(and)g(Lin)m(ux,)g(GDB)h
(includes)d(supp)s(ort)h(for)h(hardw)m(are)f(w)m(atc)m(h-)150
2039 y(p)s(oin)m(ts,)29 b(whic)m(h)h(do)g(not)g(slo)m(w)g(do)m(wn)g
(the)h(running)d(of)i(y)m(our)g(program.)150 2236 y Fo(watch)f
Fn(expr)630 2345 y Fu(Set)i(a)h(w)m(atc)m(hp)s(oin)m(t)f(for)g(an)f
(expression.)42 b(GDB)32 b(will)c(break)j(when)f Fn(expr)37
b Fu(is)30 b(written)g(in)m(to)630 2455 y(b)m(y)g(the)h(program)f(and)g
(its)g(v)-5 b(alue)29 b(c)m(hanges.)150 2608 y Fo(rwatch)g
Fn(expr)630 2717 y Fu(Set)34 b(a)g(w)m(atc)m(hp)s(oin)m(t)g(that)g
(will)d(break)i(when)g(w)m(atc)m(h)i Fn(expr)k Fu(is)33
b(read)g(b)m(y)h(the)f(program.)50 b(If)630 2827 y(y)m(ou)31
b(use)f(b)s(oth)f(w)m(atc)m(hp)s(oin)m(ts,)i(b)s(oth)f(m)m(ust)g(b)s(e)
g(set)h(with)e(the)h Fo(rwatch)f Fu(command.)150 2980
y Fo(awatch)g Fn(expr)630 3090 y Fu(Set)41 b(a)f(w)m(atc)m(hp)s(oin)m
(t)h(that)g(will)d(break)i(when)f Fn(args)44 b Fu(is)c(read)g(and)g
(written)f(in)m(to)i(b)m(y)f(the)630 3199 y(program.)83
b(If)43 b(y)m(ou)i(use)f(b)s(oth)g(w)m(atc)m(hp)s(oin)m(ts,)k(b)s(oth)c
(m)m(ust)g(b)s(e)g(set)h(with)e(the)i Fo(awatch)630 3309
y Fu(command.)150 3462 y Fo(info)29 b(watchpoints)630
3571 y Fu(This)h(command)i(prin)m(ts)f(a)h(list)f(of)h(w)m(atc)m(hp)s
(oin)m(ts,)h(breakp)s(oin)m(ts,)e(and)h(catc)m(hp)s(oin)m(ts;)h(it)f
(is)630 3681 y(the)f(same)f(as)h Fo(info)e(break)p Fu(.)275
3834 y(GDB)22 b(sets)h(a)f Fn(hardw)m(are)f(w)m(atc)m(hp)s(oin)m(t)j
Fu(if)d(p)s(ossible.)35 b(Hardw)m(are)22 b(w)m(atc)m(hp)s(oin)m(ts)g
(execute)h(v)m(ery)f(quic)m(kly)-8 b(,)150 3944 y(and)22
b(the)h(debugger)f(rep)s(orts)g(a)h(c)m(hange)h(in)e(v)-5
b(alue)22 b(at)h(the)g(exact)h(instruction)d(where)h(the)h(c)m(hange)h
(o)s(ccurs.)150 4053 y(If)36 b(GDB)h(cannot)g(set)g(a)f(hardw)m(are)g
(w)m(atc)m(hp)s(oin)m(t,)i(it)e(sets)g(a)h(soft)m(w)m(are)h(w)m(atc)m
(hp)s(oin)m(t,)g(whic)m(h)d(executes)150 4163 y(more)k(slo)m(wly)f(and)
g(rep)s(orts)g(the)h(c)m(hange)h(in)d(v)-5 b(alue)38
b(at)i(the)f(next)g(statemen)m(t,)k(not)c(the)g(instruction,)150
4273 y(after)31 b(the)f(c)m(hange)i(o)s(ccurs.)275 4404
y(When)e(y)m(ou)g(issue)g(the)g Fo(watch)f Fu(command,)h(GDB)i(rep)s
(orts)390 4529 y Fo(Hardware)46 b(watchpoint)f Fn(n)m(um)p
Fo(:)h Fn(expr)150 4661 y Fu(if)29 b(it)h(w)m(as)h(able)f(to)h(set)g(a)
g(hardw)m(are)f(w)m(atc)m(hp)s(oin)m(t.)275 4792 y(The)d(SP)-8
b(AR)m(Clite)27 b(DSU)h(will)e(generate)j(traps)f(when)f(a)i(program)e
(accesses)j(some)e(data)h(or)f(instruc-)150 4902 y(tion)f(address)f
(that)h(is)g(assigned)f(to)i(the)f(debug)f(registers.)40
b(F)-8 b(or)28 b(the)f(data)h(addresses,)f(DSU)g(facilitates)150
5011 y(the)36 b Fo(watch)e Fu(command.)57 b(Ho)m(w)m(ev)m(er)38
b(the)e(hardw)m(are)f(breakp)s(oin)m(t)g(registers)h(can)g(only)f(tak)m
(e)i(t)m(w)m(o)g(data)150 5121 y(w)m(atc)m(hp)s(oin)m(ts,)c(and)f(b)s
(oth)g(w)m(atc)m(hp)s(oin)m(ts)g(m)m(ust)g(b)s(e)g(the)h(same)g(kind.)
44 b(F)-8 b(or)34 b(example,)e(y)m(ou)h(can)g(set)g(t)m(w)m(o)150
5230 y(w)m(atc)m(hp)s(oin)m(ts)28 b(with)f Fo(watch)f
Fu(commands,)i(t)m(w)m(o)h(with)e Fo(rwatch)f Fu(commands,)i
Fm(or)g Fu(t)m(w)m(o)h(with)e Fo(awatch)f Fu(com-)150
5340 y(mands,)e(but)f(y)m(ou)h(cannot)h(set)f(one)g(w)m(atc)m(hp)s(oin)
m(t)g(with)e(one)i(command)g(and)f(the)h(other)g(with)e(a)i(di\013eren)
m(t)p eop
%%Page: 32 34
32 33 bop 150 -116 a Fu(32)2644 b(Debugging)31 b(with)e(GDB)150
299 y(command.)44 b(GDB)33 b(will)28 b(reject)33 b(the)f(command)f(if)f
(y)m(ou)i(try)g(to)g(mix)e(w)m(atc)m(hp)s(oin)m(ts.)45
b(Delete)32 b(or)g(disable)150 408 y(un)m(used)d(w)m(atc)m(hp)s(oin)m
(t)i(commands)f(b)s(efore)g(setting)g(new)g(ones.)275
542 y(If)k(y)m(ou)g(call)g(a)h(function)e(in)m(teractiv)m(ely)i(using)e
Fo(print)g Fu(or)i Fo(call)p Fu(,)f(an)m(y)h(w)m(atc)m(hp)s(oin)m(ts)g
(y)m(ou)g(ha)m(v)m(e)g(set)150 651 y(will)28 b(b)s(e)h(inactiv)m(e)i
(un)m(til)d(GDB)k(reac)m(hes)f(another)g(kind)e(of)h(breakp)s(oin)m(t)f
(or)i(the)f(call)g(completes.)390 779 y Fr(Warning:)45
b Fu(In)29 b(m)m(ulti-thread)f(programs,)h(w)m(atc)m(hp)s(oin)m(ts)g
(ha)m(v)m(e)i(only)d(limited)f(usefulness.)390 883 y(With)34
b(the)h(curren)m(t)f(w)m(atc)m(hp)s(oin)m(t)h(implemen)m(tation,)g(GDB)
g(can)g(only)f(w)m(atc)m(h)i(the)e(v)-5 b(alue)390 986
y(of)28 b(an)g(expression)e Fr(in)k(a)h(single)f(thr)-5
b(e)g(ad)p Fu(.)42 b(If)28 b(y)m(ou)g(are)g(con\014den)m(t)g(that)g
(the)g(expression)f(can)390 1090 y(only)k(c)m(hange)i(due)f(to)h(the)f
(curren)m(t)g(thread's)g(activit)m(y)g(\(and)g(if)f(y)m(ou)h(are)h
(also)f(con\014den)m(t)390 1194 y(that)40 b(no)g(other)f(thread)h(can)g
(b)s(ecome)f(curren)m(t\),)k(then)c(y)m(ou)h(can)g(use)f(w)m(atc)m(hp)s
(oin)m(ts)h(as)390 1298 y(usual.)73 b(Ho)m(w)m(ev)m(er,)47
b(GDB)42 b(ma)m(y)h(not)e(notice)h(when)f(a)h(non-curren)m(t)f
(thread's)g(activit)m(y)390 1401 y(c)m(hanges)31 b(the)g(expression.)
150 1622 y Fk(5.1.3)63 b(Setting)41 b(catc)m(hp)s(oin)m(ts)275
1813 y Fu(Y)-8 b(ou)41 b(can)g(use)g Fn(catc)m(hp)s(oin)m(ts)k
Fu(to)d(cause)g(the)f(debugger)g(to)h(stop)f(for)g(certain)g(kinds)e
(of)i(program)150 1923 y(ev)m(en)m(ts,)31 b(suc)m(h)e(as)h(C)p
Fo(++)e Fu(exceptions)i(or)f(the)h(loading)e(of)i(a)g(shared)e(library)
-8 b(.)39 b(Use)30 b(the)f Fo(catch)f Fu(command)150
2032 y(to)j(set)g(a)g(catc)m(hp)s(oin)m(t.)150 2237 y
Fo(catch)e Fn(ev)m(en)m(t)630 2346 y Fu(Stop)h(when)f
Fn(ev)m(en)m(t)34 b Fu(o)s(ccurs.)41 b Fn(ev)m(en)m(t)34
b Fu(can)c(b)s(e)g(an)m(y)h(of)f(the)h(follo)m(wing:)630
2503 y Fo(throw)240 b Fu(The)30 b(thro)m(wing)f(of)i(a)g(C)p
Fo(++)e Fu(exception.)630 2660 y Fo(catch)240 b Fu(The)30
b(catc)m(hing)h(of)g(a)f(C)p Fo(++)g Fu(exception.)630
2817 y Fo(exec)288 b Fu(A)30 b(call)g(to)h Fo(exec)p
Fu(.)40 b(This)28 b(is)i(curren)m(tly)f(only)h(a)m(v)-5
b(ailable)29 b(for)i(HP-UX.)630 2974 y Fo(fork)288 b
Fu(A)30 b(call)g(to)h Fo(fork)p Fu(.)40 b(This)28 b(is)i(curren)m(tly)f
(only)h(a)m(v)-5 b(ailable)29 b(for)i(HP-UX.)630 3131
y Fo(vfork)240 b Fu(A)30 b(call)g(to)h Fo(vfork)p Fu(.)40
b(This)28 b(is)i(curren)m(tly)f(only)g(a)m(v)-5 b(ailable)30
b(for)g(HP-UX.)630 3288 y Fo(load)630 3397 y(load)f Fn(libname)1110
3507 y Fu(The)37 b(dynamic)e(loading)h(of)i(an)m(y)f(shared)f(library)
-8 b(,)37 b(or)g(the)h(loading)e(of)h(the)1110 3616 y(library)28
b Fn(libname)p Fu(.)39 b(This)28 b(is)i(curren)m(tly)f(only)h(a)m(v)-5
b(ailable)29 b(for)i(HP-UX.)630 3773 y Fo(unload)630
3883 y(unload)e Fn(libname)1110 3993 y Fu(The)43 b(unloading)e(of)j(an)
m(y)g(dynamically)d(loaded)i(shared)f(library)-8 b(,)45
b(or)f(the)1110 4102 y(unloading)33 b(of)j(the)f(library)e
Fn(libname)p Fu(.)54 b(This)33 b(is)i(curren)m(tly)f(only)h(a)m(v)-5
b(ailable)1110 4212 y(for)30 b(HP-UX.)150 4369 y Fo(tcatch)f
Fn(ev)m(en)m(t)630 4478 y Fu(Set)h(a)g(catc)m(hp)s(oin)m(t)g(that)h(is)
d(enabled)h(only)g(for)g(one)h(stop.)41 b(The)29 b(catc)m(hp)s(oin)m(t)
i(is)d(automat-)630 4588 y(ically)h(deleted)h(after)h(the)f(\014rst)g
(time)g(the)h(ev)m(en)m(t)h(is)d(caugh)m(t.)275 4745
y(Use)h(the)h Fo(info)e(break)g Fu(command)h(to)h(list)e(the)i(curren)m
(t)f(catc)m(hp)s(oin)m(ts.)275 4878 y(There)22 b(are)h(curren)m(tly)f
(some)h(limitations)e(to)i(C)p Fo(++)f Fu(exception)h(handling)d(\()p
Fo(catch)30 b(throw)21 b Fu(and)h Fo(catch)150 4988 y(catch)p
Fu(\))29 b(in)g(GDB:)225 5121 y Fq(\017)60 b Fu(If)40
b(y)m(ou)h(call)f(a)i(function)d(in)m(teractiv)m(ely)-8
b(,)44 b(GDB)e(normally)d(returns)g(con)m(trol)i(to)h(y)m(ou)f(when)f
(the)330 5230 y(function)32 b(has)h(\014nished)d(executing.)49
b(If)32 b(the)i(call)e(raises)g(an)h(exception,)h(ho)m(w)m(ev)m(er,)i
(the)d(call)f(ma)m(y)330 5340 y(b)m(ypass)k(the)g(mec)m(hanism)f(that)h
(returns)f(con)m(trol)h(to)h(y)m(ou)f(and)g(cause)g(y)m(our)g(program)g
(either)f(to)p eop
%%Page: 33 35
33 34 bop 150 -116 a Fu(Chapter)30 b(5:)41 b(Stopping)29
b(and)h(Con)m(tin)m(uing)2042 b(33)330 299 y(ab)s(ort)37
b(or)h(to)g(simply)d(con)m(tin)m(ue)j(running)d(un)m(til)g(it)i(hits)g
(a)h(breakp)s(oin)m(t,)g(catc)m(hes)h(a)f(signal)e(that)330
408 y(GDB)k(is)e(listening)e(for,)41 b(or)e(exits.)66
b(This)37 b(is)h(the)h(case)h(ev)m(en)f(if)f(y)m(ou)h(set)h(a)f(catc)m
(hp)s(oin)m(t)g(for)g(the)330 518 y(exception;)31 b(catc)m(hp)s(oin)m
(ts)g(on)f(exceptions)g(are)h(disabled)d(within)g(in)m(teractiv)m(e)j
(calls.)225 658 y Fq(\017)60 b Fu(Y)-8 b(ou)31 b(cannot)g(raise)f(an)g
(exception)h(in)m(teractiv)m(ely)-8 b(.)225 797 y Fq(\017)60
b Fu(Y)-8 b(ou)31 b(cannot)g(install)d(an)i(exception)h(handler)d(in)m
(teractiv)m(ely)-8 b(.)275 1002 y(Sometimes)28 b Fo(catch)g
Fu(is)g(not)i(the)f(b)s(est)g(w)m(a)m(y)h(to)g(debug)f(exception)g
(handling:)37 b(if)29 b(y)m(ou)g(need)g(to)h(kno)m(w)150
1112 y(exactly)40 b(where)e(an)h(exception)g(is)f(raised,)j(it)d(is)g
(b)s(etter)h(to)h(stop)f Fr(b)-5 b(efor)g(e)46 b Fu(the)40
b(exception)f(handler)e(is)150 1221 y(called,)e(since)f(that)h(w)m(a)m
(y)h(y)m(ou)f(can)g(see)g(the)g(stac)m(k)h(b)s(efore)e(an)m(y)h(un)m
(winding)c(tak)m(es)36 b(place.)53 b(If)34 b(y)m(ou)h(set)150
1331 y(a)40 b(breakp)s(oin)m(t)e(in)g(an)h(exception)g(handler)f
(instead,)j(it)d(ma)m(y)i(not)g(b)s(e)e(easy)i(to)g(\014nd)e(out)h
(where)g(the)150 1440 y(exception)31 b(w)m(as)f(raised.)275
1585 y(T)-8 b(o)43 b(stop)f(just)g(b)s(efore)h(an)f(exception)h
(handler)e(is)h(called,)j(y)m(ou)e(need)f(some)h(kno)m(wledge)g(of)g
(the)150 1695 y(implemen)m(tation.)38 b(In)27 b(the)h(case)h(of)e
Ft(gnu)h Fu(C)p Fo(++)p Fu(,)f(exceptions)h(are)g(raised)e(b)m(y)i
(calling)e(a)i(library)d(function)150 1804 y(named)30
b Fo(__raise_exception)c Fu(whic)m(h)j(has)h(the)g(follo)m(wing)f(ANSI)
h(C)g(in)m(terface:)581 1943 y Fo(/*)47 b Fn(addr)53
b Fo(is)48 b(where)e(the)h(exception)e(identifier)g(is)i(stored.)724
2047 y(ID)g(is)g(the)g(exception)f(identifier.)92 b(*/)581
2151 y(void)47 b(__raise_exception)c(\(void)j(**)p Fn(addr)p
Fo(,)g(void)h(*)p Fn(id)t Fo(\);)150 2295 y Fu(T)-8 b(o)36
b(mak)m(e)h(the)f(debugger)g(catc)m(h)h(all)e(exceptions)g(b)s(efore)h
(an)m(y)g(stac)m(k)h(un)m(winding)c(tak)m(es)k(place,)g(set)g(a)150
2405 y(breakp)s(oin)m(t)31 b(on)g Fo(__raise_exception)c
Fu(\(see)33 b(Section)e(5.1)i([Breakp)s(oin)m(ts;)f(w)m(atc)m(hp)s(oin)
m(ts;)h(and)e(excep-)150 2515 y(tions],)f(page)h(27\).)275
2659 y(With)j(a)i(conditional)d(breakp)s(oin)m(t)h(\(see)i(Section)f
(5.1.6)i([Break)f(conditions],)g(page)g(35\))g(that)g(de-)150
2769 y(p)s(ends)e(on)i(the)h(v)-5 b(alue)35 b(of)i Fn(id)p
Fu(,)f(y)m(ou)h(can)f(stop)g(y)m(our)h(program)e(when)h(a)g(sp)s
(eci\014c)f(exception)h(is)g(raised.)150 2879 y(Y)-8
b(ou)31 b(can)g(use)f(m)m(ultiple)e(conditional)h(breakp)s(oin)m(ts)g
(to)i(stop)g(y)m(our)f(program)g(when)g(an)m(y)h(of)f(a)h(n)m(um)m(b)s
(er)150 2988 y(of)g(exceptions)f(are)h(raised.)150 3233
y Fk(5.1.4)63 b(Deleting)41 b(breakp)s(oin)m(ts)275 3436
y Fu(It)d(is)f(often)i(necessary)g(to)g(eliminate)d(a)j(breakp)s(oin)m
(t,)g(w)m(atc)m(hp)s(oin)m(t,)i(or)e(catc)m(hp)s(oin)m(t)f(once)h(it)f
(has)150 3545 y(done)27 b(its)g(job)g(and)g(y)m(ou)g(no)g(longer)g(w)m
(an)m(t)h(y)m(our)g(program)f(to)h(stop)f(there.)40 b(This)26
b(is)g(called)h Fn(deleting)34 b Fu(the)150 3655 y(breakp)s(oin)m(t.)40
b(A)30 b(breakp)s(oin)m(t)f(that)i(has)g(b)s(een)e(deleted)h(no)h
(longer)f(exists;)g(it)g(is)f(forgotten.)275 3799 y(With)21
b(the)h Fo(clear)f Fu(command)h(y)m(ou)g(can)h(delete)f(breakp)s(oin)m
(ts)f(according)h(to)h(where)e(they)i(are)f(in)f(y)m(our)150
3909 y(program.)48 b(With)33 b(the)g Fo(delete)e Fu(command)i(y)m(ou)g
(can)g(delete)g(individual)c(breakp)s(oin)m(ts,)j(w)m(atc)m(hp)s(oin)m
(ts,)150 4019 y(or)e(catc)m(hp)s(oin)m(ts)h(b)m(y)f(sp)s(ecifying)f
(their)g(breakp)s(oin)m(t)g(n)m(um)m(b)s(ers.)275 4163
y(It)e(is)f(not)h(necessary)h(to)f(delete)h(a)f(breakp)s(oin)m(t)f(to)i
(pro)s(ceed)f(past)g(it.)39 b(GDB)29 b(automatically)d(ignores)150
4273 y(breakp)s(oin)m(ts)36 b(on)g(the)h(\014rst)f(instruction)f(to)j
(b)s(e)e(executed)i(when)e(y)m(ou)h(con)m(tin)m(ue)g(execution)g
(without)150 4383 y(c)m(hanging)30 b(the)h(execution)f(address.)150
4622 y Fo(clear)240 b Fu(Delete)36 b(an)m(y)g(breakp)s(oin)m(ts)e(at)i
(the)g(next)f(instruction)e(to)j(b)s(e)f(executed)h(in)e(the)h
(selected)630 4732 y(stac)m(k)29 b(frame)f(\(see)h(Section)f(6.3)h
([Selecting)f(a)g(frame],)h(page)g(47\).)41 b(When)28
b(the)g(innermost)630 4842 y(frame)e(is)g(selected,)i(this)e(is)f(a)i
(go)s(o)s(d)g(w)m(a)m(y)g(to)g(delete)g(a)g(breakp)s(oin)m(t)f(where)g
(y)m(our)g(program)630 4951 y(just)k(stopp)s(ed.)150
5121 y Fo(clear)f Fn(function)150 5230 y Fo(clear)g Fn(\014lename)5
b Fo(:)p Fn(function)630 5340 y Fu(Delete)32 b(an)m(y)e(breakp)s(oin)m
(ts)f(set)i(at)g(en)m(try)g(to)g(the)g(function)e Fn(function)p
Fu(.)p eop
%%Page: 34 36
34 35 bop 150 -116 a Fu(34)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(clear)g Fn(linen)m(um)150 408 y Fo(clear)g Fn(\014lename)5
b Fo(:)p Fn(linen)m(um)630 518 y Fu(Delete)32 b(an)m(y)e(breakp)s(oin)m
(ts)f(set)i(at)g(or)g(within)d(the)i(co)s(de)h(of)f(the)h(sp)s
(eci\014ed)e(line.)150 674 y Fo(delete)g Fu([)p Fo(breakpoints)p
Fu(])e([)p Fn(bn)m(ums)t Fo(...)n Fu(])630 784 y(Delete)h(the)f(breakp)
s(oin)m(ts,)f(w)m(atc)m(hp)s(oin)m(ts,)i(or)e(catc)m(hp)s(oin)m(ts)h
(of)g(the)g(n)m(um)m(b)s(ers)e(sp)s(eci\014ed)g(as)630
893 y(argumen)m(ts.)39 b(If)23 b(no)h(argumen)m(t)g(is)f(sp)s
(eci\014ed,)h(delete)g(all)e(breakp)s(oin)m(ts)h(\(GDB)i(asks)f
(con\014r-)630 1003 y(mation,)30 b(unless)d(y)m(ou)j(ha)m(v)m(e)h
Fo(set)e(confirm)g(off)p Fu(\).)40 b(Y)-8 b(ou)30 b(can)f(abbreviate)h
(this)e(command)630 1113 y(as)j Fo(d)p Fu(.)150 1332
y Fk(5.1.5)63 b(Disabling)42 b(breakp)s(oin)m(ts)275
1523 y Fu(Rather)21 b(than)h(deleting)f(a)h(breakp)s(oin)m(t,)h(w)m
(atc)m(hp)s(oin)m(t,)h(or)d(catc)m(hp)s(oin)m(t,)k(y)m(ou)d(migh)m(t)f
(prefer)g(to)i Fn(disable)150 1633 y Fu(it.)66 b(This)37
b(mak)m(es)i(the)g(breakp)s(oin)m(t)f(inop)s(erativ)m(e)g(as)h(if)f(it)
g(had)h(b)s(een)f(deleted,)j(but)d(remem)m(b)s(ers)g(the)150
1742 y(information)29 b(on)h(the)h(breakp)s(oin)m(t)e(so)h(that)h(y)m
(ou)g(can)g Fn(enable)k Fu(it)30 b(again)g(later.)275
1875 y(Y)-8 b(ou)29 b(disable)f(and)h(enable)g(breakp)s(oin)m(ts,)f(w)m
(atc)m(hp)s(oin)m(ts,)i(and)f(catc)m(hp)s(oin)m(ts)h(with)e(the)i
Fo(enable)e Fu(and)150 1985 y Fo(disable)k Fu(commands,)i(optionally)e
(sp)s(ecifying)f(one)j(or)f(more)h(breakp)s(oin)m(t)f(n)m(um)m(b)s(ers)
f(as)h(argumen)m(ts.)150 2094 y(Use)d Fo(info)f(break)f
Fu(or)h Fo(info)g(watch)f Fu(to)i(prin)m(t)e(a)i(list)e(of)h(breakp)s
(oin)m(ts,)g(w)m(atc)m(hp)s(oin)m(ts,)h(and)e(catc)m(hp)s(oin)m(ts)150
2204 y(if)h(y)m(ou)i(do)f(not)h(kno)m(w)f(whic)m(h)f(n)m(um)m(b)s(ers)g
(to)i(use.)275 2337 y(A)f(breakp)s(oin)m(t,)f(w)m(atc)m(hp)s(oin)m(t,)i
(or)f(catc)m(hp)s(oin)m(t)g(can)h(ha)m(v)m(e)g(an)m(y)g(of)f(four)f
(di\013eren)m(t)h(states)h(of)f(enable-)150 2446 y(men)m(t:)225
2579 y Fq(\017)60 b Fu(Enabled.)44 b(The)31 b(breakp)s(oin)m(t)g(stops)
g(y)m(our)h(program.)45 b(A)32 b(breakp)s(oin)m(t)f(set)h(with)f(the)h
Fo(break)e Fu(com-)330 2689 y(mand)g(starts)g(out)h(in)e(this)g(state.)
225 2822 y Fq(\017)60 b Fu(Disabled.)39 b(The)30 b(breakp)s(oin)m(t)g
(has)g(no)g(e\013ect)i(on)e(y)m(our)g(program.)225 2955
y Fq(\017)60 b Fu(Enabled)39 b(once.)72 b(The)40 b(breakp)s(oin)m(t)g
(stops)g(y)m(our)h(program,)i(but)d(then)g(b)s(ecomes)h(disabled.)69
b(A)330 3064 y(breakp)s(oin)m(t)29 b(set)i(with)e(the)i
Fo(tbreak)e Fu(command)h(starts)g(out)h(in)e(this)g(state.)225
3197 y Fq(\017)60 b Fu(Enabled)37 b(for)i(deletion.)65
b(The)39 b(breakp)s(oin)m(t)f(stops)h(y)m(our)f(program,)k(but)c
(immediately)f(after)i(it)330 3307 y(do)s(es)30 b(so)h(it)f(is)f
(deleted)h(p)s(ermanen)m(tly)-8 b(.)275 3463 y(Y)g(ou)28
b(can)g(use)f(the)h(follo)m(wing)f(commands)g(to)h(enable)g(or)g
(disable)d(breakp)s(oin)m(ts,)j(w)m(atc)m(hp)s(oin)m(ts,)h(and)150
3573 y(catc)m(hp)s(oin)m(ts:)150 3775 y Fo(disable)f
Fu([)p Fo(breakpoints)p Fu(])g([)p Fn(bn)m(ums)t Fo(...)n
Fu(])630 3885 y(Disable)43 b(the)h(sp)s(eci\014ed)e(breakp)s(oin)m
(ts|or)h(all)g(breakp)s(oin)m(ts,)j(if)d(none)h(are)g(listed.)80
b(A)630 3995 y(disabled)41 b(breakp)s(oin)m(t)h(has)h(no)g(e\013ect)i
(but)d(is)h(not)g(forgotten.)80 b(All)42 b(options)h(suc)m(h)g(as)630
4104 y(ignore-coun)m(ts,)24 b(conditions)d(and)g(commands)g(are)h
(remem)m(b)s(ered)g(in)e(case)j(the)f(breakp)s(oin)m(t)630
4214 y(is)29 b(enabled)h(again)g(later.)41 b(Y)-8 b(ou)31
b(ma)m(y)g(abbreviate)f Fo(disable)e Fu(as)j Fo(dis)p
Fu(.)150 4370 y Fo(enable)e Fu([)p Fo(breakpoints)p Fu(])e([)p
Fn(bn)m(ums)t Fo(...)n Fu(])630 4480 y(Enable)40 b(the)h(sp)s
(eci\014ed)f(breakp)s(oin)m(ts)g(\(or)i(all)e(de\014ned)g(breakp)s(oin)
m(ts\).)72 b(They)41 b(b)s(ecome)630 4589 y(e\013ectiv)m(e)32
b(once)f(again)g(in)e(stopping)g(y)m(our)h(program.)150
4745 y Fo(enable)f Fu([)p Fo(breakpoints)p Fu(])e Fo(once)j
Fn(bn)m(ums)t Fo(...)630 4855 y Fu(Enable)23 b(the)i(sp)s(eci\014ed)d
(breakp)s(oin)m(ts)h(temp)s(orarily)-8 b(.)37 b(GDB)26
b(disables)c(an)m(y)j(of)f(these)h(break-)630 4965 y(p)s(oin)m(ts)k
(immediately)g(after)i(stopping)e(y)m(our)h(program.)150
5121 y Fo(enable)f Fu([)p Fo(breakpoints)p Fu(])e Fo(delete)i
Fn(bn)m(ums)t Fo(...)630 5230 y Fu(Enable)34 b(the)h(sp)s(eci\014ed)e
(breakp)s(oin)m(ts)h(to)i(w)m(ork)f(once,)i(then)e(die.)53
b(GDB)36 b(deletes)f(an)m(y)h(of)630 5340 y(these)31
b(breakp)s(oin)m(ts)e(as)i(so)s(on)f(as)g(y)m(our)h(program)f(stops)g
(there.)p eop
%%Page: 35 37
35 36 bop 150 -116 a Fu(Chapter)30 b(5:)41 b(Stopping)29
b(and)h(Con)m(tin)m(uing)2042 b(35)275 299 y(Except)54
b(for)g(a)h(breakp)s(oin)m(t)e(set)h(with)f Fo(tbreak)g
Fu(\(see)i(Section)f(5.1.1)h([Setting)g(breakp)s(oin)m(ts],)150
408 y(page)26 b(28\),)i(breakp)s(oin)m(ts)d(that)h(y)m(ou)g(set)g(are)g
(initially)c(enabled;)k(subsequen)m(tly)-8 b(,)26 b(they)f(b)s(ecome)h
(disabled)150 518 y(or)42 b(enabled)e(only)h(when)f(y)m(ou)i(use)f(one)
h(of)g(the)f(commands)h(ab)s(o)m(v)m(e.)75 b(\(The)41
b(command)h Fo(until)e Fu(can)150 628 y(set)k(and)e(delete)h(a)h
(breakp)s(oin)m(t)e(of)h(its)f(o)m(wn,)47 b(but)42 b(it)h(do)s(es)f
(not)i(c)m(hange)g(the)f(state)h(of)g(y)m(our)f(other)150
737 y(breakp)s(oin)m(ts;)29 b(see)i(Section)g(5.2)g([Con)m(tin)m(uing)e
(and)h(stepping],)f(page)j(38.\))150 960 y Fk(5.1.6)63
b(Break)40 b(conditions)275 1152 y Fu(The)22 b(simplest)f(sort)h(of)h
(breakp)s(oin)m(t)f(breaks)g(ev)m(ery)i(time)e(y)m(our)h(program)f
(reac)m(hes)i(a)f(sp)s(eci\014ed)e(place.)150 1261 y(Y)-8
b(ou)29 b(can)h(also)e(sp)s(ecify)g(a)h Fn(condition)f
Fu(for)g(a)i(breakp)s(oin)m(t.)39 b(A)29 b(condition)e(is)h(just)h(a)g
(Bo)s(olean)g(expression)150 1371 y(in)f(y)m(our)i(programming)e
(language)i(\(see)h(Section)e(8.1)i([Expressions],)e(page)h(55\).)42
b(A)30 b(breakp)s(oin)m(t)e(with)150 1480 y(a)j(condition)f(ev)-5
b(aluates)31 b(the)g(expression)e(eac)m(h)j(time)f(y)m(our)f(program)h
(reac)m(hes)h(it,)e(and)g(y)m(our)h(program)150 1590
y(stops)f(only)g(if)f(the)i(condition)e(is)g Fr(true)p
Fu(.)275 1724 y(This)35 b(is)i(the)h(con)m(v)m(erse)h(of)f(using)f
(assertions)g(for)g(program)h(v)-5 b(alidation;)40 b(in)c(that)j
(situation,)g(y)m(ou)150 1833 y(w)m(an)m(t)c(to)g(stop)f(when)g(the)g
(assertion)g(is)f(violated|that)i(is,)f(when)g(the)g(condition)f(is)g
(false.)52 b(In)34 b(C,)g(if)150 1943 y(y)m(ou)25 b(w)m(an)m(t)g(to)g
(test)g(an)f(assertion)g(expressed)g(b)m(y)g(the)h(condition)e
Fn(assert)p Fu(,)j(y)m(ou)f(should)d(set)j(the)f(condition)150
2053 y(`)p Fo(!)30 b Fn(assert)r Fu(')h(on)g(the)f(appropriate)g
(breakp)s(oin)m(t.)275 2187 y(Conditions)20 b(are)i(also)h(accepted)g
(for)f(w)m(atc)m(hp)s(oin)m(ts;)k(y)m(ou)c(ma)m(y)h(not)g(need)f(them,)
i(since)e(a)h(w)m(atc)m(hp)s(oin)m(t)150 2296 y(is)29
b(insp)s(ecting)e(the)j(v)-5 b(alue)29 b(of)g(an)h(expression)e(an)m
(yho)m(w|but)h(it)g(migh)m(t)h(b)s(e)f(simpler,)e(sa)m(y)-8
b(,)31 b(to)g(just)d(set)j(a)150 2406 y(w)m(atc)m(hp)s(oin)m(t)e(on)f
(a)g(v)-5 b(ariable)27 b(name,)i(and)f(sp)s(ecify)f(a)i(condition)d
(that)j(tests)g(whether)f(the)g(new)g(v)-5 b(alue)28
b(is)150 2515 y(an)i(in)m(teresting)g(one.)275 2649 y(Break)22
b(conditions)e(can)i(ha)m(v)m(e)h(side)e(e\013ects,)k(and)d(ma)m(y)g
(ev)m(en)g(call)g(functions)e(in)g(y)m(our)i(program.)38
b(This)150 2759 y(can)32 b(b)s(e)e(useful,)g(for)h(example,)h(to)g
(activ)-5 b(ate)33 b(functions)d(that)i(log)f(program)g(progress,)h(or)
f(to)h(use)f(y)m(our)150 2868 y(o)m(wn)23 b(prin)m(t)e(functions)g(to)i
(format)g(sp)s(ecial)e(data)j(structures.)37 b(The)22
b(e\013ects)i(are)f(completely)f(predictable)150 2978
y(unless)29 b(there)h(is)f(another)i(enabled)e(breakp)s(oin)m(t)g(at)i
(the)g(same)g(address.)39 b(\(In)30 b(that)h(case,)h(GDB)f(migh)m(t)150
3088 y(see)41 b(the)g(other)g(breakp)s(oin)m(t)f(\014rst)g(and)g(stop)h
(y)m(our)g(program)f(without)g(c)m(hec)m(king)h(the)g(condition)f(of)
150 3197 y(this)e(one.\))68 b(Note)41 b(that)f(breakp)s(oin)m(t)e
(commands)h(are)h(usually)d(more)i(con)m(v)m(enien)m(t)i(and)e
(\015exible)e(for)150 3307 y(the)46 b(purp)s(ose)d(of)j(p)s(erforming)d
(side)h(e\013ects)j(when)d(a)i(breakp)s(oin)m(t)e(is)h(reac)m(hed)h
(\(see)g(Section)f(5.1.7)150 3416 y([Breakp)s(oin)m(t)30
b(command)h(lists],)e(page)i(36\).)275 3550 y(Break)22
b(conditions)f(can)h(b)s(e)f(sp)s(eci\014ed)f(when)h(a)i(breakp)s(oin)m
(t)d(is)h(set,)k(b)m(y)d(using)e(`)p Fo(if)p Fu(')i(in)f(the)h(argumen)
m(ts)150 3660 y(to)38 b(the)f Fo(break)e Fu(command.)60
b(See)37 b(Section)g(5.1.1)i([Setting)e(breakp)s(oin)m(ts],)h(page)f
(28.)61 b(They)37 b(can)g(also)150 3769 y(b)s(e)j(c)m(hanged)i(at)f(an)
m(y)g(time)g(with)e(the)i Fo(condition)d Fu(command.)72
b(The)40 b Fo(watch)g Fu(command)g(do)s(es)h(not)150
3879 y(recognize)36 b(the)g Fo(if)f Fu(k)m(eyw)m(ord;)j
Fo(condition)33 b Fu(is)i(the)g(only)g(w)m(a)m(y)h(to)g(imp)s(ose)e(a)i
(further)e(condition)g(on)i(a)150 3989 y(w)m(atc)m(hp)s(oin)m(t.)150
4195 y Fo(condition)28 b Fn(bn)m(um)h(expression)630
4305 y Fu(Sp)s(ecify)e Fn(expression)g Fu(as)h(the)h(break)f(condition)
f(for)h(breakp)s(oin)m(t,)g(w)m(atc)m(hp)s(oin)m(t,)i(or)e(catc)m(h-)
630 4415 y(p)s(oin)m(t)36 b(n)m(um)m(b)s(er)g Fn(bn)m(um)p
Fu(.)59 b(After)37 b(y)m(ou)g(set)h(a)f(condition,)h(breakp)s(oin)m(t)d
Fn(bn)m(um)h Fu(stops)h(y)m(our)630 4524 y(program)32
b(only)g(if)f(the)i(v)-5 b(alue)32 b(of)h Fn(expression)e
Fu(is)h(true)g(\(nonzero,)i(in)d(C\).)i(When)f(y)m(ou)h(use)630
4634 y Fo(condition)p Fu(,)28 b(GDB)k(c)m(hec)m(ks)g
Fn(expression)d Fu(immediately)g(for)h(syn)m(tactic)i(correctness,)g
(and)630 4743 y(to)c(determine)f(whether)g(sym)m(b)s(ols)g(in)f(it)h
(ha)m(v)m(e)i(referen)m(ts)f(in)f(the)h(con)m(text)h(of)f(y)m(our)g
(break-)630 4853 y(p)s(oin)m(t.)50 b(GDB)35 b(do)s(es)e(not)h(actually)
g(ev)-5 b(aluate)34 b Fn(expression)f Fu(at)h(the)g(time)f(the)h
Fo(condition)630 4963 y Fu(command)c(is)g(giv)m(en,)g(ho)m(w)m(ev)m
(er.)42 b(See)31 b(Section)f(8.1)i([Expressions],)d(page)i(55.)150
5121 y Fo(condition)d Fn(bn)m(um)630 5230 y Fu(Remo)m(v)m(e)33
b(the)e(condition)e(from)i(breakp)s(oin)m(t)e(n)m(um)m(b)s(er)h
Fn(bn)m(um)p Fu(.)41 b(It)31 b(b)s(ecomes)g(an)g(ordinary)630
5340 y(unconditional)d(breakp)s(oin)m(t.)p eop
%%Page: 36 38
36 37 bop 150 -116 a Fu(36)2644 b(Debugging)31 b(with)e(GDB)275
299 y(A)34 b(sp)s(ecial)e(case)k(of)e(a)g(breakp)s(oin)m(t)f(condition)
g(is)g(to)i(stop)f(only)f(when)g(the)i(breakp)s(oin)m(t)e(has)h(b)s
(een)150 408 y(reac)m(hed)i(a)g(certain)g(n)m(um)m(b)s(er)e(of)i
(times.)56 b(This)34 b(is)h(so)h(useful)e(that)i(there)g(is)e(a)i(sp)s
(ecial)f(w)m(a)m(y)h(to)h(do)e(it,)150 518 y(using)d(the)i
Fn(ignore)f(coun)m(t)j Fu(of)e(the)f(breakp)s(oin)m(t.)49
b(Ev)m(ery)34 b(breakp)s(oin)m(t)f(has)g(an)g(ignore)g(coun)m(t,)j
(whic)m(h)c(is)150 628 y(an)i(in)m(teger.)51 b(Most)34
b(of)g(the)g(time,)g(the)g(ignore)f(coun)m(t)i(is)d(zero,)k(and)d
(therefore)h(has)f(no)h(e\013ect.)52 b(But)34 b(if)150
737 y(y)m(our)26 b(program)g(reac)m(hes)h(a)g(breakp)s(oin)m(t)e(whose)
h(ignore)g(coun)m(t)h(is)e(p)s(ositiv)m(e,)h(then)g(instead)g(of)g
(stopping,)150 847 y(it)33 b(just)f(decremen)m(ts)i(the)f(ignore)g
(coun)m(t)h(b)m(y)f(one)h(and)e(con)m(tin)m(ues.)49 b(As)33
b(a)h(result,)f(if)f(the)i(ignore)e(coun)m(t)150 956
y(v)-5 b(alue)30 b(is)f Fn(n)p Fu(,)h(the)h(breakp)s(oin)m(t)e(do)s(es)
h(not)h(stop)f(the)h(next)f Fn(n)g Fu(times)g(y)m(our)h(program)f(reac)
m(hes)h(it.)150 1159 y Fo(ignore)e Fn(bn)m(um)g(coun)m(t)630
1269 y Fu(Set)40 b(the)g(ignore)f(coun)m(t)h(of)g(breakp)s(oin)m(t)e(n)
m(um)m(b)s(er)h Fn(bn)m(um)f Fu(to)i Fn(coun)m(t)p Fu(.)69
b(The)40 b(next)f Fn(coun)m(t)630 1378 y Fu(times)28
b(the)h(breakp)s(oin)m(t)e(is)g(reac)m(hed,)j(y)m(our)f(program's)f
(execution)g(do)s(es)h(not)f(stop;)i(other)630 1488 y(than)g(to)h
(decremen)m(t)g(the)g(ignore)f(coun)m(t,)h(GDB)h(tak)m(es)f(no)g
(action.)630 1621 y(T)-8 b(o)25 b(mak)m(e)g(the)g(breakp)s(oin)m(t)f
(stop)g(the)h(next)g(time)f(it)g(is)f(reac)m(hed,)k(sp)s(ecify)c(a)i
(coun)m(t)g(of)g(zero.)630 1754 y(When)36 b(y)m(ou)h(use)f
Fo(continue)e Fu(to)j(resume)f(execution)g(of)h(y)m(our)f(program)g
(from)g(a)h(break-)630 1863 y(p)s(oin)m(t,)g(y)m(ou)g(can)g(sp)s(ecify)
e(an)h(ignore)g(coun)m(t)i(directly)d(as)h(an)h(argumen)m(t)g(to)g
Fo(continue)p Fu(,)630 1973 y(rather)30 b(than)g(using)f
Fo(ignore)p Fu(.)39 b(See)31 b(Section)f(5.2)i([Con)m(tin)m(uing)c(and)
i(stepping],)g(page)h(38.)630 2106 y(If)38 b(a)h(breakp)s(oin)m(t)e
(has)h(a)h(p)s(ositiv)m(e)e(ignore)h(coun)m(t)h(and)f(a)g(condition,)h
(the)g(condition)e(is)630 2216 y(not)f(c)m(hec)m(k)m(ed.)59
b(Once)36 b(the)g(ignore)f(coun)m(t)h(reac)m(hes)h(zero,)h(GDB)f
(resumes)e(c)m(hec)m(king)i(the)630 2325 y(condition.)630
2458 y(Y)-8 b(ou)48 b(could)f(ac)m(hiev)m(e)i(the)f(e\013ect)i(of)e
(the)g(ignore)f(coun)m(t)i(with)d(a)j(condition)d(suc)m(h)i(as)630
2568 y(`)p Fo($foo--)29 b(<=)h(0)p Fu(')i(using)f(a)h(debugger)g(con)m
(v)m(enience)i(v)-5 b(ariable)31 b(that)i(is)e(decremen)m(ted)i(eac)m
(h)630 2677 y(time.)40 b(See)31 b(Section)f(8.9)i([Con)m(v)m(enience)f
(v)-5 b(ariables],)29 b(page)i(67.)275 2833 y(Ignore)f(coun)m(ts)h
(apply)e(to)i(breakp)s(oin)m(ts,)e(w)m(atc)m(hp)s(oin)m(ts,)i(and)f
(catc)m(hp)s(oin)m(ts.)150 3053 y Fk(5.1.7)63 b(Breakp)s(oin)m(t)41
b(command)e(lists)275 3244 y Fu(Y)-8 b(ou)41 b(can)h(giv)m(e)g(an)m(y)f
(breakp)s(oin)m(t)g(\(or)g(w)m(atc)m(hp)s(oin)m(t)h(or)f(catc)m(hp)s
(oin)m(t\))h(a)g(series)f(of)g(commands)g(to)150 3353
y(execute)30 b(when)e(y)m(our)h(program)g(stops)f(due)h(to)g(that)h
(breakp)s(oin)m(t.)39 b(F)-8 b(or)30 b(example,)f(y)m(ou)g(migh)m(t)f
(w)m(an)m(t)i(to)150 3463 y(prin)m(t)f(the)i(v)-5 b(alues)29
b(of)i(certain)f(expressions,)f(or)i(enable)f(other)g(breakp)s(oin)m
(ts.)150 3666 y Fo(commands)e Fu([)p Fn(bn)m(um)p Fu(])150
3775 y Fo(...)h Fn(command-list)j Fo(...)150 3885 y(end)336
b Fu(Sp)s(ecify)22 b(a)j(list)e(of)h(commands)g(for)g(breakp)s(oin)m(t)
f(n)m(um)m(b)s(er)g Fn(bn)m(um)p Fu(.)37 b(The)24 b(commands)g(them-)
630 3995 y(selv)m(es)d(app)s(ear)f(on)h(the)g(follo)m(wing)f(lines.)35
b(T)m(yp)s(e)21 b(a)g(line)e(con)m(taining)i(just)f Fo(end)g
Fu(to)i(terminate)630 4104 y(the)31 b(commands.)630 4237
y(T)-8 b(o)35 b(remo)m(v)m(e)g(all)f(commands)f(from)h(a)h(breakp)s
(oin)m(t,)f(t)m(yp)s(e)h Fo(commands)d Fu(and)h(follo)m(w)h(it)g(im-)
630 4347 y(mediately)c(with)f Fo(end)p Fu(;)g(that)i(is,)f(giv)m(e)h
(no)f(commands.)630 4480 y(With)i(no)h Fn(bn)m(um)f Fu(argumen)m(t,)i
Fo(commands)d Fu(refers)h(to)i(the)f(last)g(breakp)s(oin)m(t,)f(w)m
(atc)m(hp)s(oin)m(t,)630 4589 y(or)e(catc)m(hp)s(oin)m(t)h(set)g(\(not)
g(to)g(the)g(breakp)s(oin)m(t)e(most)i(recen)m(tly)g(encoun)m(tered\).)
275 4745 y(Pressing)647 4742 y Fj(h)p 671 4689 151 4
v 671 4745 a Fi(RET)p 671 4761 V 818 4742 a Fj(i)890
4745 y Fu(as)42 b(a)g(means)g(of)g(rep)s(eating)f(the)h(last)f(GDB)i
(command)f(is)f(disabled)e(within)h(a)150 4855 y Fn(command-list)p
Fu(.)275 4988 y(Y)-8 b(ou)41 b(can)g(use)g(breakp)s(oin)m(t)f(commands)
g(to)i(start)g(y)m(our)f(program)f(up)g(again.)73 b(Simply)38
b(use)j(the)150 5097 y Fo(continue)28 b Fu(command,)j(or)f
Fo(step)p Fu(,)f(or)i(an)m(y)f(other)h(command)f(that)h(resumes)f
(execution.)275 5230 y(An)m(y)25 b(other)h(commands)f(in)f(the)i
(command)g(list,)f(after)h(a)g(command)f(that)i(resumes)e(execution,)i
(are)150 5340 y(ignored.)39 b(This)25 b(is)g(b)s(ecause)i(an)m(y)g
(time)f(y)m(ou)h(resume)g(execution)f(\(ev)m(en)i(with)e(a)h(simple)d
Fo(next)i Fu(or)g Fo(step)p Fu(\),)p eop
%%Page: 37 39
37 38 bop 150 -116 a Fu(Chapter)30 b(5:)41 b(Stopping)29
b(and)h(Con)m(tin)m(uing)2042 b(37)150 299 y(y)m(ou)36
b(ma)m(y)g(encoun)m(ter)h(another)f(breakp)s(oin)m(t|whic)m(h)d(could)i
(ha)m(v)m(e)i(its)e(o)m(wn)h(command)f(list,)h(leading)150
408 y(to)31 b(am)m(biguities)e(ab)s(out)h(whic)m(h)f(list)g(to)i
(execute.)275 557 y(If)e(the)i(\014rst)e(command)h(y)m(ou)h(sp)s(ecify)
e(in)g(a)h(command)h(list)d(is)i Fo(silent)p Fu(,)f(the)h(usual)f
(message)i(ab)s(out)150 666 y(stopping)37 b(at)i(a)f(breakp)s(oin)m(t)f
(is)g(not)i(prin)m(ted.)62 b(This)37 b(ma)m(y)h(b)s(e)g(desirable)e
(for)i(breakp)s(oin)m(ts)f(that)i(are)150 776 y(to)f(prin)m(t)d(a)i(sp)
s(eci\014c)f(message)h(and)g(then)f(con)m(tin)m(ue.)60
b(If)37 b(none)f(of)h(the)g(remaining)e(commands)h(prin)m(t)150
885 y(an)m(ything,)e(y)m(ou)h(see)f(no)g(sign)e(that)j(the)f(breakp)s
(oin)m(t)f(w)m(as)h(reac)m(hed.)52 b Fo(silent)32 b Fu(is)h(meaningful)
e(only)i(at)150 995 y(the)e(b)s(eginning)c(of)k(a)g(breakp)s(oin)m(t)e
(command)h(list.)275 1143 y(The)23 b(commands)h Fo(echo)p
Fu(,)g Fo(output)p Fu(,)g(and)g Fo(printf)e Fu(allo)m(w)i(y)m(ou)g(to)h
(prin)m(t)e(precisely)f(con)m(trolled)i(output,)150 1253
y(and)44 b(are)i(often)f(useful)e(in)h(silen)m(t)f(breakp)s(oin)m(ts.)
83 b(See)46 b(Section)e(15.4)j([Commands)d(for)g(con)m(trolled)150
1362 y(output],)30 b(page)i(145.)275 1510 y(F)-8 b(or)30
b(example,)f(here)g(is)g(ho)m(w)g(y)m(ou)h(could)f(use)g(breakp)s(oin)m
(t)f(commands)h(to)h(prin)m(t)e(the)i(v)-5 b(alue)29
b(of)g Fo(x)g Fu(at)150 1620 y(en)m(try)i(to)g Fo(foo)e
Fu(whenev)m(er)h Fo(x)g Fu(is)g(p)s(ositiv)m(e.)390 1762
y Fo(break)46 b(foo)h(if)g(x>0)390 1866 y(commands)390
1970 y(silent)390 2074 y(printf)f("x)h(is)g(\045d\\n",x)390
2177 y(cont)390 2281 y(end)275 2429 y Fu(One)29 b(application)f(for)i
(breakp)s(oin)m(t)e(commands)i(is)f(to)h(comp)s(ensate)h(for)e(one)h
(bug)g(so)g(y)m(ou)g(can)g(test)150 2539 y(for)41 b(another.)73
b(Put)41 b(a)h(breakp)s(oin)m(t)e(just)h(after)h(the)f(erroneous)g
(line)e(of)j(co)s(de,)i(giv)m(e)e(it)f(a)g(condition)150
2648 y(to)34 b(detect)i(the)e(case)g(in)f(whic)m(h)f(something)h
(erroneous)h(has)f(b)s(een)g(done,)i(and)e(giv)m(e)i(it)e(commands)g
(to)150 2758 y(assign)26 b(correct)j(v)-5 b(alues)26
b(to)i(an)m(y)f(v)-5 b(ariables)26 b(that)i(need)f(them.)39
b(End)26 b(with)g(the)h Fo(continue)e Fu(command)i(so)150
2868 y(that)34 b(y)m(our)g(program)f(do)s(es)h(not)g(stop,)h(and)e
(start)h(with)e(the)i Fo(silent)e Fu(command)i(so)f(that)i(no)e(output)
150 2977 y(is)c(pro)s(duced.)39 b(Here)31 b(is)f(an)g(example:)390
3119 y Fo(break)46 b(403)390 3223 y(commands)390 3327
y(silent)390 3431 y(set)h(x)g(=)h(y)f(+)h(4)390 3535
y(cont)390 3638 y(end)150 3890 y Fk(5.1.8)63 b(Breakp)s(oin)m(t)41
b(men)m(us)275 4096 y Fu(Some)f(programming)f(languages)i(\(suc)m(h)f
(as)g(C)p Fo(++)g Fu(or)g(Ob)5 b(jectiv)m(e-C\))41 b(p)s(ermit)e(a)h
(single)f(function)150 4206 y(name)32 b(to)g(b)s(e)g(de\014ned)e(sev)m
(eral)i(times,)g(for)g(application)e(in)g(di\013eren)m(t)i(con)m
(texts.)46 b(This)30 b(is)h(called)g Fn(o)m(v)m(er-)150
4315 y(loading)p Fu(.)44 b(When)32 b(a)g(function)f(name)h(is)f(o)m(v)m
(erloaded,)i(`)p Fo(break)c Fn(function)p Fu(')i(is)g(not)h(enough)g
(to)h(tell)e(GDB)150 4425 y(where)h(y)m(ou)h(w)m(an)m(t)g(a)g(breakp)s
(oin)m(t.)46 b(If)32 b(y)m(ou)h(realize)f(this)g(is)f(a)i(problem,)f(y)
m(ou)h(can)f(use)h(something)f(lik)m(e)150 4534 y(`)p
Fo(break)d Fn(function)p Fo(\()p Fn(t)m(yp)s(es)t Fo(\))p
Fu(')e(to)i(sp)s(ecify)f(whic)m(h)f(particular)g(v)m(ersion)h(of)h(the)
g(function)e(y)m(ou)i(w)m(an)m(t.)41 b(Oth-)150 4644
y(erwise,)30 b(GDB)h(o\013ers)f(y)m(ou)g(a)h(men)m(u)f(of)g(n)m(um)m(b)
s(ered)f(c)m(hoices)h(for)g(di\013eren)m(t)g(p)s(ossible)d(breakp)s
(oin)m(ts,)j(and)150 4754 y(w)m(aits)f(for)g(y)m(our)f(selection)h
(with)f(the)h(prompt)f(`)p Fo(>)p Fu('.)40 b(The)28 b(\014rst)h(t)m(w)m
(o)h(options)e(are)h(alw)m(a)m(ys)h(`)p Fo([0])f(cancel)p
Fu(')150 4863 y(and)41 b(`)p Fo([1])29 b(all)p Fu('.)73
b(T)m(yping)40 b Fl(1)h Fu(sets)h(a)f(breakp)s(oin)m(t)f(at)i(eac)m(h)h
(de\014nition)c(of)i Fn(function)p Fu(,)i(and)e(t)m(yping)f
Fl(0)150 4973 y Fu(ab)s(orts)30 b(the)h Fo(break)e Fu(command)h
(without)f(setting)i(an)m(y)f(new)g(breakp)s(oin)m(ts.)275
5121 y(F)-8 b(or)31 b(example,)h(the)f(follo)m(wing)f(session)g
(excerpt)i(sho)m(ws)e(an)h(attempt)i(to)f(set)f(a)h(breakp)s(oin)m(t)e
(at)i(the)150 5230 y(o)m(v)m(erloaded)e(sym)m(b)s(ol)e
Fo(String::after)p Fu(.)36 b(W)-8 b(e)30 b(c)m(ho)s(ose)g(three)g
(particular)d(de\014nitions)f(of)k(that)f(function)150
5340 y(name:)p eop
%%Page: 38 40
38 39 bop 150 -116 a Fu(38)2644 b(Debugging)31 b(with)e(GDB)390
299 y Fo(\(gdb\))46 b(b)i(String::after)390 403 y([0])f(cancel)390
506 y([1])g(all)390 610 y([2])g(file:String.cc;)d(line)i(number:867)390
714 y([3])h(file:String.cc;)d(line)i(number:860)390 818
y([4])h(file:String.cc;)d(line)i(number:875)390 922 y([5])h
(file:String.cc;)d(line)i(number:853)390 1025 y([6])h(file:String.cc;)d
(line)i(number:846)390 1129 y([7])h(file:String.cc;)d(line)i
(number:735)390 1233 y(>)h(2)h(4)f(6)390 1337 y(Breakpoint)e(1)i(at)h
(0xb26c:)d(file)i(String.cc,)e(line)i(867.)390 1440 y(Breakpoint)e(2)i
(at)h(0xb344:)d(file)i(String.cc,)e(line)i(875.)390 1544
y(Breakpoint)e(3)i(at)h(0xafcc:)d(file)i(String.cc,)e(line)i(846.)390
1648 y(Multiple)f(breakpoints)e(were)j(set.)390 1752
y(Use)g(the)g("delete")e(command)h(to)h(delete)f(unwanted)438
1856 y(breakpoints.)390 1959 y(\(gdb\))150 2203 y Fs(5.2)68
b(Con)l(tin)l(uing)46 b(and)f(stepping)275 2393 y Fn(Con)m(tin)m(uing)
34 b Fu(means)29 b(resuming)e(program)h(execution)h(un)m(til)e(y)m(our)
i(program)f(completes)h(normally)-8 b(.)150 2503 y(In)28
b(con)m(trast,)j Fn(stepping)k Fu(means)29 b(executing)f(just)h(one)g
(more)f(\\step")i(of)f(y)m(our)g(program,)g(where)f(\\step")150
2612 y(ma)m(y)35 b(mean)f(either)g(one)h(line)e(of)h(source)h(co)s(de,)
h(or)e(one)h(mac)m(hine)f(instruction)e(\(dep)s(ending)h(on)h(what)150
2722 y(particular)22 b(command)i(y)m(ou)h(use\).)38 b(Either)23
b(when)g(con)m(tin)m(uing)g(or)h(when)f(stepping,)i(y)m(our)f(program)f
(ma)m(y)150 2832 y(stop)30 b(ev)m(en)h(so)s(oner,)e(due)h(to)g(a)g
(breakp)s(oin)m(t)f(or)h(a)g(signal.)40 b(\(If)29 b(due)h(to)g(a)g
(signal,)f(y)m(ou)h(ma)m(y)h(w)m(an)m(t)g(to)f(use)150
2941 y Fo(handle)p Fu(,)f(or)h(use)g(`)p Fo(signal)f(0)p
Fu(')i(to)g(resume)e(execution.)41 b(See)31 b(Section)f(5.3)i
([Signals],)d(page)i(40.\))150 3143 y Fo(continue)d Fu([)p
Fn(ignore-coun)m(t)r Fu(])150 3252 y Fo(c)i Fu([)p Fn(ignore-coun)m(t)r
Fu(])150 3362 y Fo(fg)g Fu([)p Fn(ignore-coun)m(t)r Fu(])630
3472 y(Resume)35 b(program)g(execution,)i(at)e(the)h(address)e(where)h
(y)m(our)g(program)g(last)g(stopp)s(ed;)630 3581 y(an)m(y)47
b(breakp)s(oin)m(ts)e(set)i(at)g(that)g(address)e(are)i(b)m(ypassed.)88
b(The)46 b(optional)f(argumen)m(t)630 3691 y Fn(ignore-coun)m(t)31
b Fu(allo)m(ws)c(y)m(ou)i(to)g(sp)s(ecify)d(a)j(further)e(n)m(um)m(b)s
(er)g(of)h(times)g(to)g(ignore)g(a)h(break-)630 3800
y(p)s(oin)m(t)h(at)h(this)f(lo)s(cation;)g(its)g(e\013ect)j(is)c(lik)m
(e)h(that)i(of)e Fo(ignore)f Fu(\(see)j(Section)e(5.1.6)j([Break)630
3910 y(conditions],)c(page)i(35\).)630 4042 y(The)25
b(argumen)m(t)h Fn(ignore-coun)m(t)i Fu(is)d(meaningful)e(only)i(when)f
(y)m(our)i(program)f(stopp)s(ed)g(due)630 4152 y(to)31
b(a)g(breakp)s(oin)m(t.)40 b(A)m(t)31 b(other)f(times,)h(the)f(argumen)
m(t)h(to)g Fo(continue)d Fu(is)i(ignored.)630 4285 y(The)g(synon)m(yms)
f Fo(c)h Fu(and)g Fo(fg)f Fu(are)i(pro)m(vided)d(purely)h(for)h(con)m
(v)m(enience,)h(and)f(ha)m(v)m(e)h(exactly)630 4394 y(the)g(same)f(b)s
(eha)m(vior)g(as)g Fo(continue)p Fu(.)275 4550 y(T)-8
b(o)23 b(resume)f(execution)g(at)i(a)f(di\013eren)m(t)f(place,)i(y)m
(ou)f(can)g(use)f Fo(return)f Fu(\(see)j(Section)e(11.4)i([Returning)
150 4659 y(from)39 b(a)i(function],)g(page)f(99\))h(to)g(go)g(bac)m(k)f
(to)h(the)f(calling)e(function;)44 b(or)39 b Fo(jump)g
Fu(\(see)i(Section)e(11.2)150 4769 y([Con)m(tin)m(uing)25
b(at)i(a)g(di\013eren)m(t)f(address],)g(page)h(98\))h(to)f(go)g(to)g
(an)g(arbitrary)e(lo)s(cation)h(in)f(y)m(our)h(program.)275
4902 y(A)21 b(t)m(ypical)g(tec)m(hnique)h(for)f(using)f(stepping)h(is)f
(to)i(set)h(a)f(breakp)s(oin)m(t)e(\(see)j(Section)e(5.1)i([Breakp)s
(oin)m(ts;)150 5011 y(w)m(atc)m(hp)s(oin)m(ts;)47 b(and)41
b(catc)m(hp)s(oin)m(ts],)j(page)e(27\))h(at)f(the)f(b)s(eginning)e(of)i
(the)g(function)f(or)h(the)h(section)150 5121 y(of)f(y)m(our)g(program)
g(where)g(a)g(problem)f(is)g(b)s(eliev)m(ed)g(to)i(lie,)g(run)e(y)m
(our)h(program)g(un)m(til)e(it)i(stops)g(at)150 5230
y(that)32 b(breakp)s(oin)m(t,)e(and)h(then)g(step)g(through)g(the)g
(susp)s(ect)f(area,)j(examining)d(the)h(v)-5 b(ariables)30
b(that)i(are)150 5340 y(in)m(teresting,)e(un)m(til)f(y)m(ou)h(see)h
(the)g(problem)e(happ)s(en.)p eop
%%Page: 39 41
39 40 bop 150 -116 a Fu(Chapter)30 b(5:)h(Stopping)e(and)g(Con)m(tin)m
(uing)2053 b(39)150 299 y Fo(step)288 b Fu(Con)m(tin)m(ue)40
b(running)e(y)m(our)j(program)g(un)m(til)e(con)m(trol)i(reac)m(hes)h(a)
f(di\013eren)m(t)f(source)h(line,)630 408 y(then)30 b(stop)h(it)e(and)h
(return)g(con)m(trol)g(to)h(GDB.)h(This)d(command)h(is)f(abbreviated)h
Fo(s)p Fu(.)870 530 y Fr(Warning:)68 b Fu(If)41 b(y)m(ou)g(use)g(the)h
Fo(step)e Fu(command)h(while)e(con)m(trol)j(is)e(within)870
633 y(a)c(function)e(that)j(w)m(as)f(compiled)e(without)g(debugging)h
(information,)g(ex-)870 737 y(ecution)41 b(pro)s(ceeds)g(un)m(til)f
(con)m(trol)i(reac)m(hes)g(a)g(function)f(that)h(do)s(es)f(ha)m(v)m(e)
870 841 y(debugging)c(information.)61 b(Lik)m(ewise,)39
b(it)f(will)d(not)j(step)g(in)m(to)g(a)g(function)870
945 y(whic)m(h)24 b(is)h(compiled)f(without)g(debugging)h(information.)
37 b(T)-8 b(o)26 b(step)g(through)870 1048 y(functions)e(without)g
(debugging)h(information,)f(use)h(the)h Fo(stepi)e Fu(command,)870
1152 y(describ)s(ed)k(b)s(elo)m(w.)630 1279 y(The)40
b Fo(step)g Fu(command)g(no)m(w)h(only)f(stops)h(at)g(the)g(\014rst)f
(instruction)f(of)i(a)g(source)g(line.)630 1389 y(This)34
b(prev)m(en)m(ts)i(the)g(m)m(ultiple)d(stops)j(that)g(used)f(to)h(o)s
(ccur)g(in)e(switc)m(h)h(statemen)m(ts,)k(for)630 1498
y(lo)s(ops,)28 b(etc.)41 b Fo(step)27 b Fu(con)m(tin)m(ues)i(to)g(stop)
f(if)g(a)g(function)f(that)i(has)f(debugging)g(information)630
1608 y(is)h(called)h(within)e(the)i(line.)630 1735 y(Also,)43
b(the)e Fo(step)e Fu(command)h(no)m(w)g(only)g(en)m(ters)h(a)g
(subroutine)d(if)i(there)g(is)g(line)e(n)m(um-)630 1844
y(b)s(er)31 b(information)g(for)h(the)g(subroutine.)45
b(Otherwise)31 b(it)g(acts)j(lik)m(e)d(the)i Fo(next)e
Fu(command.)630 1954 y(This)e(a)m(v)m(oids)i(problems)e(when)h(using)f
Fo(cc)h(-gl)g Fu(on)h(MIPS)f(mac)m(hines.)41 b(Previously)-8
b(,)30 b Fo(step)630 2064 y Fu(en)m(tered)h(subroutines)d(if)h(there)h
(w)m(as)h(an)m(y)g(debugging)e(information)f(ab)s(out)i(the)h(routine.)
150 2208 y Fo(step)e Fn(coun)m(t)630 2317 y Fu(Con)m(tin)m(ue)d
(running)e(as)j(in)f Fo(step)p Fu(,)g(but)g(do)h(so)g
Fn(coun)m(t)i Fu(times.)39 b(If)26 b(a)i(breakp)s(oin)m(t)d(is)h(reac)m
(hed,)630 2427 y(or)39 b(a)h(signal)e(not)h(related)g(to)h(stepping)e
(o)s(ccurs)h(b)s(efore)g Fn(coun)m(t)i Fu(steps,)h(stepping)c(stops)630
2537 y(righ)m(t)30 b(a)m(w)m(a)m(y)-8 b(.)150 2681 y
Fo(next)29 b Fu([)p Fn(coun)m(t)r Fu(])630 2790 y(Con)m(tin)m(ue)j(to)i
(the)f(next)g(source)g(line)e(in)g(the)i(curren)m(t)g(\(innermost\))f
(stac)m(k)i(frame.)48 b(This)630 2900 y(is)37 b(similar)e(to)j
Fo(step)p Fu(,)h(but)e(function)f(calls)h(that)h(app)s(ear)f(within)e
(the)j(line)e(of)i(co)s(de)g(are)630 3010 y(executed)g(without)e
(stopping.)61 b(Execution)36 b(stops)i(when)e(con)m(trol)i(reac)m(hes)g
(a)f(di\013eren)m(t)630 3119 y(line)d(of)j(co)s(de)f(at)h(the)f
(original)f(stac)m(k)i(lev)m(el)f(that)h(w)m(as)f(executing)h(when)e(y)
m(ou)h(ga)m(v)m(e)j(the)630 3229 y Fo(next)29 b Fu(command.)41
b(This)28 b(command)i(is)g(abbreviated)g Fo(n)p Fu(.)630
3356 y(An)g(argumen)m(t)h Fn(coun)m(t)i Fu(is)c(a)i(rep)s(eat)g(coun)m
(t,)g(as)f(for)h Fo(step)p Fu(.)630 3483 y(The)24 b Fo(next)f
Fu(command)h(no)m(w)g(only)f(stops)h(at)h(the)g(\014rst)e(instruction)f
(of)j(a)f(source)h(line.)37 b(This)630 3592 y(prev)m(en)m(ts)32
b(the)f(m)m(ultiple)e(stops)j(that)g(used)e(to)i(o)s(ccur)f(in)f(switc)
m(h)h(statemen)m(ts,)j(for)d(lo)s(ops,)630 3702 y(etc.)150
3846 y Fo(finish)192 b Fu(Con)m(tin)m(ue)32 b(running)f(un)m(til)g
(just)h(after)i(function)d(in)h(the)h(selected)h(stac)m(k)g(frame)f
(returns.)630 3956 y(Prin)m(t)c(the)i(returned)e(v)-5
b(alue)30 b(\(if)g(an)m(y\).)630 4083 y(Con)m(trast)37
b(this)e(with)f(the)j Fo(return)d Fu(command)i(\(see)h(Section)f(11.4)h
([Returning)e(from)h(a)630 4192 y(function],)30 b(page)h(99\).)150
4336 y Fo(until)150 4446 y(u)432 b Fu(Con)m(tin)m(ue)30
b(running)e(un)m(til)h(a)i(source)g(line)e(past)h(the)h(curren)m(t)g
(line,)e(in)g(the)i(curren)m(t)f(stac)m(k)630 4556 y(frame,)24
b(is)e(reac)m(hed.)39 b(This)20 b(command)i(is)g(used)g(to)h(a)m(v)m
(oid)g(single)e(stepping)g(through)h(a)h(lo)s(op)630
4665 y(more)28 b(than)f(once.)41 b(It)28 b(is)e(lik)m(e)h(the)h
Fo(next)f Fu(command,)h(except)h(that)f(when)f Fo(until)f
Fu(encoun-)630 4775 y(ters)32 b(a)g(jump,)e(it)i(automatically)f(con)m
(tin)m(ues)h(execution)g(un)m(til)d(the)j(program)g(coun)m(ter)g(is)630
4884 y(greater)g(than)e(the)g(address)g(of)g(the)h(jump.)630
5011 y(This)c(means)h(that)h(when)e(y)m(ou)i(reac)m(h)g(the)f(end)g(of)
g(a)h(lo)s(op)e(after)i(single)e(stepping)g(though)630
5121 y(it,)e Fo(until)e Fu(mak)m(es)j(y)m(our)e(program)g(con)m(tin)m
(ue)h(execution)f(un)m(til)f(it)h(exits)g(the)h(lo)s(op.)38
b(In)23 b(con-)630 5230 y(trast,)29 b(a)f Fo(next)f Fu(command)h(at)g
(the)g(end)f(of)h(a)g(lo)s(op)f(simply)f(steps)i(bac)m(k)g(to)h(the)f
(b)s(eginning)630 5340 y(of)j(the)f(lo)s(op,)g(whic)m(h)f(forces)i(y)m
(ou)f(to)i(step)e(through)g(the)g(next)h(iteration.)p
eop
%%Page: 40 42
40 41 bop 150 -116 a Fu(40)2644 b(Debugging)31 b(with)e(GDB)630
299 y Fo(until)c Fu(alw)m(a)m(ys)i(stops)g(y)m(our)f(program)h(if)e(it)
h(attempts)i(to)f(exit)g(the)f(curren)m(t)h(stac)m(k)h(frame.)630
441 y Fo(until)k Fu(ma)m(y)i(pro)s(duce)e(somewhat)i(coun)m(terin)m
(tuitiv)m(e)f(results)f(if)g(the)i(order)f(of)g(mac)m(hine)630
551 y(co)s(de)25 b(do)s(es)g(not)h(matc)m(h)g(the)f(order)g(of)g(the)h
(source)f(lines.)37 b(F)-8 b(or)26 b(example,)g(in)e(the)h(follo)m
(wing)630 660 y(excerpt)f(from)f(a)h(debugging)f(session,)h(the)g
Fo(f)f Fu(\()p Fo(frame)p Fu(\))g(command)g(sho)m(ws)h(that)g
(execution)630 770 y(is)29 b(stopp)s(ed)h(at)h(line)e
Fo(206)p Fu(;)g(y)m(et)j(when)d(w)m(e)i(use)f Fo(until)p
Fu(,)f(w)m(e)i(get)h(to)f(line)e Fo(195)p Fu(:)870 906
y Fo(\(gdb\))46 b(f)870 1010 y(#0)95 b(main)47 b(\(argc=4,)e
(argv=0xf7fffae8\))e(at)48 b(m4.c:206)870 1114 y(206)811
b(expand_input\(\);)870 1218 y(\(gdb\))46 b(until)870
1322 y(195)620 b(for)47 b(\()g(;)g(argc)g(>)h(0;)f(NEXTARG\))e({)630
1464 y Fu(This)39 b(happ)s(ened)g(b)s(ecause,)k(for)e(execution)g
(e\016ciency)-8 b(,)44 b(the)d(compiler)e(had)h(generated)630
1574 y(co)s(de)35 b(for)f(the)h(lo)s(op)e(closure)h(test)i(at)f(the)g
(end,)g(rather)f(than)g(the)h(start,)i(of)d(the)h(lo)s(op|)630
1683 y(ev)m(en)j(though)e(the)h(test)h(in)d(a)i(C)g Fo(for)p
Fu(-lo)s(op)e(is)h(written)g(b)s(efore)g(the)h(b)s(o)s(dy)f(of)h(the)g
(lo)s(op.)630 1793 y(The)29 b Fo(until)g Fu(command)g(app)s(eared)g(to)
i(step)e(bac)m(k)i(to)f(the)g(b)s(eginning)d(of)j(the)g(lo)s(op)f(when)
630 1902 y(it)40 b(adv)-5 b(anced)41 b(to)h(this)e(expression;)45
b(ho)m(w)m(ev)m(er,)g(it)40 b(has)h(not)g(really)f(gone)i(to)f(an)g
(earlier)630 2012 y(statemen)m(t|not)32 b(in)e(terms)g(of)g(the)h
(actual)g(mac)m(hine)f(co)s(de.)630 2154 y Fo(until)37
b Fu(with)h(no)h(argumen)m(t)g(w)m(orks)g(b)m(y)f(means)h(of)g(single)f
(instruction)f(stepping,)j(and)630 2264 y(hence)31 b(is)e(slo)m(w)m(er)
h(than)h Fo(until)d Fu(with)i(an)g(argumen)m(t.)150 2439
y Fo(until)f Fn(lo)s(cation)150 2548 y Fo(u)h Fn(lo)s(cation)86
b Fu(Con)m(tin)m(ue)36 b(running)e(y)m(our)i(program)h(un)m(til)e
(either)h(the)g(sp)s(eci\014ed)f(lo)s(cation)h(is)g(reac)m(hed,)630
2658 y(or)h(the)g(curren)m(t)g(stac)m(k)h(frame)f(returns.)59
b Fn(lo)s(cation)37 b Fu(is)f(an)m(y)h(of)g(the)g(forms)f(of)h(argumen)
m(t)630 2768 y(acceptable)22 b(to)f Fo(break)e Fu(\(see)i(Section)f
(5.1.1)j([Setting)d(breakp)s(oin)m(ts],)i(page)f(28\).)39
b(This)18 b(form)630 2877 y(of)29 b(the)h(command)e(uses)h(breakp)s
(oin)m(ts,)f(and)h(hence)g(is)f(quic)m(k)m(er)h(than)g
Fo(until)f Fu(without)g(an)630 2987 y(argumen)m(t.)150
3162 y Fo(stepi)150 3271 y(si)384 b Fu(Execute)31 b(one)g(mac)m(hine)f
(instruction,)f(then)h(stop)g(and)g(return)f(to)i(the)g(debugger.)630
3414 y(It)25 b(is)g(often)g(useful)f(to)i(do)f(`)p Fo(display/i)j($pc)p
Fu(')d(when)f(stepping)g(b)m(y)h(mac)m(hine)g(instructions.)630
3523 y(This)38 b(mak)m(es)j(GDB)g(automatically)e(displa)m(y)f(the)i
(next)g(instruction)e(to)j(b)s(e)e(executed,)630 3633
y(eac)m(h)32 b(time)e(y)m(our)g(program)g(stops.)41 b(See)30
b(Section)h(8.6)g([Automatic)g(displa)m(y],)e(page)j(60.)630
3775 y(An)e(argumen)m(t)h(is)e(a)i(rep)s(eat)g(coun)m(t,)g(as)f(in)f
Fo(step)p Fu(.)150 3926 y Fo(nexti)150 4035 y(ni)384
b Fu(Execute)34 b(one)f(mac)m(hine)f(instruction,)f(but)h(if)g(it)g(is)
g(a)h(function)f(call,)g(pro)s(ceed)h(un)m(til)e(the)630
4145 y(function)e(returns.)630 4287 y(An)h(argumen)m(t)h(is)e(a)i(rep)s
(eat)g(coun)m(t,)g(as)f(in)f Fo(next)p Fu(.)150 4584
y Fs(5.3)68 b(Signals)275 4792 y Fu(A)28 b(signal)e(is)i(an)f(async)m
(hronous)h(ev)m(en)m(t)i(that)e(can)h(happ)s(en)d(in)h(a)h(program.)40
b(The)27 b(op)s(erating)h(system)150 4902 y(de\014nes)22
b(the)g(p)s(ossible)e(kinds)h(of)h(signals,)h(and)f(giv)m(es)h(eac)m(h)
g(kind)e(a)i(name)f(and)g(a)h(n)m(um)m(b)s(er.)37 b(F)-8
b(or)23 b(example,)150 5011 y(in)d(Unix)h Fo(SIGINT)e
Fu(is)i(the)h(signal)e(a)i(program)f(gets)i(when)d(y)m(ou)i(t)m(yp)s(e)
g(an)f(in)m(terrupt)f(\(often)j Fl(C-c)p Fu(\);)h Fo(SIGSEGV)150
5121 y Fu(is)j(the)h(signal)e(a)j(program)e(gets)i(from)e(referencing)h
(a)g(place)g(in)e(memory)i(far)f(a)m(w)m(a)m(y)j(from)d(all)g(the)h
(areas)150 5230 y(in)36 b(use;)k Fo(SIGALRM)35 b Fu(o)s(ccurs)h(when)g
(the)h(alarm)g(clo)s(c)m(k)g(timer)f(go)s(es)i(o\013)f(\(whic)m(h)f
(happ)s(ens)f(only)h(if)g(y)m(our)150 5340 y(program)30
b(has)g(requested)h(an)f(alarm\).)p eop
%%Page: 41 43
41 42 bop 150 -116 a Fu(Chapter)30 b(5:)41 b(Stopping)29
b(and)h(Con)m(tin)m(uing)2042 b(41)275 299 y(Some)29
b(signals,)g(including)d Fo(SIGALRM)p Fu(,)i(are)i(a)g(normal)e(part)i
(of)f(the)h(functioning)e(of)h(y)m(our)h(program.)150
408 y(Others,)k(suc)m(h)f(as)g Fo(SIGSEGV)p Fu(,)g(indicate)f(errors;)j
(these)f(signals)e(are)h Fn(fatal)38 b Fu(\(kill)31 b(y)m(our)i
(program)h(imme-)150 518 y(diately\))f(if)g(the)i(program)e(has)h(not)g
(sp)s(eci\014ed)f(in)f(adv)-5 b(ance)35 b(some)f(other)h(w)m(a)m(y)g
(to)f(handle)f(the)h(signal.)150 628 y Fo(SIGINT)29 b
Fu(do)s(es)i(not)g(indicate)e(an)i(error)f(in)g(y)m(our)h(program,)f
(but)h(it)f(is)g(normally)f(fatal)i(so)g(it)f(can)h(carry)150
737 y(out)g(the)f(purp)s(ose)f(of)h(the)h(in)m(terrupt:)39
b(to)31 b(kill)d(the)j(program.)275 864 y(GDB)g(has)f(the)h(abilit)m(y)
e(to)i(detect)g(an)m(y)g(o)s(ccurrence)g(of)f(a)h(signal)e(in)g(y)m
(our)i(program.)40 b(Y)-8 b(ou)31 b(can)g(tell)150 973
y(GDB)g(in)f(adv)-5 b(ance)31 b(what)f(to)h(do)f(for)g(eac)m(h)i(kind)c
(of)j(signal.)275 1100 y(Normally)-8 b(,)44 b(GDB)e(is)f(set)h(up)f(to)
h(ignore)g(non-erroneous)f(signals)f(lik)m(e)h Fo(SIGALRM)f
Fu(\(so)i(as)g(not)g(to)150 1209 y(in)m(terfere)g(with)g(their)g(role)g
(in)f(the)i(functioning)e(of)i(y)m(our)f(program\))h(but)f(to)i(stop)f
(y)m(our)f(program)150 1319 y(immediately)c(whenev)m(er)h(an)h(error)f
(signal)f(happ)s(ens.)67 b(Y)-8 b(ou)40 b(can)g(c)m(hange)h(these)f
(settings)f(with)g(the)150 1428 y Fo(handle)29 b Fu(command.)150
1606 y Fo(info)g(signals)630 1715 y Fu(Prin)m(t)h(a)i(table)g(of)f(all)
g(the)g(kinds)f(of)h(signals)f(and)h(ho)m(w)h(GDB)g(has)f(b)s(een)g
(told)g(to)h(handle)630 1825 y(eac)m(h)e(one.)40 b(Y)-8
b(ou)29 b(can)g(use)f(this)g(to)h(see)h(the)e(signal)g(n)m(um)m(b)s
(ers)f(of)i(all)e(the)i(de\014ned)e(t)m(yp)s(es)i(of)630
1934 y(signals.)630 2061 y Fo(info)g(handle)g Fu(is)g(the)i(new)f
(alias)f(for)h Fo(info)g(signals)p Fu(.)150 2204 y Fo(handle)f
Fn(signal)j(k)m(eyw)m(ords)t Fo(...)630 2314 y Fu(Change)40
b(the)g(w)m(a)m(y)h(GDB)h(handles)c(signal)h Fn(signal)p
Fu(.)69 b Fn(signal)42 b Fu(can)f(b)s(e)e(the)h(n)m(um)m(b)s(er)f(of)i
(a)630 2423 y(signal)29 b(or)i(its)f(name)g(\(with)g(or)g(without)g
(the)h(`)p Fo(SIG)p Fu(')f(at)h(the)g(b)s(eginning\).)39
b(The)30 b Fn(k)m(eyw)m(ords)630 2533 y Fu(sa)m(y)h(what)f(c)m(hange)i
(to)f(mak)m(e.)275 2676 y(The)k(k)m(eyw)m(ords)h(allo)m(w)m(ed)g(b)m(y)
g(the)g Fo(handle)f Fu(command)g(can)i(b)s(e)e(abbreviated.)57
b(Their)34 b(full)g(names)150 2786 y(are:)150 2929 y
Fo(nostop)192 b Fu(GDB)26 b(should)d(not)i(stop)g(y)m(our)g(program)g
(when)f(this)g(signal)g(happ)s(ens.)37 b(It)25 b(ma)m(y)g(still)e(prin)
m(t)630 3039 y(a)31 b(message)g(telling)e(y)m(ou)i(that)g(the)f(signal)
f(has)h(come)i(in.)150 3182 y Fo(stop)288 b Fu(GDB)41
b(should)c(stop)j(y)m(our)g(program)f(when)g(this)f(signal)g(happ)s
(ens.)67 b(This)38 b(implies)f(the)630 3292 y Fo(print)29
b Fu(k)m(eyw)m(ord)i(as)f(w)m(ell.)150 3435 y Fo(print)240
b Fu(GDB)31 b(should)e(prin)m(t)g(a)i(message)g(when)e(this)h(signal)f
(happ)s(ens.)150 3578 y Fo(noprint)144 b Fu(GDB)34 b(should)d(not)j
(men)m(tion)e(the)i(o)s(ccurrence)f(of)g(the)h(signal)d(at)j(all.)48
b(This)31 b(implies)g(the)630 3688 y Fo(nostop)e Fu(k)m(eyw)m(ord)i(as)
f(w)m(ell.)150 3831 y Fo(pass)288 b Fu(GDB)37 b(should)d(allo)m(w)i(y)m
(our)g(program)f(to)i(see)g(this)e(signal;)i(y)m(our)f(program)g(can)g
(handle)630 3941 y(the)31 b(signal,)e(or)h(else)g(it)g(ma)m(y)h
(terminate)g(if)e(the)i(signal)e(is)g(fatal)i(and)f(not)g(handled.)150
4084 y Fo(nopass)192 b Fu(GDB)31 b(should)e(not)h(allo)m(w)g(y)m(our)h
(program)f(to)h(see)g(this)e(signal.)275 4227 y(When)37
b(a)h(signal)f(stops)g(y)m(our)h(program,)i(the)e(signal)e(is)h(not)h
(visible)d(un)m(til)h(y)m(ou)j(con)m(tin)m(ue.)63 b(Y)-8
b(our)150 4337 y(program)31 b(sees)h(the)g(signal)e(then,)i(if)f
Fo(pass)f Fu(is)h(in)f(e\013ect)j(for)f(the)f(signal)g(in)f(question)h
Fr(at)j(that)h(time)p Fu(.)45 b(In)150 4446 y(other)35
b(w)m(ords,)g(after)g(GDB)g(rep)s(orts)f(a)h(signal,)f(y)m(ou)h(can)g
(use)f(the)h Fo(handle)d Fu(command)j(with)e Fo(pass)g
Fu(or)150 4556 y Fo(nopass)c Fu(to)i(con)m(trol)g(whether)e(y)m(our)i
(program)f(sees)h(that)g(signal)e(when)g(y)m(ou)i(con)m(tin)m(ue.)275
4682 y(Y)-8 b(ou)28 b(can)g(also)g(use)g(the)g Fo(signal)e
Fu(command)h(to)i(prev)m(en)m(t)g(y)m(our)f(program)f(from)h(seeing)f
(a)i(signal,)e(or)150 4792 y(cause)32 b(it)e(to)i(see)g(a)f(signal)f
(it)g(normally)f(w)m(ould)h(not)i(see,)g(or)f(to)g(giv)m(e)h(it)f(an)m
(y)g(signal)f(at)h(an)m(y)h(time.)42 b(F)-8 b(or)150
4902 y(example,)34 b(if)e(y)m(our)i(program)f(stopp)s(ed)f(due)h(to)h
(some)g(sort)f(of)h(memory)f(reference)h(error,)g(y)m(ou)f(migh)m(t)150
5011 y(store)25 b(correct)h(v)-5 b(alues)23 b(in)m(to)i(the)f
(erroneous)h(v)-5 b(ariables)23 b(and)h(con)m(tin)m(ue,)i(hoping)d(to)i
(see)g(more)f(execution;)150 5121 y(but)h(y)m(our)h(program)g(w)m(ould)
f(probably)f(terminate)i(immediately)e(as)i(a)g(result)f(of)h(the)g
(fatal)h(signal)d(once)150 5230 y(it)40 b(sa)m(w)i(the)f(signal.)70
b(T)-8 b(o)42 b(prev)m(en)m(t)f(this,)i(y)m(ou)e(can)g(con)m(tin)m(ue)g
(with)f(`)p Fo(signal)29 b(0)p Fu('.)72 b(See)41 b(Section)f(11.3)150
5340 y([Giving)29 b(y)m(our)i(program)f(a)h(signal],)e(page)i(98.)p
eop
%%Page: 42 44
42 43 bop 150 -116 a Fu(42)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fs(5.4)68 b(Stopping)45 b(and)g(starting)h(m)l(ulti-thread)g
(programs)275 488 y Fu(When)34 b(y)m(our)h(program)f(has)h(m)m(ultiple)
e(threads)h(\(see)i(Section)e(4.10)j([Debugging)e(programs)f(with)150
598 y(m)m(ultiple)f(threads],)j(page)g(24\),)i(y)m(ou)e(can)f(c)m(ho)s
(ose)h(whether)f(to)h(set)g(breakp)s(oin)m(ts)e(on)h(all)f(threads,)i
(or)150 707 y(on)30 b(a)h(particular)e(thread.)150 903
y Fo(break)g Fn(linesp)s(ec)34 b Fo(thread)29 b Fn(threadno)150
1012 y Fo(break)g Fn(linesp)s(ec)34 b Fo(thread)29 b
Fn(threadno)34 b Fo(if)c(...)630 1122 y Fn(linesp)s(ec)37
b Fu(sp)s(eci\014es)32 b(source)i(lines;)f(there)h(are)g(sev)m(eral)f
(w)m(a)m(ys)i(of)e(writing)f(them,)i(but)f(the)630 1231
y(e\013ect)f(is)d(alw)m(a)m(ys)i(to)g(sp)s(ecify)e(some)i(source)g
(line.)630 1362 y(Use)26 b(the)f(quali\014er)e(`)p Fo(thread)29
b Fn(threadno)5 b Fu(')25 b(with)f(a)h(breakp)s(oin)m(t)g(command)g(to)
g(sp)s(ecify)f(that)630 1472 y(y)m(ou)29 b(only)f(w)m(an)m(t)h(GDB)h
(to)f(stop)g(the)g(program)f(when)g(a)h(particular)e(thread)h(reac)m
(hes)i(this)630 1582 y(breakp)s(oin)m(t.)38 b Fn(threadno)30
b Fu(is)25 b(one)h(of)g(the)g(n)m(umeric)f(thread)g(iden)m(ti\014ers)f
(assigned)h(b)m(y)h(GDB,)630 1691 y(sho)m(wn)k(in)f(the)h(\014rst)g
(column)f(of)i(the)f(`)p Fo(info)g(threads)p Fu(')e(displa)m(y)-8
b(.)630 1822 y(If)30 b(y)m(ou)g(do)g(not)g(sp)s(ecify)f(`)p
Fo(thread)g Fn(threadno)5 b Fu(')30 b(when)f(y)m(ou)h(set)h(a)f(breakp)
s(oin)m(t,)f(the)i(break-)630 1932 y(p)s(oin)m(t)e(applies)g(to)i
Fr(al)5 b(l)40 b Fu(threads)30 b(of)h(y)m(our)f(program.)630
2063 y(Y)-8 b(ou)41 b(can)f(use)g(the)g Fo(thread)e Fu(quali\014er)g
(on)i(conditional)f(breakp)s(oin)m(ts)g(as)h(w)m(ell;)k(in)39
b(this)630 2172 y(case,)32 b(place)e(`)p Fo(thread)f
Fn(threadno)5 b Fu(')30 b(b)s(efore)g(the)g(breakp)s(oin)m(t)g
(condition,)f(lik)m(e)h(this:)870 2298 y Fo(\(gdb\))46
b(break)h(frik.c:13)e(thread)h(28)h(if)g(bartab)g(>)g(lim)275
2472 y Fu(Whenev)m(er)28 b(y)m(our)g(program)f(stops)h(under)e(GDB)j
(for)f(an)m(y)g(reason,)h Fr(al)5 b(l)37 b Fu(threads)28
b(of)g(execution)g(stop,)150 2581 y(not)34 b(just)f(the)h(curren)m(t)f
(thread.)51 b(This)32 b(allo)m(ws)h(y)m(ou)h(to)g(examine)f(the)h(o)m
(v)m(erall)g(state)h(of)f(the)g(program,)150 2691 y(including)27
b(switc)m(hing)i(b)s(et)m(w)m(een)i(threads,)f(without)g(w)m(orrying)f
(that)i(things)e(ma)m(y)i(c)m(hange)h(underfo)s(ot.)275
2822 y(Con)m(v)m(ersely)-8 b(,)31 b(whenev)m(er)f(y)m(ou)g(restart)h
(the)g(program,)f Fr(al)5 b(l)40 b Fu(threads)30 b(start)h(executing.)
41 b Fr(This)33 b(is)g(true)150 2931 y(even)f(when)h(single-stepping)39
b Fu(with)29 b(commands)h(lik)m(e)g Fo(step)f Fu(or)i
Fo(next)p Fu(.)275 3062 y(In)i(particular,)i(GDB)h(cannot)f
(single-step)f(all)f(threads)i(in)e(lo)s(c)m(kstep.)54
b(Since)33 b(thread)i(sc)m(heduling)150 3172 y(is)c(up)f(to)i(y)m(our)g
(debugging)e(target's)j(op)s(erating)e(system)h(\(not)g(con)m(trolled)f
(b)m(y)g(GDB\),)j(other)d(threads)150 3282 y(ma)m(y)40
b(execute)g(more)g(than)f(one)g(statemen)m(t)i(while)c(the)j(curren)m
(t)f(thread)g(completes)g(a)h(single)e(step.)150 3391
y(Moreo)m(v)m(er,)29 b(in)c(general)i(other)f(threads)g(stop)g(in)f
(the)h(middle)e(of)j(a)f(statemen)m(t,)j(rather)d(than)g(at)h(a)g
(clean)150 3501 y(statemen)m(t)32 b(b)s(oundary)-8 b(,)29
b(when)h(the)g(program)g(stops.)275 3632 y(Y)-8 b(ou)34
b(migh)m(t)g(ev)m(en)h(\014nd)e(y)m(our)i(program)f(stopp)s(ed)f(in)g
(another)i(thread)f(after)h(con)m(tin)m(uing)e(or)h(ev)m(en)150
3741 y(single-stepping.)j(This)25 b(happ)s(ens)g(whenev)m(er)h(some)h
(other)f(thread)h(runs)d(in)m(to)j(a)g(breakp)s(oin)m(t,)f(a)h(signal,)
150 3851 y(or)j(an)h(exception)f(b)s(efore)g(the)h(\014rst)e(thread)h
(completes)h(whatev)m(er)g(y)m(ou)g(requested.)275 3982
y(On)k(some)i(OSes,)h(y)m(ou)f(can)g(lo)s(c)m(k)g(the)f(OS)g(sc)m
(heduler)g(and)g(th)m(us)g(allo)m(w)g(only)g(a)h(single)e(thread)h(to)
150 4092 y(run.)150 4244 y Fo(set)29 b(scheduler-locking)d
Fn(mo)s(de)630 4354 y Fu(Set)34 b(the)g(sc)m(heduler)f(lo)s(c)m(king)g
(mo)s(de.)51 b(If)33 b(it)h(is)f Fo(off)p Fu(,)h(then)f(there)h(is)f
(no)h(lo)s(c)m(king)f(and)h(an)m(y)630 4463 y(thread)42
b(ma)m(y)i(run)d(at)i(an)m(y)g(time.)78 b(If)42 b Fo(on)p
Fu(,)j(then)e(only)e(the)i(curren)m(t)g(thread)f(ma)m(y)h(run)630
4573 y(when)c(the)h(inferior)e(is)h(resumed.)68 b(The)40
b Fo(step)f Fu(mo)s(de)g(optimizes)g(for)h(single-stepping.)630
4682 y(It)f(stops)h(other)f(threads)g(from)g(\\seizing)g(the)g(prompt")
g(b)m(y)h(preempting)e(the)h(curren)m(t)630 4792 y(thread)32
b(while)f(y)m(ou)h(are)h(stepping.)46 b(Other)32 b(threads)g(will)e
(only)h(rarely)h(\(or)h(nev)m(er\))g(get)h(a)630 4902
y(c)m(hance)25 b(to)g(run)d(when)h(y)m(ou)i(step.)38
b(They)24 b(are)g(more)g(lik)m(ely)f(to)i(run)d(when)h(y)m(ou)i
(\\next")g(o)m(v)m(er)630 5011 y(a)36 b(function)e(call,)i(and)f(they)h
(are)g(completely)f(free)h(to)g(run)e(when)g(y)m(ou)i(use)f(commands)
630 5121 y(lik)m(e)42 b(\\con)m(tin)m(ue",)47 b(\\un)m(til",)e(or)e
(\\\014nish".)76 b(Ho)m(w)m(ev)m(er,)48 b(unless)42 b(another)g(thread)
h(hits)f(a)630 5230 y(breakp)s(oin)m(t)d(during)e(its)i(timeslice,)i
(they)f(will)d(nev)m(er)j(steal)g(the)g(GDB)g(prompt)f(a)m(w)m(a)m(y)
630 5340 y(from)30 b(the)g(thread)h(that)g(y)m(ou)f(are)h(debugging.)p
eop
%%Page: 43 45
43 44 bop 150 -116 a Fu(Chapter)30 b(5:)41 b(Stopping)29
b(and)h(Con)m(tin)m(uing)2042 b(43)150 299 y Fo(show)29
b(scheduler-locking)630 408 y Fu(Displa)m(y)h(the)g(curren)m(t)g(sc)m
(heduler)f(lo)s(c)m(king)h(mo)s(de.)p eop
%%Page: 44 46
44 45 bop 150 -116 a Fu(44)2644 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 45 47
45 46 bop 150 -116 a Fu(Chapter)30 b(6:)41 b(Examining)28
b(the)j(Stac)m(k)2213 b(45)150 299 y Fp(6)80 b(Examining)55
b(the)e(Stac)l(k)275 531 y Fu(When)32 b(y)m(our)h(program)g(has)g
(stopp)s(ed,)g(the)g(\014rst)f(thing)g(y)m(ou)h(need)g(to)h(kno)m(w)f
(is)f(where)g(it)h(stopp)s(ed)150 641 y(and)d(ho)m(w)g(it)g(got)i
(there.)275 775 y(Eac)m(h)22 b(time)g(y)m(our)f(program)h(p)s(erforms)e
(a)i(function)f(call,)i(information)d(ab)s(out)i(the)g(call)f(is)g
(generated.)150 884 y(That)35 b(information)f(includes)f(the)i(lo)s
(cation)g(of)g(the)h(call)f(in)e(y)m(our)j(program,)g(the)g(argumen)m
(ts)f(of)h(the)150 994 y(call,)26 b(and)e(the)i(lo)s(cal)e(v)-5
b(ariables)24 b(of)h(the)h(function)d(b)s(eing)h(called.)38
b(The)25 b(information)f(is)g(sa)m(v)m(ed)i(in)e(a)h(blo)s(c)m(k)150
1104 y(of)33 b(data)h(called)e(a)h Fn(stac)m(k)i(frame)p
Fu(.)48 b(The)33 b(stac)m(k)h(frames)f(are)g(allo)s(cated)g(in)f(a)h
(region)g(of)g(memory)g(called)150 1213 y(the)e Fn(call)e(stac)m(k)p
Fu(.)275 1347 y(When)36 b(y)m(our)h(program)f(stops,)j(the)e(GDB)h
(commands)f(for)f(examining)f(the)i(stac)m(k)i(allo)m(w)d(y)m(ou)h(to)
150 1457 y(see)31 b(all)e(of)i(this)e(information.)275
1591 y(One)h(of)h(the)g(stac)m(k)i(frames)d(is)g Fn(selected)35
b Fu(b)m(y)c(GDB)h(and)e(man)m(y)h(GDB)i(commands)d(refer)h(implicitly)
150 1700 y(to)j(the)f(selected)h(frame.)49 b(In)33 b(particular,)f
(whenev)m(er)h(y)m(ou)h(ask)f(GDB)h(for)f(the)h(v)-5
b(alue)32 b(of)i(a)f(v)-5 b(ariable)32 b(in)150 1810
y(y)m(our)f(program,)g(the)g(v)-5 b(alue)30 b(is)g(found)f(in)h(the)h
(selected)g(frame.)42 b(There)31 b(are)g(sp)s(ecial)e(GDB)j(commands)
150 1920 y(to)27 b(select)f(whic)m(hev)m(er)f(frame)h(y)m(ou)g(are)h
(in)m(terested)f(in.)38 b(See)26 b(Section)f(6.3)i([Selecting)f(a)g
(frame],)h(page)g(47.)275 2054 y(When)d(y)m(our)g(program)g(stops,)h
(GDB)h(automatically)e(selects)g(the)h(curren)m(tly)e(executing)h
(frame)h(and)150 2163 y(describ)s(es)36 b(it)h(brie\015y)-8
b(,)38 b(similar)d(to)k(the)e Fo(frame)f Fu(command)i(\(see)g(Section)g
(6.4)g([Information)f(ab)s(out)h(a)150 2273 y(frame],)31
b(page)g(48\).)150 2529 y Fs(6.1)68 b(Stac)l(k)45 b(frames)275
2721 y Fu(The)38 b(call)g(stac)m(k)j(is)d(divided)e(up)i(in)m(to)h(con)
m(tiguous)h(pieces)e(called)h Fn(stac)m(k)h(frames)p
Fu(,)i(or)d Fn(frames)j Fu(for)150 2831 y(short;)32 b(eac)m(h)g(frame)f
(is)g(the)g(data)h(asso)s(ciated)g(with)e(one)h(call)g(to)h(one)g
(function.)42 b(The)31 b(frame)g(con)m(tains)150 2941
y(the)25 b(argumen)m(ts)g(giv)m(en)g(to)h(the)f(function,)g(the)g
(function's)e(lo)s(cal)h(v)-5 b(ariables,)25 b(and)g(the)g(address)f
(at)h(whic)m(h)150 3050 y(the)31 b(function)e(is)g(executing.)275
3184 y(When)g(y)m(our)g(program)g(is)g(started,)h(the)g(stac)m(k)g(has)
g(only)e(one)i(frame,)g(that)g(of)f(the)h(function)e
Fo(main)p Fu(.)150 3294 y(This)34 b(is)g(called)g(the)i
Fn(initial)g Fu(frame)f(or)h(the)f Fn(outermost)j Fu(frame.)56
b(Eac)m(h)35 b(time)g(a)h(function)e(is)h(called,)h(a)150
3403 y(new)e(frame)h(is)f(made.)54 b(Eac)m(h)35 b(time)g(a)g(function)e
(returns,)i(the)g(frame)g(for)f(that)h(function)f(in)m(v)m(o)s(cation)
150 3513 y(is)g(eliminated.)51 b(If)34 b(a)h(function)f(is)f(recursiv)m
(e,)j(there)f(can)g(b)s(e)f(man)m(y)g(frames)h(for)f(the)h(same)g
(function.)150 3623 y(The)29 b(frame)h(for)g(the)g(function)f(in)f
(whic)m(h)h(execution)h(is)f(actually)h(o)s(ccurring)e(is)h(called)g
(the)h Fn(innermost)150 3732 y Fu(frame.)41 b(This)28
b(is)i(the)g(most)h(recen)m(tly)g(created)g(of)g(all)e(the)h(stac)m(k)i
(frames)e(that)h(still)e(exist.)275 3866 y(Inside)43
b(y)m(our)h(program,)49 b(stac)m(k)d(frames)e(are)h(iden)m(ti\014ed)e
(b)m(y)i(their)f(addresses.)83 b(A)45 b(stac)m(k)h(frame)150
3976 y(consists)38 b(of)g(man)m(y)g(b)m(ytes,)j(eac)m(h)e(of)g(whic)m
(h)e(has)g(its)h(o)m(wn)g(address;)k(eac)m(h)d(kind)d(of)j(computer)f
(has)g(a)150 4085 y(con)m(v)m(en)m(tion)29 b(for)f(c)m(ho)s(osing)g
(one)h(b)m(yte)f(whose)g(address)f(serv)m(es)i(as)f(the)h(address)e(of)
h(the)h(frame.)40 b(Usually)150 4195 y(this)32 b(address)g(is)g(k)m
(ept)h(in)f(a)h(register)g(called)f(the)h Fn(frame)g(p)s(oin)m(ter)f
(register)39 b Fu(while)31 b(execution)i(is)f(going)150
4305 y(on)e(in)f(that)i(frame.)275 4439 y(GDB)h(assigns)f(n)m(um)m(b)s
(ers)f(to)j(all)d(existing)h(stac)m(k)i(frames,)f(starting)f(with)g
(zero)h(for)f(the)h(innermost)150 4548 y(frame,)39 b(one)e(for)f(the)h
(frame)g(that)h(called)e(it,)i(and)e(so)h(on)g(up)m(w)m(ard.)59
b(These)37 b(n)m(um)m(b)s(ers)e(do)i(not)g(really)150
4658 y(exist)f(in)e(y)m(our)i(program;)i(they)e(are)g(assigned)f(b)m(y)
h(GDB)g(to)h(giv)m(e)f(y)m(ou)g(a)g(w)m(a)m(y)h(of)f(designating)e
(stac)m(k)150 4768 y(frames)c(in)f(GDB)j(commands.)275
4902 y(Some)g(compilers)f(pro)m(vide)h(a)h(w)m(a)m(y)g(to)g(compile)f
(functions)f(so)i(that)g(they)g(op)s(erate)g(without)e(stac)m(k)150
5011 y(frames.)38 b(\(F)-8 b(or)25 b(example,)g(the)f
Fo(gcc)f Fu(option)g(`)p Fo(-fomit-frame-pointer)p Fu(')c(generates)25
b(functions)d(without)150 5121 y(a)35 b(frame.\))56 b(This)33
b(is)h(o)s(ccasionally)g(done)h(with)f(hea)m(vily)h(used)f(library)f
(functions)g(to)j(sa)m(v)m(e)h(the)e(frame)150 5230 y(setup)f(time.)54
b(GDB)36 b(has)f(limited)d(facilities)i(for)g(dealing)g(with)f(these)j
(function)d(in)m(v)m(o)s(cations.)54 b(If)35 b(the)150
5340 y(innermost)d(function)g(in)m(v)m(o)s(cation)h(has)g(no)h(stac)m
(k)h(frame,)f(GDB)g(nev)m(ertheless)g(regards)f(it)g(as)g(though)p
eop
%%Page: 46 48
46 47 bop 150 -116 a Fu(46)2644 b(Debugging)31 b(with)e(GDB)150
299 y(it)35 b(had)g(a)h(separate)g(frame,)h(whic)m(h)d(is)h(n)m(um)m(b)
s(ered)f(zero)i(as)g(usual,)f(allo)m(wing)f(correct)j(tracing)e(of)h
(the)150 408 y(function)g(call)g(c)m(hain.)59 b(Ho)m(w)m(ev)m(er,)41
b(GDB)d(has)f(no)g(pro)m(vision)e(for)h(frameless)h(functions)e
(elsewhere)h(in)150 518 y(the)31 b(stac)m(k.)150 732
y Fo(frame)e Fn(args)630 842 y Fu(The)f Fo(frame)f Fu(command)h(allo)m
(ws)g(y)m(ou)h(to)g(mo)m(v)m(e)h(from)e(one)h(stac)m(k)h(frame)e(to)h
(another,)h(and)630 951 y(to)d(prin)m(t)e(the)i(stac)m(k)h(frame)e(y)m
(ou)h(select.)40 b Fn(args)30 b Fu(ma)m(y)d(b)s(e)f(either)g(the)g
(address)g(of)g(the)h(frame)630 1061 y(or)38 b(the)g(stac)m(k)i(frame)d
(n)m(um)m(b)s(er.)63 b(Without)38 b(an)f(argumen)m(t,)k
Fo(frame)36 b Fu(prin)m(ts)h(the)h(curren)m(t)630 1170
y(stac)m(k)32 b(frame.)150 1331 y Fo(select-frame)630
1441 y Fu(The)g Fo(select-frame)c Fu(command)k(allo)m(ws)g(y)m(ou)g(to)
h(mo)m(v)m(e)g(from)f(one)g(stac)m(k)i(frame)e(to)h(an-)630
1551 y(other)e(without)e(prin)m(ting)f(the)j(frame.)40
b(This)29 b(is)g(the)i(silen)m(t)e(v)m(ersion)h(of)h
Fo(frame)p Fu(.)150 1812 y Fs(6.2)68 b(Bac)l(ktraces)275
2006 y Fu(A)34 b(bac)m(ktrace)i(is)e(a)g(summary)f(of)i(ho)m(w)f(y)m
(our)g(program)h(got)g(where)f(it)g(is.)51 b(It)35 b(sho)m(ws)f(one)g
(line)f(p)s(er)150 2116 y(frame,)d(for)g(man)m(y)h(frames,)f(starting)g
(with)f(the)h(curren)m(tly)g(executing)g(frame)g(\(frame)h(zero\),)g
(follo)m(w)m(ed)150 2225 y(b)m(y)f(its)g(caller)g(\(frame)g(one\),)i
(and)d(on)i(up)e(the)i(stac)m(k.)150 2439 y Fo(backtrace)150
2549 y(bt)384 b Fu(Prin)m(t)34 b(a)h(bac)m(ktrace)i(of)e(the)g(en)m
(tire)g(stac)m(k:)52 b(one)35 b(line)e(p)s(er)h(frame)h(for)g(all)e
(frames)i(in)f(the)630 2659 y(stac)m(k.)630 2794 y(Y)-8
b(ou)29 b(can)f(stop)h(the)f(bac)m(ktrace)j(at)e(an)m(y)f(time)h(b)m(y)
f(t)m(yping)g(the)g(system)h(in)m(terrupt)d(c)m(harac-)630
2903 y(ter,)31 b(normally)d Fl(C-c)p Fu(.)150 3064 y
Fo(backtrace)g Fn(n)150 3174 y Fo(bt)i Fn(n)303 b Fu(Similar,)28
b(but)h(prin)m(t)g(only)h(the)g(innermost)f Fn(n)h Fu(frames.)150
3335 y Fo(backtrace)e(-)p Fn(n)150 3445 y Fo(bt)i(-)p
Fn(n)255 b Fu(Similar,)28 b(but)h(prin)m(t)g(only)h(the)g(outermost)h
Fn(n)f Fu(frames.)275 3632 y(The)53 b(names)g Fo(where)g
Fu(and)g Fo(info)29 b(stack)52 b Fu(\(abbreviated)h Fo(info)30
b(s)p Fu(\))53 b(are)h(additional)e(aliases)h(for)150
3742 y Fo(backtrace)p Fu(.)275 3878 y(Eac)m(h)24 b(line)e(in)h(the)h
(bac)m(ktrace)i(sho)m(ws)e(the)g(frame)g(n)m(um)m(b)s(er)e(and)h(the)i
(function)d(name.)39 b(The)23 b(program)150 3987 y(coun)m(ter)37
b(v)-5 b(alue)35 b(is)g(also)h(sho)m(wn|unless)e(y)m(ou)i(use)g
Fo(set)29 b(print)g(address)g(off)p Fu(.)56 b(The)36
b(bac)m(ktrace)i(also)150 4097 y(sho)m(ws)29 b(the)h(source)g(\014le)e
(name)i(and)f(line)f(n)m(um)m(b)s(er,)h(as)g(w)m(ell)g(as)h(the)f
(argumen)m(ts)h(to)h(the)e(function.)39 b(The)150 4207
y(program)30 b(coun)m(ter)g(v)-5 b(alue)30 b(is)e(omitted)i(if)f(it)h
(is)f(at)h(the)g(b)s(eginning)d(of)j(the)h(co)s(de)f(for)f(that)i(line)
d(n)m(um)m(b)s(er.)275 4343 y(Here)34 b(is)e(an)h(example)h(of)f(a)h
(bac)m(ktrace.)52 b(It)34 b(w)m(as)f(made)h(with)e(the)i(command)f(`)p
Fo(bt)d(3)p Fu(',)k(so)g(it)f(sho)m(ws)150 4452 y(the)e(innermost)e
(three)h(frames.)390 4582 y Fo(#0)95 b(m4_traceon)45
b(\(obs=0x24eb0,)f(argc=1,)i(argv=0x2b8c8\))581 4686
y(at)h(builtin.c:993)390 4790 y(#1)95 b(0x6e38)46 b(in)h(expand_macro)e
(\(sym=0x2b600\))f(at)j(macro.c:242)390 4894 y(#2)95
b(0x6840)46 b(in)h(expand_token)e(\(obs=0x0,)g(t=177664,)g
(td=0xf7fffb08\))581 4998 y(at)i(macro.c:71)390 5101
y(\(More)f(stack)h(frames)f(follow...\))150 5230 y Fu(The)36
b(displa)m(y)e(for)i(frame)g(zero)h(do)s(es)f(not)g(b)s(egin)f(with)g
(a)h(program)g(coun)m(ter)h(v)-5 b(alue,)37 b(indicating)d(that)150
5340 y(y)m(our)c(program)g(has)h(stopp)s(ed)e(at)i(the)g(b)s(eginning)c
(of)k(the)f(co)s(de)h(for)f(line)f Fo(993)g Fu(of)i Fo(builtin.c)p
Fu(.)p eop
%%Page: 47 49
47 48 bop 150 -116 a Fu(Chapter)30 b(6:)41 b(Examining)28
b(the)j(Stac)m(k)2213 b(47)150 299 y Fs(6.3)68 b(Selecting)46
b(a)f(frame)275 485 y Fu(Most)i(commands)g(for)f(examining)f(the)i
(stac)m(k)h(and)e(other)h(data)h(in)d(y)m(our)i(program)f(w)m(ork)h(on)
150 595 y(whic)m(hev)m(er)40 b(stac)m(k)i(frame)f(is)f(selected)h(at)g
(the)g(momen)m(t.)72 b(Here)41 b(are)h(the)e(commands)h(for)f
(selecting)150 704 y(a)i(stac)m(k)h(frame;)k(all)41 b(of)g(them)h
(\014nish)d(b)m(y)j(prin)m(ting)d(a)j(brief)e(description)g(of)h(the)h
(stac)m(k)h(frame)f(just)150 814 y(selected.)150 998
y Fo(frame)29 b Fn(n)150 1108 y Fo(f)h Fn(n)351 b Fu(Select)44
b(frame)f(n)m(um)m(b)s(er)f Fn(n)p Fu(.)79 b(Recall)43
b(that)h(frame)f(zero)i(is)d(the)i(innermost)e(\(curren)m(tly)630
1218 y(executing\))30 b(frame,)f(frame)h(one)f(is)g(the)g(frame)g(that)
h(called)f(the)g(innermost)f(one,)i(and)f(so)630 1327
y(on.)41 b(The)29 b(highest-n)m(um)m(b)s(ered)g(frame)h(is)g(the)g(one)
h(for)f Fo(main)p Fu(.)150 1474 y Fo(frame)f Fn(addr)150
1584 y Fo(f)h Fn(addr)219 b Fu(Select)30 b(the)g(frame)g(at)h(address)e
Fn(addr)p Fu(.)40 b(This)28 b(is)h(useful)f(mainly)g(if)h(the)i(c)m
(haining)d(of)i(stac)m(k)630 1693 y(frames)37 b(has)f(b)s(een)g
(damaged)i(b)m(y)e(a)i(bug,)g(making)e(it)g(imp)s(ossible)e(for)i(GDB)i
(to)g(assign)630 1803 y(n)m(um)m(b)s(ers)k(prop)s(erly)f(to)j(all)e
(frames.)80 b(In)42 b(addition,)j(this)e(can)g(b)s(e)g(useful)f(when)g
(y)m(our)630 1913 y(program)30 b(has)g(m)m(ultiple)e(stac)m(ks)k(and)e
(switc)m(hes)g(b)s(et)m(w)m(een)h(them.)630 2041 y(On)g(the)h(SP)-8
b(AR)m(C)32 b(arc)m(hitecture,)i Fo(frame)c Fu(needs)i(t)m(w)m(o)h
(addresses)f(to)h(select)f(an)g(arbitrary)630 2150 y(frame:)41
b(a)30 b(frame)h(p)s(oin)m(ter)e(and)h(a)h(stac)m(k)g(p)s(oin)m(ter.)
630 2279 y(On)h(the)i(MIPS)f(and)g(Alpha)f(arc)m(hitecture,)j(it)e
(needs)g(t)m(w)m(o)h(addresses:)46 b(a)34 b(stac)m(k)h(p)s(oin)m(ter)
630 2388 y(and)30 b(a)h(program)f(coun)m(ter.)630 2517
y(On)36 b(the)h(29k)h(arc)m(hitecture,)i(it)c(needs)h(three)g
(addresses:)54 b(a)37 b(register)g(stac)m(k)i(p)s(oin)m(ter,)f(a)630
2626 y(program)30 b(coun)m(ter,)h(and)f(a)h(memory)f(stac)m(k)i(p)s
(oin)m(ter.)150 2773 y Fo(up)e Fn(n)303 b Fu(Mo)m(v)m(e)31
b Fn(n)e Fu(frames)h(up)e(the)i(stac)m(k.)41 b(F)-8 b(or)31
b(p)s(ositiv)m(e)d(n)m(um)m(b)s(ers)g Fn(n)p Fu(,)h(this)g(adv)-5
b(ances)29 b(to)m(w)m(ard)i(the)630 2883 y(outermost)f(frame,)g(to)g
(higher)e(frame)i(n)m(um)m(b)s(ers,)e(to)i(frames)f(that)h(ha)m(v)m(e)h
(existed)e(longer.)630 2992 y Fn(n)h Fu(defaults)f(to)i(one.)150
3139 y Fo(down)e Fn(n)208 b Fu(Mo)m(v)m(e)35 b Fn(n)d
Fu(frames)h(do)m(wn)g(the)g(stac)m(k.)49 b(F)-8 b(or)34
b(p)s(ositiv)m(e)e(n)m(um)m(b)s(ers)g Fn(n)p Fu(,)h(this)f(adv)-5
b(ances)33 b(to)m(w)m(ard)630 3249 y(the)25 b(innermost)f(frame,)i(to)g
(lo)m(w)m(er)f(frame)g(n)m(um)m(b)s(ers,)f(to)i(frames)f(that)g(w)m
(ere)h(created)g(more)630 3359 y(recen)m(tly)-8 b(.)41
b Fn(n)30 b Fu(defaults)g(to)h(one.)41 b(Y)-8 b(ou)31
b(ma)m(y)g(abbreviate)f Fo(down)f Fu(as)i Fo(do)p Fu(.)275
3506 y(All)j(of)h(these)h(commands)f(end)g(b)m(y)g(prin)m(ting)f(t)m(w)
m(o)i(lines)e(of)i(output)f(describing)e(the)j(frame.)55
b(The)150 3615 y(\014rst)35 b(line)f(sho)m(ws)h(the)h(frame)g(n)m(um)m
(b)s(er,)g(the)g(function)e(name,)k(the)d(argumen)m(ts,)j(and)d(the)h
(source)g(\014le)150 3725 y(and)30 b(line)f(n)m(um)m(b)s(er)h(of)h
(execution)g(in)f(that)h(frame.)42 b(The)31 b(second)g(line)e(sho)m(ws)
h(the)h(text)h(of)f(that)h(source)150 3834 y(line.)275
3925 y(F)-8 b(or)31 b(example:)390 4048 y Fo(\(gdb\))46
b(up)390 4152 y(#1)95 b(0x22f0)46 b(in)h(main)g(\(argc=1,)e
(argv=0xf7fffbf4,)f(env=0xf7fffbfc\))581 4255 y(at)j(env.c:10)390
4359 y(10)668 b(read_input_file)43 b(\(argv[i]\);)275
4480 y Fu(After)34 b(suc)m(h)g(a)h(prin)m(tout,)f(the)g
Fo(list)g Fu(command)g(with)f(no)h(argumen)m(ts)g(prin)m(ts)f(ten)h
(lines)f(cen)m(tered)150 4590 y(on)d(the)h(p)s(oin)m(t)e(of)i
(execution)f(in)f(the)i(frame.)41 b(See)30 b(Section)g(7.1)i([Prin)m
(ting)d(source)h(lines],)f(page)i(51.)150 4774 y Fo(up-silently)c
Fn(n)150 4884 y Fo(down-silently)g Fn(n)630 4994 y Fu(These)43
b(t)m(w)m(o)i(commands)f(are)g(v)-5 b(arian)m(ts)43 b(of)h
Fo(up)f Fu(and)g Fo(down)p Fu(,)j(resp)s(ectiv)m(ely;)k(they)44
b(di\013er)630 5103 y(in)33 b(that)h(they)g(do)g(their)f(w)m(ork)h
(silen)m(tly)-8 b(,)34 b(without)f(causing)g(displa)m(y)f(of)i(the)g
(new)g(frame.)630 5213 y(They)22 b(are)i(in)m(tended)d(primarily)f(for)
j(use)f(in)g(GDB)i(command)e(scripts,)i(where)e(the)h(output)630
5322 y(migh)m(t)30 b(b)s(e)g(unnecessary)g(and)f(distracting.)p
eop
%%Page: 48 50
48 49 bop 150 -116 a Fu(48)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fs(6.4)68 b(Information)46 b(ab)t(out)f(a)g(frame)275
494 y Fu(There)29 b(are)i(sev)m(eral)g(other)g(commands)f(to)h(prin)m
(t)e(information)f(ab)s(out)i(the)h(selected)g(stac)m(k)h(frame.)150
657 y Fo(frame)150 767 y(f)432 b Fu(When)27 b(used)f(without)f(an)m(y)j
(argumen)m(t,)g(this)d(command)i(do)s(es)f(not)i(c)m(hange)f(whic)m(h)f
(frame)630 876 y(is)31 b(selected,)h(but)f(prin)m(ts)f(a)i(brief)e
(description)g(of)h(the)h(curren)m(tly)f(selected)h(stac)m(k)h(frame.)
630 986 y(It)f(can)h(b)s(e)f(abbreviated)f Fo(f)p Fu(.)47
b(With)32 b(an)g(argumen)m(t,)h(this)f(command)g(is)f(used)h(to)h
(select)g(a)630 1096 y(stac)m(k)f(frame.)40 b(See)31
b(Section)f(6.3)i([Selecting)e(a)h(frame],)f(page)i(47.)150
1258 y Fo(info)d(frame)150 1367 y(info)g(f)211 b Fu(This)27
b(command)i(prin)m(ts)e(a)j(v)m(erb)s(ose)f(description)e(of)i(the)g
(selected)g(stac)m(k)i(frame,)e(includ-)630 1477 y(ing:)705
1613 y Fq(\017)60 b Fu(the)31 b(address)e(of)i(the)f(frame)705
1748 y Fq(\017)60 b Fu(the)31 b(address)e(of)i(the)f(next)h(frame)f(do)
m(wn)g(\(called)g(b)m(y)g(this)f(frame\))705 1884 y Fq(\017)60
b Fu(the)31 b(address)e(of)i(the)f(next)h(frame)f(up)f(\(caller)h(of)h
(this)e(frame\))705 2020 y Fq(\017)60 b Fu(the)21 b(language)g(in)f
(whic)m(h)g(the)h(source)g(co)s(de)g(corresp)s(onding)e(to)i(this)f
(frame)h(is)f(written)705 2156 y Fq(\017)60 b Fu(the)31
b(address)e(of)i(the)f(frame's)h(argumen)m(ts)705 2292
y Fq(\017)60 b Fu(the)43 b(program)g(coun)m(ter)g(sa)m(v)m(ed)h(in)d
(it)i(\(the)g(address)f(of)h(execution)g(in)f(the)h(caller)810
2401 y(frame\))705 2537 y Fq(\017)60 b Fu(whic)m(h)29
b(registers)h(w)m(ere)h(sa)m(v)m(ed)h(in)d(the)h(frame)630
2699 y(The)21 b(v)m(erb)s(ose)h(description)e(is)h(useful)g(when)f
(something)i(has)g(gone)g(wrong)g(that)g(has)g(made)630
2808 y(the)31 b(stac)m(k)g(format)g(fail)e(to)i(\014t)f(the)h(usual)e
(con)m(v)m(en)m(tions.)150 2970 y Fo(info)g(frame)g Fn(addr)150
3080 y Fo(info)g(f)h Fn(addr)630 3190 y Fu(Prin)m(t)25
b(a)i(v)m(erb)s(ose)g(description)d(of)j(the)f(frame)h(at)g(address)e
Fn(addr)p Fu(,)i(without)e(selecting)h(that)630 3299
y(frame.)40 b(The)28 b(selected)h(frame)g(remains)e(unc)m(hanged)i(b)m
(y)f(this)g(command.)40 b(This)26 b(requires)630 3409
y(the)21 b(same)h(kind)d(of)j(address)e(\(more)i(than)f(one)g(for)g
(some)h(arc)m(hitectures\))g(that)g(y)m(ou)f(sp)s(ecify)630
3518 y(in)29 b(the)i Fo(frame)e Fu(command.)40 b(See)31
b(Section)f(6.3)h([Selecting)f(a)h(frame],)g(page)g(47.)150
3680 y Fo(info)e(args)67 b Fu(Prin)m(t)29 b(the)i(argumen)m(ts)g(of)f
(the)h(selected)g(frame,)f(eac)m(h)i(on)e(a)h(separate)g(line.)150
3842 y Fo(info)e(locals)630 3952 y Fu(Prin)m(t)k(the)g(lo)s(cal)g(v)-5
b(ariables)33 b(of)h(the)f(selected)i(frame,)f(eac)m(h)h(on)f(a)g
(separate)g(line.)49 b(These)630 4061 y(are)31 b(all)e(v)-5
b(ariables)29 b(\(declared)h(either)g(static)h(or)g(automatic\))g
(accessible)g(at)g(the)f(p)s(oin)m(t)g(of)630 4171 y(execution)h(of)f
(the)h(selected)g(frame.)150 4333 y Fo(info)e(catch)630
4443 y Fu(Prin)m(t)37 b(a)h(list)f(of)h(all)f(the)h(exception)g
(handlers)e(that)i(are)h(activ)m(e)g(in)e(the)h(curren)m(t)f(stac)m(k)
630 4552 y(frame)31 b(at)h(the)g(curren)m(t)f(p)s(oin)m(t)f(of)i
(execution.)44 b(T)-8 b(o)31 b(see)h(other)g(exception)f(handlers,)f
(visit)630 4662 y(the)d(asso)s(ciated)f(frame)h(\(using)e(the)h
Fo(up)p Fu(,)h Fo(down)p Fu(,)f(or)h Fo(frame)e Fu(commands\);)j(then)e
(t)m(yp)s(e)g Fo(info)630 4771 y(catch)p Fu(.)39 b(See)31
b(Section)f(5.1.3)i([Setting)f(catc)m(hp)s(oin)m(ts],)g(page)g(32.)150
5035 y Fs(6.5)68 b(MIPS/Alpha)44 b(mac)l(hines)i(and)e(the)i(function)e
(stac)l(k)275 5230 y Fu(Alpha-)20 b(and)g(MIPS-based)h(computers)g(use)
g(an)g(un)m(usual)e(stac)m(k)k(frame,)g(whic)m(h)d(sometimes)h
(requires)150 5340 y(GDB)31 b(to)h(searc)m(h)f(bac)m(kw)m(ard)f(in)f
(the)i(ob)5 b(ject)31 b(co)s(de)g(to)g(\014nd)e(the)h(b)s(eginning)e
(of)j(a)f(function.)p eop
%%Page: 49 51
49 50 bop 150 -116 a Fu(Chapter)30 b(6:)41 b(Examining)28
b(the)j(Stac)m(k)2213 b(49)275 299 y(T)-8 b(o)38 b(impro)m(v)m(e)g
(resp)s(onse)f(time)h(\(esp)s(ecially)f(for)h(em)m(b)s(edded)f
(applications,)i(where)e(GDB)j(ma)m(y)f(b)s(e)150 408
y(restricted)28 b(to)i(a)f(slo)m(w)f(serial)g(line)f(for)i(this)e
(searc)m(h\))j(y)m(ou)f(ma)m(y)g(w)m(an)m(t)h(to)f(limit)e(the)i(size)f
(of)h(this)f(searc)m(h,)150 518 y(using)h(one)i(of)f(these)h(commands:)
150 727 y Fo(set)e(heuristic-fence-post)c Fn(limit)630
837 y Fu(Restrict)31 b(GDB)h(to)g(examining)e(at)i(most)f
Fn(limit)g Fu(b)m(ytes)h(in)d(its)i(searc)m(h)g(for)g(the)h(b)s
(eginning)630 946 y(of)39 b(a)g(function.)66 b(A)39 b(v)-5
b(alue)38 b(of)h Fn(0)47 b Fu(\(the)39 b(default\))g(means)f(there)i
(is)e(no)g(limit.)65 b(Ho)m(w)m(ev)m(er,)630 1056 y(except)32
b(for)e Fn(0)p Fu(,)i(the)f(larger)f(the)h(limit)e(the)i(more)g(b)m
(ytes)g Fo(heuristic-fence-post)25 b Fu(m)m(ust)630 1166
y(searc)m(h)31 b(and)f(therefore)h(the)f(longer)g(it)g(tak)m(es)i(to)f
(run.)150 1325 y Fo(show)e(heuristic-fence-post)630 1435
y Fu(Displa)m(y)h(the)g(curren)m(t)g(limit.)150 1594
y(These)37 b(commands)g(are)h(a)m(v)-5 b(ailable)37 b
Fr(only)46 b Fu(when)37 b(GDB)h(is)f(con\014gured)f(for)i(debugging)e
(programs)h(on)150 1704 y(Alpha)29 b(or)i(MIPS)e(pro)s(cessors.)p
eop
%%Page: 50 52
50 51 bop 150 -116 a Fu(50)2644 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 51 53
51 52 bop 150 -116 a Fu(Chapter)30 b(7:)41 b(Examining)28
b(Source)i(Files)2106 b(51)150 299 y Fp(7)80 b(Examining)55
b(Source)d(Files)275 518 y Fu(GDB)25 b(can)g(prin)m(t)e(parts)h(of)h(y)
m(our)f(program's)g(source,)i(since)e(the)h(debugging)e(information)g
(recorded)150 628 y(in)g(the)h(program)g(tells)f(GDB)j(what)e(source)g
(\014les)f(w)m(ere)i(used)e(to)i(build)c(it.)39 b(When)24
b(y)m(our)g(program)g(stops,)150 737 y(GDB)e(sp)s(on)m(taneously)e
(prin)m(ts)f(the)i(line)e(where)h(it)h(stopp)s(ed.)36
b(Lik)m(ewise,)22 b(when)e(y)m(ou)h(select)h(a)f(stac)m(k)h(frame)150
847 y(\(see)31 b(Section)g(6.3)g([Selecting)f(a)h(frame],)g(page)h
(47\),)f(GDB)h(prin)m(ts)d(the)i(line)e(where)g(execution)i(in)e(that)
150 956 y(frame)h(has)g(stopp)s(ed.)40 b(Y)-8 b(ou)31
b(can)g(prin)m(t)e(other)h(p)s(ortions)f(of)i(source)f(\014les)g(b)m(y)
g(explicit)f(command.)275 1088 y(If)d(y)m(ou)i(use)f(GDB)h(through)e
(its)h Ft(gnu)g Fu(Emacs)g(in)m(terface,)i(y)m(ou)e(ma)m(y)h(prefer)f
(to)g(use)g(Emacs)h(facilities)150 1198 y(to)j(view)f(source;)g(see)h
(Chapter)f(16)h([Using)f(GDB)i(under)d Ft(gnu)h Fu(Emacs],)h(page)g
(147.)150 1446 y Fs(7.1)68 b(Prin)l(ting)46 b(source)f(lines)275
1636 y Fu(T)-8 b(o)26 b(prin)m(t)e(lines)h(from)g(a)h(source)g(\014le,)
g(use)g(the)g Fo(list)f Fu(command)g(\(abbreviated)h
Fo(l)p Fu(\).)39 b(By)27 b(default,)f(ten)150 1745 y(lines)i(are)i
(prin)m(ted.)39 b(There)29 b(are)h(sev)m(eral)g(w)m(a)m(ys)g(to)h(sp)s
(ecify)d(what)i(part)f(of)h(the)g(\014le)e(y)m(ou)i(w)m(an)m(t)h(to)f
(prin)m(t.)275 1877 y(Here)g(are)h(the)g(forms)f(of)g(the)h
Fo(list)e Fu(command)h(most)h(commonly)f(used:)150 2030
y Fo(list)f Fn(linen)m(um)630 2140 y Fu(Prin)m(t)g(lines)g(cen)m(tered)
i(around)f(line)e(n)m(um)m(b)s(er)h Fn(linen)m(um)f Fu(in)h(the)i
(curren)m(t)f(source)h(\014le.)150 2293 y Fo(list)e Fn(function)630
2403 y Fu(Prin)m(t)g(lines)g(cen)m(tered)i(around)f(the)g(b)s(eginning)
e(of)i(function)f Fn(function)p Fu(.)150 2556 y Fo(list)288
b Fu(Prin)m(t)31 b(more)i(lines.)45 b(If)32 b(the)h(last)f(lines)f
(prin)m(ted)g(w)m(ere)i(prin)m(ted)e(with)g(a)i Fo(list)e
Fu(command,)630 2666 y(this)c(prin)m(ts)f(lines)g(follo)m(wing)h(the)h
(last)g(lines)e(prin)m(ted;)h(ho)m(w)m(ev)m(er,)j(if)d(the)h(last)g
(line)e(prin)m(ted)630 2775 y(w)m(as)36 b(a)f(solitary)g(line)e(prin)m
(ted)h(as)h(part)g(of)h(displa)m(ying)c(a)k(stac)m(k)h(frame)e(\(see)h
(Chapter)f(6)630 2885 y([Examining)29 b(the)h(Stac)m(k],)i(page)f
(45\),)h(this)d(prin)m(ts)g(lines)g(cen)m(tered)i(around)e(that)i
(line.)150 3038 y Fo(list)e(-)211 b Fu(Prin)m(t)29 b(lines)g(just)h(b)s
(efore)g(the)g(lines)f(last)h(prin)m(ted.)275 3192 y(By)h(default,)f
(GDB)i(prin)m(ts)d(ten)i(source)g(lines)e(with)h(an)m(y)h(of)g(these)g
(forms)f(of)h(the)g Fo(list)f Fu(command.)150 3301 y(Y)-8
b(ou)31 b(can)g(c)m(hange)g(this)e(using)g Fo(set)h(listsize)p
Fu(:)150 3499 y Fo(set)f(listsize)g Fn(coun)m(t)630 3608
y Fu(Mak)m(e)h(the)f Fo(list)e Fu(command)h(displa)m(y)f
Fn(coun)m(t)k Fu(source)d(lines)f(\(unless)g(the)h Fo(list)f
Fu(argumen)m(t)630 3718 y(explicitly)h(sp)s(eci\014es)h(some)i(other)f
(n)m(um)m(b)s(er\).)150 3871 y Fo(show)f(listsize)630
3981 y Fu(Displa)m(y)h(the)g(n)m(um)m(b)s(er)f(of)i(lines)d(that)j
Fo(list)e Fu(prin)m(ts.)275 4134 y(Rep)s(eating)41 b(a)h
Fo(list)e Fu(command)h(with)1682 4131 y Fj(h)p 1706 4078
151 4 v 1706 4134 a Fi(RET)p 1706 4150 V 1853 4131 a
Fj(i)1924 4134 y Fu(discards)f(the)i(argumen)m(t,)j(so)c(it)h(is)e
(equiv)-5 b(alen)m(t)41 b(to)150 4244 y(t)m(yping)36
b(just)g Fo(list)p Fu(.)59 b(This)35 b(is)h(more)h(useful)e(than)i
(listing)d(the)j(same)g(lines)e(again.)60 b(An)37 b(exception)g(is)150
4354 y(made)24 b(for)g(an)f(argumen)m(t)i(of)f(`)p Fo(-)p
Fu(';)i(that)f(argumen)m(t)f(is)f(preserv)m(ed)h(in)e(rep)s(etition)h
(so)h(that)g(eac)m(h)h(rep)s(etition)150 4463 y(mo)m(v)m(es)32
b(up)d(in)g(the)i(source)f(\014le.)275 4595 y(In)20 b(general,)i(the)f
Fo(list)f Fu(command)h(exp)s(ects)g(y)m(ou)g(to)g(supply)d(zero,)24
b(one)d(or)g(t)m(w)m(o)h Fn(linesp)s(ecs)p Fu(.)35 b(Linesp)s(ecs)150
4704 y(sp)s(ecify)23 b(source)i(lines;)g(there)f(are)h(sev)m(eral)g(w)m
(a)m(ys)g(of)g(writing)e(them)h(but)g(the)g(e\013ect)j(is)c(alw)m(a)m
(ys)i(to)g(sp)s(ecify)150 4814 y(some)31 b(source)f(line.)39
b(Here)31 b(is)f(a)g(complete)h(description)e(of)h(the)h(p)s(ossible)d
(argumen)m(ts)i(for)h Fo(list)p Fu(:)150 4967 y Fo(list)e
Fn(linesp)s(ec)630 5077 y Fu(Prin)m(t)g(lines)g(cen)m(tered)i(around)f
(the)g(line)f(sp)s(eci\014ed)g(b)m(y)h Fn(linesp)s(ec)p
Fu(.)150 5230 y Fo(list)f Fn(\014rst)p Fo(,)p Fn(last)630
5340 y Fu(Prin)m(t)g(lines)g(from)h Fn(\014rst)h Fu(to)h
Fn(last)p Fu(.)40 b(Both)31 b(argumen)m(ts)g(are)g(linesp)s(ecs.)p
eop
%%Page: 52 54
52 53 bop 150 -116 a Fu(52)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(list)g(,)p Fn(last)69 b Fu(Prin)m(t)29 b(lines)g(ending)g
(with)g Fn(last)p Fu(.)150 469 y Fo(list)g Fn(\014rst)p
Fo(,)630 579 y Fu(Prin)m(t)g(lines)g(starting)h(with)f
Fn(\014rst)p Fu(.)150 749 y Fo(list)g(+)211 b Fu(Prin)m(t)29
b(lines)g(just)h(after)h(the)f(lines)f(last)h(prin)m(ted.)150
920 y Fo(list)f(-)211 b Fu(Prin)m(t)29 b(lines)g(just)h(b)s(efore)g
(the)g(lines)f(last)h(prin)m(ted.)150 1090 y Fo(list)288
b Fu(As)30 b(describ)s(ed)f(in)g(the)h(preceding)g(table.)275
1267 y(Here)g(are)h(the)g(w)m(a)m(ys)g(of)g(sp)s(ecifying)d(a)i(single)
g(source)g(line|all)e(the)i(kinds)f(of)h(linesp)s(ec.)150
1443 y Fn(n)m(um)m(b)s(er)178 b Fu(Sp)s(eci\014es)36
b(line)g Fn(n)m(um)m(b)s(er)42 b Fu(of)c(the)g(curren)m(t)f(source)g
(\014le.)62 b(When)37 b(a)h Fo(list)e Fu(command)h(has)630
1552 y(t)m(w)m(o)32 b(linesp)s(ecs,)c(this)i(refers)f(to)j(the)e(same)h
(source)f(\014le)g(as)h(the)f(\014rst)g(linesp)s(ec.)150
1723 y Fo(+)p Fn(o\013set)223 b Fu(Sp)s(eci\014es)21
b(the)j(line)d Fn(o\013set)27 b Fu(lines)21 b(after)j(the)f(last)g
(line)f(prin)m(ted.)37 b(When)23 b(used)f(as)h(the)h(second)630
1832 y(linesp)s(ec)c(in)h(a)i Fo(list)e Fu(command)h(that)h(has)f(t)m
(w)m(o,)j(this)d(sp)s(eci\014es)f(the)h(line)f Fn(o\013set)k
Fu(lines)20 b(do)m(wn)630 1942 y(from)30 b(the)g(\014rst)g(linesp)s
(ec.)150 2112 y Fo(-)p Fn(o\013set)223 b Fu(Sp)s(eci\014es)29
b(the)h(line)f Fn(o\013set)k Fu(lines)c(b)s(efore)h(the)g(last)h(line)d
(prin)m(ted.)150 2283 y Fn(\014lename)5 b Fo(:)p Fn(n)m(um)m(b)s(er)630
2392 y Fu(Sp)s(eci\014es)29 b(line)f Fn(n)m(um)m(b)s(er)36
b Fu(in)29 b(the)i(source)f(\014le)g Fn(\014lename)p
Fu(.)150 2563 y Fn(function)153 b Fu(Sp)s(eci\014es)31
b(the)j(line)d(that)j(b)s(egins)e(the)h(b)s(o)s(dy)f(of)h(the)g
(function)f Fn(function)p Fu(.)48 b(F)-8 b(or)34 b(example:)630
2672 y(in)29 b(C,)h(this)g(is)f(the)i(line)d(with)h(the)i(op)s(en)f
(brace.)150 2843 y Fn(\014lename)5 b Fo(:)p Fn(function)630
2953 y Fu(Sp)s(eci\014es)21 b(the)h(line)f(of)i(the)f(op)s(en-brace)h
(that)g(b)s(egins)e(the)h(b)s(o)s(dy)f(of)i(the)f(function)f
Fn(function)630 3062 y Fu(in)27 b(the)i(\014le)e Fn(\014lename)p
Fu(.)39 b(Y)-8 b(ou)29 b(only)f(need)g(the)g(\014le)g(name)g(with)f(a)i
(function)e(name)h(to)h(a)m(v)m(oid)630 3172 y(am)m(biguit)m(y)h(when)f
(there)i(are)f(iden)m(tically)f(named)h(functions)f(in)g(di\013eren)m
(t)h(source)g(\014les.)150 3342 y Fo(*)p Fn(address)137
b Fu(Sp)s(eci\014es)27 b(the)j(line)d(con)m(taining)i(the)g(program)g
(address)g Fn(address)p Fu(.)39 b Fn(address)32 b Fu(ma)m(y)e(b)s(e)f
(an)m(y)630 3452 y(expression.)150 3737 y Fs(7.2)68 b(Searc)l(hing)45
b(source)g(\014les)275 3941 y Fu(There)d(are)i(t)m(w)m(o)h(commands)e
(for)g(searc)m(hing)g(through)f(the)i(curren)m(t)f(source)h(\014le)e
(for)h(a)h(regular)150 4050 y(expression.)150 4293 y
Fo(forward-search)26 b Fn(regexp)150 4402 y Fo(search)j
Fn(regexp)630 4512 y Fu(The)c(command)g(`)p Fo(forward-search)i
Fn(regexp)s Fu(')e(c)m(hec)m(ks)i(eac)m(h)f(line,)f(starting)g(with)f
(the)i(one)630 4622 y(follo)m(wing)20 b(the)h(last)g(line)e(listed,)j
(for)f(a)g(matc)m(h)h(for)f Fn(regexp)p Fu(.)38 b(It)21
b(lists)f(the)h(line)e(that)j(is)e(found.)630 4731 y(Y)-8
b(ou)27 b(can)g(use)f(the)h(synon)m(ym)f(`)p Fo(search)j
Fn(regexp)s Fu(')d(or)h(abbreviate)f(the)h(command)f(name)h(as)630
4841 y Fo(fo)p Fu(.)150 5011 y Fo(reverse-search)f Fn(regexp)630
5121 y Fu(The)f(command)g(`)p Fo(reverse-search)i Fn(regexp)s
Fu(')e(c)m(hec)m(ks)i(eac)m(h)f(line,)f(starting)g(with)f(the)i(one)630
5230 y(b)s(efore)33 b(the)g(last)f(line)g(listed)f(and)h(going)h(bac)m
(kw)m(ard,)h(for)f(a)g(matc)m(h)h(for)f Fn(regexp)p Fu(.)48
b(It)33 b(lists)630 5340 y(the)e(line)d(that)j(is)f(found.)39
b(Y)-8 b(ou)31 b(can)g(abbreviate)f(this)f(command)h(as)h
Fo(rev)p Fu(.)p eop
%%Page: 53 55
53 54 bop 150 -116 a Fu(Chapter)30 b(7:)41 b(Examining)28
b(Source)i(Files)2106 b(53)150 299 y Fs(7.3)68 b(Sp)t(ecifying)45
b(source)g(directories)275 490 y Fu(Executable)38 b(programs)g
(sometimes)h(do)f(not)h(record)g(the)f(directories)g(of)g(the)h(source)
g(\014les)e(from)150 600 y(whic)m(h)f(they)h(w)m(ere)h(compiled,)f
(just)g(the)g(names.)61 b(Ev)m(en)37 b(when)g(they)g(do,)i(the)e
(directories)f(could)h(b)s(e)150 709 y(mo)m(v)m(ed)c(b)s(et)m(w)m(een)f
(the)g(compilation)e(and)h(y)m(our)h(debugging)f(session.)43
b(GDB)33 b(has)f(a)g(list)e(of)i(directories)150 819
y(to)38 b(searc)m(h)g(for)f(source)h(\014les;)h(this)e(is)f(called)h
(the)g Fn(source)g(path)p Fu(.)62 b(Eac)m(h)38 b(time)f(GDB)h(w)m(an)m
(ts)g(a)g(source)150 928 y(\014le,)d(it)f(tries)g(all)g(the)g
(directories)g(in)f(the)i(list,)f(in)g(the)h(order)f(they)g(are)h
(presen)m(t)g(in)e(the)i(list,)g(un)m(til)d(it)150 1038
y(\014nds)26 b(a)h(\014le)g(with)f(the)h(desired)f(name.)40
b(Note)28 b(that)g(the)g(executable)g(searc)m(h)f(path)h(is)e
Fr(not)36 b Fu(used)27 b(for)g(this)150 1148 y(purp)s(ose.)62
b(Neither)37 b(is)g(the)h(curren)m(t)g(w)m(orking)f(directory)-8
b(,)40 b(unless)d(it)g(happ)s(ens)f(to)j(b)s(e)e(in)g(the)h(source)150
1257 y(path.)275 1390 y(If)33 b(GDB)i(cannot)g(\014nd)d(a)i(source)g
(\014le)f(in)g(the)h(source)g(path,)h(and)e(the)h(ob)5
b(ject)35 b(program)f(records)g(a)150 1500 y(directory)-8
b(,)29 b(GDB)h(tries)f(that)g(directory)g(to)s(o.)41
b(If)28 b(the)h(source)h(path)e(is)g(empt)m(y)-8 b(,)31
b(and)d(there)h(is)f(no)h(record)150 1609 y(of)i(the)f(compilation)f
(directory)-8 b(,)31 b(GDB)g(lo)s(oks)f(in)f(the)i(curren)m(t)f
(directory)g(as)g(a)h(last)f(resort.)275 1742 y(Whenev)m(er)38
b(y)m(ou)g(reset)g(or)f(rearrange)h(the)g(source)g(path,)h(GDB)f
(clears)g(out)g(an)m(y)g(information)d(it)150 1852 y(has)30
b(cac)m(hed)i(ab)s(out)e(where)g(source)g(\014les)f(are)i(found)e(and)h
(where)g(eac)m(h)h(line)e(is)h(in)f(the)h(\014le.)275
1985 y(When)45 b(y)m(ou)h(start)g(GDB,)h(its)e(source)h(path)f(is)g
(empt)m(y)-8 b(.)88 b(T)-8 b(o)46 b(add)f(other)h(directories,)i(use)e
(the)150 2094 y Fo(directory)28 b Fu(command.)150 2251
y Fo(directory)g Fn(dirname)34 b Fo(...)150 2384 y(dir)29
b Fn(dirname)34 b Fo(...)630 2493 y Fu(Add)25 b(directory)h
Fn(dirname)j Fu(to)e(the)f(fron)m(t)g(of)g(the)g(source)h(path.)39
b(Sev)m(eral)26 b(directory)f(names)630 2603 y(ma)m(y)e(b)s(e)g(giv)m
(en)f(to)i(this)e(command,)i(separated)f(b)m(y)g(`)p
Fo(:)p Fu(')g(or)g(whitespace.)38 b(Y)-8 b(ou)23 b(ma)m(y)g(sp)s(ecify)
630 2713 y(a)34 b(directory)g(that)h(is)e(already)h(in)e(the)j(source)f
(path;)i(this)d(mo)m(v)m(es)i(it)f(forw)m(ard,)g(so)h(GDB)630
2822 y(searc)m(hes)c(it)f(so)s(oner.)630 2955 y(Y)-8
b(ou)35 b(can)g(use)f(the)h(string)e(`)p Fo($cdir)p Fu(')h(to)h(refer)f
(to)h(the)g(compilation)e(directory)h(\(if)g(one)h(is)630
3065 y(recorded\),)j(and)e(`)p Fo($cwd)p Fu(')f(to)i(refer)f(to)h(the)g
(curren)m(t)f(w)m(orking)f(directory)-8 b(.)59 b(`)p
Fo($cwd)p Fu(')35 b(is)h(not)630 3174 y(the)31 b(same)h(as)f(`)p
Fo(.)p Fu('|the)g(former)g(trac)m(ks)h(the)f(curren)m(t)f(w)m(orking)h
(directory)f(as)h(it)g(c)m(hanges)630 3284 y(during)43
b(y)m(our)j(GDB)g(session,)j(while)43 b(the)j(latter)g(is)e
(immediately)g(expanded)h(to)h(the)630 3394 y(curren)m(t)30
b(directory)g(at)h(the)g(time)f(y)m(ou)g(add)g(an)h(en)m(try)f(to)h
(the)g(source)f(path.)150 3550 y Fo(directory)630 3660
y Fu(Reset)h(the)g(source)f(path)g(to)i(empt)m(y)e(again.)41
b(This)29 b(requires)g(con\014rmation.)150 3816 y Fo(show)g
(directories)630 3926 y Fu(Prin)m(t)g(the)i(source)f(path:)41
b(sho)m(w)30 b(whic)m(h)f(directories)h(it)g(con)m(tains.)275
4082 y(If)d(y)m(our)g(source)h(path)f(is)g(cluttered)g(with)f
(directories)h(that)h(are)g(no)f(longer)g(of)h(in)m(terest,)h(GDB)f(ma)
m(y)150 4192 y(sometimes)38 b(cause)g(confusion)e(b)m(y)i(\014nding)d
(the)j(wrong)g(v)m(ersions)f(of)h(source.)63 b(Y)-8 b(ou)38
b(can)g(correct)h(the)150 4301 y(situation)29 b(as)i(follo)m(ws:)199
4434 y(1.)61 b(Use)31 b Fo(directory)d Fu(with)h(no)h(argumen)m(t)h(to)
g(reset)g(the)f(source)h(path)f(to)h(empt)m(y)-8 b(.)199
4567 y(2.)61 b(Use)40 b Fo(directory)d Fu(with)i(suitable)f(argumen)m
(ts)i(to)h(reinstall)d(the)i(directories)e(y)m(ou)j(w)m(an)m(t)f(in)f
(the)330 4677 y(source)31 b(path.)40 b(Y)-8 b(ou)31 b(can)g(add)e(all)h
(the)g(directories)g(in)f(one)h(command.)150 4930 y Fs(7.4)68
b(Source)45 b(and)f(mac)l(hine)i(co)t(de)275 5121 y Fu(Y)-8
b(ou)38 b(can)g(use)f(the)h(command)f Fo(info)29 b(line)37
b Fu(to)h(map)g(source)f(lines)f(to)j(program)e(addresses)g(\(and)150
5230 y(vice)j(v)m(ersa\),)45 b(and)40 b(the)g(command)h
Fo(disassemble)c Fu(to)k(displa)m(y)e(a)i(range)g(of)g(addresses)e(as)i
(mac)m(hine)150 5340 y(instructions.)g(When)31 b(run)f(under)f
Ft(gnu)i Fu(Emacs)g(mo)s(de,)h(the)f Fo(info)e(line)h
Fu(command)h(no)m(w)g(causes)h(the)p eop
%%Page: 54 56
54 55 bop 150 -116 a Fu(54)2644 b(Debugging)31 b(with)e(GDB)150
299 y(arro)m(w)k(to)h(p)s(oin)m(t)e(to)h(the)g(line)f(sp)s(eci\014ed.)
46 b(Also,)34 b Fo(info)29 b(line)j Fu(prin)m(ts)f(addresses)h(in)g
(sym)m(b)s(olic)f(form)i(as)150 408 y(w)m(ell)c(as)i(hex.)150
587 y Fo(info)e(line)g Fn(linesp)s(ec)630 697 y Fu(Prin)m(t)38
b(the)h(starting)g(and)g(ending)e(addresses)i(of)g(the)h(compiled)d(co)
s(de)i(for)g(source)h(line)630 807 y Fn(linesp)s(ec)p
Fu(.)62 b(Y)-8 b(ou)39 b(can)f(sp)s(ecify)f(source)h(lines)f(in)f(an)m
(y)j(of)f(the)g(w)m(a)m(ys)h(understo)s(o)s(d)e(b)m(y)h(the)630
916 y Fo(list)29 b Fu(command)h(\(see)i(Section)e(7.1)h([Prin)m(ting)e
(source)i(lines],)e(page)i(51\).)275 1060 y(F)-8 b(or)35
b(example,)g(w)m(e)g(can)f(use)g Fo(info)c(line)j Fu(to)i(disco)m(v)m
(er)f(the)h(lo)s(cation)f(of)g(the)h(ob)5 b(ject)35 b(co)s(de)g(for)f
(the)150 1170 y(\014rst)c(line)e(of)j(function)e Fo(m4_changequote)p
Fu(:)390 1291 y Fo(\(gdb\))46 b(info)h(line)g(m4_changecom)390
1395 y(Line)g(895)g(of)g("builtin.c")d(starts)j(at)g(pc)g(0x634c)f(and)
h(ends)g(at)g(0x6350.)150 1522 y Fu(W)-8 b(e)35 b(can)g(also)e(inquire)
f(\(using)h Fo(*)p Fn(addr)39 b Fu(as)34 b(the)g(form)g(for)g
Fn(linesp)s(ec)6 b Fu(\))32 b(what)i(source)g(line)e(co)m(v)m(ers)k(a)e
(par-)150 1631 y(ticular)29 b(address:)390 1752 y Fo(\(gdb\))46
b(info)h(line)g(*0x63ff)390 1856 y(Line)g(926)g(of)g("builtin.c")d
(starts)j(at)g(pc)g(0x63e4)f(and)h(ends)g(at)g(0x6404.)275
1983 y Fu(After)c Fo(info)30 b(line)p Fu(,)46 b(the)e(default)f
(address)f(for)i(the)g Fo(x)f Fu(command)h(is)e(c)m(hanged)j(to)f(the)g
(starting)150 2093 y(address)39 b(of)h(the)g(line,)h(so)f(that)h(`)p
Fo(x/i)p Fu(')e(is)g(su\016cien)m(t)h(to)g(b)s(egin)f(examining)f(the)i
(mac)m(hine)g(co)s(de)g(\(see)150 2202 y(Section)33 b(8.5)h([Examining)
d(memory],)j(page)f(59\).)50 b(Also,)33 b(this)f(address)g(is)g(sa)m(v)
m(ed)i(as)f(the)g(v)-5 b(alue)33 b(of)g(the)150 2312
y(con)m(v)m(enience)e(v)-5 b(ariable)30 b Fo($_)f Fu(\(see)j(Section)e
(8.9)h([Con)m(v)m(enience)g(v)-5 b(ariables],)30 b(page)h(67\).)150
2491 y Fo(disassemble)630 2600 y Fu(This)f(sp)s(ecialized)g(command)i
(dumps)e(a)i(range)g(of)g(memory)g(as)g(mac)m(hine)g(instructions.)630
2710 y(The)e(default)f(memory)h(range)h(is)e(the)i(function)e
(surrounding)d(the)31 b(program)f(coun)m(ter)h(of)630
2820 y(the)j(selected)g(frame.)51 b(A)33 b(single)g(argumen)m(t)h(to)g
(this)f(command)g(is)g(a)h(program)f(coun)m(ter)630 2929
y(v)-5 b(alue;)26 b(GDB)g(dumps)c(the)j(function)e(surrounding)e(this)j
(v)-5 b(alue.)38 b(Tw)m(o)25 b(argumen)m(ts)f(sp)s(ecify)630
3039 y(a)31 b(range)f(of)h(addresses)f(\(\014rst)g(inclusiv)m(e,)e
(second)j(exclusiv)m(e\))f(to)h(dump.)275 3183 y(The)k(follo)m(wing)f
(example)i(sho)m(ws)f(the)h(disassem)m(bly)e(of)i(a)g(range)g(of)g
(addresses)g(of)g(HP)f(P)-8 b(A-RISC)150 3293 y(2.0)31
b(co)s(de:)390 3414 y Fo(\(gdb\))46 b(disas)h(0x32c4)f(0x32e4)390
3518 y(Dump)h(of)g(assembler)e(code)i(from)f(0x32c4)g(to)i(0x32e4:)390
3621 y(0x32c4)e(<main+204>:)283 b(addil)47 b(0,dp)390
3725 y(0x32c8)f(<main+208>:)283 b(ldw)47 b(0x22c\(sr0,r1\),r26)390
3829 y(0x32cc)f(<main+212>:)283 b(ldil)47 b(0x3000,r31)390
3933 y(0x32d0)f(<main+216>:)283 b(ble)47 b(0x3f8\(sr4,r31\))390
4036 y(0x32d4)f(<main+220>:)283 b(ldo)47 b(0\(r31\),rp)390
4140 y(0x32d8)f(<main+224>:)283 b(addil)47 b(-0x800,dp)390
4244 y(0x32dc)f(<main+228>:)283 b(ldo)47 b(0x588\(r1\),r26)390
4348 y(0x32e0)f(<main+232>:)283 b(ldil)47 b(0x3000,r31)390
4452 y(End)g(of)g(assembler)e(dump.)275 4578 y Fu(Some)28
b(arc)m(hitectures)h(ha)m(v)m(e)g(more)g(than)f(one)g(commonly-used)f
(set)i(of)g(instruction)d(mnemonics)h(or)150 4688 y(other)k(syn)m(tax.)
150 4867 y Fo(set)e(assembly-language)d Fn(instruction-set)630
4977 y Fu(Select)51 b(the)h(instruction)d(set)i(to)h(use)f(when)f
(disassem)m(bling)e(the)j(program)g(via)g(the)630 5086
y Fo(disassemble)27 b Fu(or)k Fo(x/i)e Fu(commands.)630
5213 y(Curren)m(tly)k(this)g(command)h(is)g(only)g(de\014ned)f(for)h
(the)h(In)m(tel)f(x86)i(family)-8 b(.)52 b(Y)-8 b(ou)35
b(can)f(set)630 5323 y Fn(instruction-set)d Fu(to)g(either)f
Fo(i386)f Fu(or)i Fo(i8086)p Fu(.)39 b(The)30 b(default)f(is)h
Fo(i386)p Fu(.)p eop
%%Page: 55 57
55 56 bop 150 -116 a Fu(Chapter)30 b(8:)41 b(Examining)28
b(Data)2392 b(55)150 299 y Fp(8)80 b(Examining)55 b(Data)275
544 y Fu(The)20 b(usual)g(w)m(a)m(y)j(to)f(examine)f(data)h(in)e(y)m
(our)h(program)g(is)g(with)f(the)h Fo(print)f Fu(command)h
(\(abbreviated)150 653 y Fo(p)p Fu(\),)47 b(or)c(its)g(synon)m(ym)g
Fo(inspect)p Fu(.)78 b(It)43 b(ev)-5 b(aluates)44 b(and)f(prin)m(ts)f
(the)h(v)-5 b(alue)43 b(of)h(an)f(expression)f(of)i(the)150
763 y(language)27 b(y)m(our)g(program)g(is)f(written)g(in)f(\(see)j
(Chapter)e(9)h([Using)g(GDB)h(with)d(Di\013eren)m(t)j(Languages],)150
872 y(page)j(71\).)150 1037 y Fo(print)e Fn(exp)150 1147
y Fo(print)g(/)p Fn(f)47 b(exp)630 1256 y(exp)39 b Fu(is)c(an)g
(expression)g(\(in)g(the)h(source)h(language\).)58 b(By)36
b(default)f(the)i(v)-5 b(alue)35 b(of)h Fn(exp)j Fu(is)630
1366 y(prin)m(ted)26 b(in)g(a)i(format)g(appropriate)f(to)h(its)f(data)
h(t)m(yp)s(e;)h(y)m(ou)f(can)f(c)m(ho)s(ose)i(a)f(di\013eren)m(t)f
(for-)630 1475 y(mat)h(b)m(y)f(sp)s(ecifying)e(`)p Fo(/)p
Fn(f)17 b Fu(',)28 b(where)f Fn(f)44 b Fu(is)26 b(a)i(letter)f(sp)s
(ecifying)e(the)i(format;)i(see)f(Section)f(8.4)630 1585
y([Output)i(formats],)j(page)f(58.)150 1748 y Fo(print)150
1857 y(print)e(/)p Fn(f)135 b Fu(If)27 b(y)m(ou)i(omit)e
Fn(exp)p Fu(,)i(GDB)g(displa)m(ys)d(the)i(last)g(v)-5
b(alue)27 b(again)h(\(from)g(the)g Fn(v)-5 b(alue)28
b(history)8 b Fu(;)27 b(see)630 1967 y(Section)34 b(8.8)i([V)-8
b(alue)34 b(history],)h(page)g(66\).)54 b(This)32 b(allo)m(ws)i(y)m(ou)
g(to)i(con)m(v)m(enien)m(tly)e(insp)s(ect)630 2077 y(the)d(same)f(v)-5
b(alue)30 b(in)f(an)i(alternativ)m(e)f(format.)275 2241
y(A)35 b(more)h(lo)m(w-lev)m(el)g(w)m(a)m(y)g(of)g(examining)e(data)j
(is)e(with)f(the)i Fo(x)f Fu(command.)57 b(It)36 b(examines)f(data)h
(in)150 2351 y(memory)22 b(at)h(a)g(sp)s(eci\014ed)d(address)i(and)f
(prin)m(ts)g(it)h(in)e(a)j(sp)s(eci\014ed)e(format.)38
b(See)22 b(Section)g(8.5)i([Examining)150 2460 y(memory],)31
b(page)g(59.)275 2598 y(If)40 b(y)m(ou)h(are)g(in)m(terested)f(in)g
(information)f(ab)s(out)h(t)m(yp)s(es,)k(or)c(ab)s(out)h(ho)m(w)f(the)h
(\014elds)e(of)i(a)g(struct)150 2708 y(or)h(class)f(are)i(declared,)h
(use)e(the)g Fo(ptype)29 b Fn(exp)44 b Fu(command)e(rather)f(than)h
Fo(print)p Fu(.)74 b(See)42 b(Chapter)f(10)150 2818 y([Examining)29
b(the)h(Sym)m(b)s(ol)f(T)-8 b(able],)30 b(page)i(93.)150
3084 y Fs(8.1)68 b(Expressions)275 3280 y Fo(print)21
b Fu(and)h(man)m(y)h(other)g(GDB)g(commands)g(accept)h(an)f(expression)
e(and)h(compute)h(its)f(v)-5 b(alue.)38 b(An)m(y)150
3389 y(kind)30 b(of)h(constan)m(t,)i(v)-5 b(ariable)31
b(or)g(op)s(erator)h(de\014ned)e(b)m(y)h(the)h(programming)e(language)i
(y)m(ou)g(are)f(using)150 3499 y(is)25 b(v)-5 b(alid)25
b(in)g(an)h(expression)f(in)h(GDB.)h(This)e(includes)f(conditional)g
(expressions,)i(function)g(calls,)g(casts)150 3609 y(and)37
b(string)g(constan)m(ts.)64 b(It)38 b(unfortunately)f(do)s(es)g(not)h
(include)e(sym)m(b)s(ols)g(de\014ned)h(b)m(y)h(prepro)s(cessor)150
3718 y Fo(#define)28 b Fu(commands.)275 3856 y(GDB)42
b(no)m(w)f(supp)s(orts)f(arra)m(y)i(constan)m(ts)g(in)f(expressions)f
(input)f(b)m(y)i(the)h(user.)73 b(The)41 b(syn)m(tax)h(is)150
3966 y Fo({)p Fn(elemen)m(t,)36 b(elemen)m(t)6 b(.)23
b(.)f(.)11 b Fo(})p Fu(.)54 b(F)-8 b(or)36 b(example,)g(y)m(ou)f(can)g
(no)m(w)g(use)g(the)g(command)g Fo(print)29 b({1,)g(2,)h(3})k
Fu(to)150 4075 y(build)27 b(up)j(an)g(arra)m(y)h(in)e(memory)h(that)h
(is)e(mallo)s(c'd)h(in)f(the)h(target)i(program.)275
4213 y(Because)h(C)f(is)g(so)g(widespread,)g(most)g(of)h(the)f
(expressions)f(sho)m(wn)h(in)f(examples)h(in)f(this)h(man)m(ual)150
4323 y(are)k(in)e(C.)h(See)g(Chapter)g(9)h([Using)f(GDB)h(with)e
(Di\013eren)m(t)i(Languages],)i(page)e(71,)i(for)d(information)150
4433 y(on)30 b(ho)m(w)h(to)g(use)f(expressions)f(in)g(other)i
(languages.)275 4571 y(In)f(this)g(section,)i(w)m(e)g(discuss)d(op)s
(erators)j(that)g(y)m(ou)f(can)h(use)f(in)f(GDB)i(expressions)e
(regardless)h(of)150 4680 y(y)m(our)f(programming)f(language.)275
4818 y(Casts)40 b(are)h(supp)s(orted)d(in)h(all)g(languages,)44
b(not)c(just)g(in)f(C,)h(b)s(ecause)h(it)f(is)f(so)i(useful)d(to)j
(cast)h(a)150 4928 y(n)m(um)m(b)s(er)29 b(in)m(to)h(a)h(p)s(oin)m(ter)f
(in)f(order)g(to)j(examine)e(a)g(structure)g(at)h(that)g(address)f(in)f
(memory)-8 b(.)275 5066 y(GDB)26 b(supp)s(orts)e(these)i(op)s(erators,)
h(in)d(addition)g(to)i(those)g(common)g(to)g(programming)e(languages:)
150 5230 y Fo(@)432 b Fu(`)p Fo(@)p Fu(')29 b(is)g(a)g(binary)f(op)s
(erator)h(for)g(treating)h(parts)f(of)g(memory)g(as)h(arra)m(ys.)40
b(See)30 b(Section)f(8.3)630 5340 y([Arti\014cial)g(arra)m(ys],)i(page)
g(57,)h(for)e(more)g(information.)p eop
%%Page: 56 58
56 57 bop 150 -116 a Fu(56)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(::)384 b Fu(`)p Fo(::)p Fu(')32 b(allo)m(ws)f(y)m(ou)h(to)h
(sp)s(ecify)d(a)j(v)-5 b(ariable)30 b(in)h(terms)h(of)g(the)g(\014le)f
(or)h(function)e(where)h(it)h(is)630 408 y(de\014ned.)39
b(See)31 b(Section)f(8.2)i([Program)f(v)-5 b(ariables],)29
b(page)i(56.)150 573 y Fo({)p Fn(t)m(yp)s(e)5 b Fo(})30
b Fn(addr)630 683 y Fu(Refers)h(to)h(an)f(ob)5 b(ject)32
b(of)g(t)m(yp)s(e)f Fn(t)m(yp)s(e)37 b Fu(stored)31 b(at)h(address)e
Fn(addr)37 b Fu(in)30 b(memory)-8 b(.)44 b Fn(addr)36
b Fu(ma)m(y)630 793 y(b)s(e)k(an)m(y)i(expression)e(whose)g(v)-5
b(alue)41 b(is)f(an)h(in)m(teger)g(or)g(p)s(oin)m(ter)g(\(but)f(paren)m
(theses)i(are)630 902 y(required)30 b(around)h(binary)e(op)s(erators,)k
(just)e(as)h(in)e(a)i(cast\).)46 b(This)30 b(construct)i(is)f(allo)m(w)
m(ed)630 1012 y(regardless)f(of)g(what)h(kind)d(of)j(data)g(is)e
(normally)g(supp)s(osed)f(to)j(reside)f(at)h Fn(addr)p
Fu(.)150 1283 y Fs(8.2)68 b(Program)46 b(v)-7 b(ariables)275
1481 y Fu(The)29 b(most)i(common)g(kind)d(of)j(expression)e(to)i(use)f
(is)g(the)g(name)h(of)f(a)h(v)-5 b(ariable)29 b(in)g(y)m(our)h
(program.)275 1621 y(V)-8 b(ariables)43 b(in)g(expressions)g(are)i
(understo)s(o)s(d)d(in)h(the)i(selected)f(stac)m(k)i(frame)e(\(see)i
(Section)e(6.3)150 1731 y([Selecting)30 b(a)h(frame],)g(page)g(47\);)h
(they)e(m)m(ust)g(b)s(e)g(either:)225 1871 y Fq(\017)60
b Fu(global)30 b(\(or)g(\014le-static\))150 2039 y(or)225
2179 y Fq(\017)60 b Fu(visible)37 b(according)i(to)h(the)g(scop)s(e)f
(rules)f(of)i(the)f(programming)f(language)i(from)f(the)g(p)s(oin)m(t)g
(of)330 2289 y(execution)31 b(in)e(that)i(frame)150 2456
y(This)e(means)h(that)h(in)e(the)h(function)390 2591
y Fo(foo)47 b(\(a\))629 2695 y(int)g(a;)390 2798 y({)485
2902 y(bar)g(\(a\);)485 3006 y({)581 3110 y(int)g(b)g(=)h(test)e(\(\);)
581 3213 y(bar)h(\(b\);)485 3317 y(})390 3421 y(})150
3561 y Fu(y)m(ou)39 b(can)g(examine)g(and)f(use)g(the)h(v)-5
b(ariable)38 b Fo(a)h Fu(whenev)m(er)f(y)m(our)h(program)g(is)e
(executing)i(within)e(the)150 3671 y(function)20 b Fo(foo)p
Fu(,)j(but)e(y)m(ou)h(can)g(only)f(use)h(or)g(examine)f(the)h(v)-5
b(ariable)21 b Fo(b)g Fu(while)f(y)m(our)h(program)h(is)f(executing)150
3780 y(inside)28 b(the)j(blo)s(c)m(k)f(where)f Fo(b)h
Fu(is)g(declared.)275 3920 y(There)36 b(is)f(an)i(exception:)53
b(y)m(ou)37 b(can)g(refer)f(to)h(a)g(v)-5 b(ariable)36
b(or)g(function)g(whose)g(scop)s(e)h(is)e(a)i(single)150
4030 y(source)c(\014le)f(ev)m(en)i(if)e(the)i(curren)m(t)e(execution)i
(p)s(oin)m(t)e(is)g(not)h(in)f(this)g(\014le.)48 b(But)33
b(it)g(is)f(p)s(ossible)f(to)j(ha)m(v)m(e)150 4140 y(more)g(than)f(one)
h(suc)m(h)f(v)-5 b(ariable)32 b(or)i(function)e(with)g(the)i(same)g
(name)g(\(in)e(di\013eren)m(t)h(source)h(\014les\).)49
b(If)150 4249 y(that)27 b(happ)s(ens,)g(referring)e(to)j(that)f(name)g
(has)g(unpredictable)d(e\013ects.)41 b(If)27 b(y)m(ou)g(wish,)f(y)m(ou)
h(can)g(sp)s(ecify)150 4359 y(a)k(static)g(v)-5 b(ariable)29
b(in)g(a)i(particular)d(function)h(or)i(\014le,)f(using)e(the)j
(colon-colon)g(notation:)390 4493 y Fn(\014le)5 b Fo(::)p
Fn(v)-5 b(ariable)390 4597 y(function)p Fo(::)p Fn(v)g(ariable)150
4737 y Fu(Here)35 b Fn(\014le)k Fu(or)c Fn(function)f
Fu(is)g(the)h(name)g(of)g(the)g(con)m(text)i(for)d(the)h(static)h
Fn(v)-5 b(ariable)p Fu(.)53 b(In)34 b(the)h(case)h(of)f(\014le)150
4846 y(names,)i(y)m(ou)f(can)g(use)f(quotes)h(to)g(mak)m(e)h(sure)e
(GDB)h(parses)g(the)f(\014le)g(name)h(as)f(a)h(single)f(w)m(ord|for)150
4956 y(example,)30 b(to)h(prin)m(t)e(a)i(global)f(v)-5
b(alue)30 b(of)g Fo(x)g Fu(de\014ned)f(in)g(`)p Fo(f2.c)p
Fu(':)390 5090 y Fo(\(gdb\))46 b(p)i('f2.c'::x)275 5230
y Fu(This)29 b(use)i(of)g(`)p Fo(::)p Fu(')g(is)g(v)m(ery)g(rarely)g
(in)f(con\015ict)h(with)f(the)h(v)m(ery)h(similar)c(use)j(of)h(the)f
(same)h(notation)150 5340 y(in)d(C)p Fo(++)p Fu(.)40
b(GDB)31 b(also)g(supp)s(orts)d(use)i(of)h(the)f(C)p
Fo(++)g Fu(scop)s(e)g(resolution)f(op)s(erator)i(in)e(GDB)i
(expressions.)p eop
%%Page: 57 59
57 58 bop 150 -116 a Fu(Chapter)30 b(8:)41 b(Examining)28
b(Data)2392 b(57)390 299 y Fr(Warning:)57 b Fu(Occasionally)-8
b(,)37 b(a)g(lo)s(cal)e(v)-5 b(ariable)35 b(ma)m(y)h(app)s(ear)g(to)g
(ha)m(v)m(e)i(the)e(wrong)f(v)-5 b(alue)390 403 y(at)28
b(certain)f(p)s(oin)m(ts)f(in)g(a)i(function|just)e(after)h(en)m(try)h
(to)g(a)g(new)f(scop)s(e,)h(and)f(just)f(b)s(efore)390
506 y(exit.)275 645 y(Y)-8 b(ou)44 b(ma)m(y)h(see)g(this)e(problem)f
(when)h(y)m(ou)i(are)f(stepping)f(b)m(y)h(mac)m(hine)g(instructions.)80
b(This)42 b(is)150 755 y(b)s(ecause,)i(on)d(most)g(mac)m(hines,)i(it)e
(tak)m(es)h(more)f(than)g(one)g(instruction)e(to)j(set)f(up)f(a)i(stac)
m(k)g(frame)150 864 y(\(including)27 b(lo)s(cal)i(v)-5
b(ariable)28 b(de\014nitions\);)g(if)h(y)m(ou)h(are)g(stepping)e(b)m(y)
i(mac)m(hine)f(instructions,)f(v)-5 b(ariables)150 974
y(ma)m(y)31 b(app)s(ear)f(to)i(ha)m(v)m(e)f(the)g(wrong)f(v)-5
b(alues)30 b(un)m(til)f(the)i(stac)m(k)h(frame)f(is)e(completely)i
(built.)39 b(On)30 b(exit,)g(it)150 1083 y(usually)j(also)j(tak)m(es)h
(more)f(than)f(one)h(mac)m(hine)f(instruction)f(to)i(destro)m(y)g(a)g
(stac)m(k)h(frame;)h(after)f(y)m(ou)150 1193 y(b)s(egin)29
b(stepping)g(through)h(that)h(group)f(of)g(instructions,)f(lo)s(cal)g
(v)-5 b(ariable)29 b(de\014nitions)f(ma)m(y)j(b)s(e)f(gone.)275
1332 y(This)h(ma)m(y)j(also)f(happ)s(en)e(when)i(the)g(compiler)f(do)s
(es)h(signi\014can)m(t)f(optimizations.)48 b(T)-8 b(o)34
b(b)s(e)e(sure)h(of)150 1441 y(alw)m(a)m(ys)e(seeing)f(accurate)i(v)-5
b(alues,)30 b(turn)f(o\013)i(all)e(optimization)h(when)f(compiling.)150
1709 y Fs(8.3)68 b(Arti\014cial)46 b(arra)l(ys)275 1906
y Fu(It)33 b(is)f(often)i(useful)d(to)j(prin)m(t)e(out)h(sev)m(eral)h
(successiv)m(e)f(ob)5 b(jects)34 b(of)g(the)f(same)h(t)m(yp)s(e)f(in)f
(memory;)j(a)150 2016 y(section)j(of)g(an)g(arra)m(y)-8
b(,)42 b(or)c(an)g(arra)m(y)g(of)g(dynamically)e(determined)h(size)h
(for)g(whic)m(h)e(only)h(a)i(p)s(oin)m(ter)150 2125 y(exists)30
b(in)f(the)i(program.)275 2264 y(Y)-8 b(ou)27 b(can)h(do)f(this)f(b)m
(y)h(referring)f(to)i(a)g(con)m(tiguous)f(span)g(of)g(memory)g(as)h(an)
f Fn(arti\014cial)f(arra)m(y)p Fu(,)i(using)150 2373
y(the)34 b(binary)f(op)s(erator)h(`)p Fo(@)p Fu('.)52
b(The)34 b(left)g(op)s(erand)f(of)h(`)p Fo(@)p Fu(')g(should)e(b)s(e)i
(the)g(\014rst)f(elemen)m(t)i(of)f(the)g(desired)150
2483 y(arra)m(y)g(and)f(b)s(e)g(an)h(individual)29 b(ob)5
b(ject.)51 b(The)33 b(righ)m(t)g(op)s(erand)g(should)e(b)s(e)i(the)h
(desired)e(length)h(of)h(the)150 2593 y(arra)m(y)-8 b(.)42
b(The)30 b(result)f(is)g(an)i(arra)m(y)f(v)-5 b(alue)30
b(whose)h(elemen)m(ts)f(are)h(all)e(of)i(the)f(t)m(yp)s(e)h(of)g(the)f
(left)g(argumen)m(t.)150 2702 y(The)38 b(\014rst)h(elemen)m(t)g(is)f
(actually)h(the)g(left)f(argumen)m(t;)44 b(the)c(second)f(elemen)m(t)g
(comes)h(from)e(b)m(ytes)i(of)150 2812 y(memory)g(immediately)e(follo)m
(wing)g(those)i(that)h(hold)d(the)i(\014rst)f(elemen)m(t,)k(and)c(so)h
(on.)69 b(Here)40 b(is)f(an)150 2921 y(example.)h(If)30
b(a)h(program)f(sa)m(ys)390 3054 y Fo(int)47 b(*array)f(=)h(\(int)g
(*\))g(malloc)f(\(len)h(*)g(sizeof)g(\(int\)\);)150 3193
y Fu(y)m(ou)31 b(can)f(prin)m(t)f(the)i(con)m(ten)m(ts)h(of)f
Fo(array)e Fu(with)390 3326 y Fo(p)47 b(*array@len)275
3464 y Fu(The)31 b(left)h(op)s(erand)f(of)h(`)p Fo(@)p
Fu(')g(m)m(ust)g(reside)f(in)g(memory)-8 b(.)46 b(Arra)m(y)33
b(v)-5 b(alues)31 b(made)h(with)f(`)p Fo(@)p Fu(')h(in)f(this)g(w)m(a)m
(y)150 3574 y(b)s(eha)m(v)m(e)39 b(just)f(lik)m(e)g(other)h(arra)m(ys)g
(in)e(terms)i(of)g(subscripting,)f(and)g(are)h(co)s(erced)g(to)g(p)s
(oin)m(ters)f(when)150 3684 y(used)27 b(in)g(expressions.)39
b(Arti\014cial)26 b(arra)m(ys)i(most)h(often)f(app)s(ear)g(in)f
(expressions)f(via)i(the)g(v)-5 b(alue)28 b(history)150
3793 y(\(see)j(Section)g(8.8)g([V)-8 b(alue)31 b(history],)f(page)h
(66\),)h(after)e(prin)m(ting)f(one)h(out.)275 3932 y(Another)e(w)m(a)m
(y)i(to)f(create)i(an)d(arti\014cial)f(arra)m(y)j(is)d(to)j(use)e(a)h
(cast.)42 b(This)26 b(re-in)m(terprets)j(a)g(v)-5 b(alue)28
b(as)h(if)150 4041 y(it)h(w)m(ere)h(an)f(arra)m(y)-8
b(.)42 b(The)30 b(v)-5 b(alue)29 b(need)i(not)f(b)s(e)g(in)f(memory:)
390 4174 y Fo(\(gdb\))46 b(p/x)h(\(short[2]\)0x12345678)390
4278 y($1)g(=)h({0x1234,)d(0x5678})275 4417 y Fu(As)21
b(a)g(con)m(v)m(enience,)j(if)c(y)m(ou)i(lea)m(v)m(e)g(the)f(arra)m(y)h
(length)e(out)h(\(as)h(in)e(`)p Fo(\()p Fn(t)m(yp)s(e)5
b Fo(\)[]\))p Fn(v)-5 b(alue)5 b Fu('\))20 b(gdb)h(calculates)150
4526 y(the)31 b(size)f(to)h(\014ll)d(the)j(v)-5 b(alue)30
b(\(as)h(`)p Fo(sizeof\()p Fn(v)-5 b(alue)5 b Fo(\)/sizeof\()p
Fn(t)m(yp)s(e)g Fo(\))p Fu(':)390 4659 y Fo(\(gdb\))46
b(p/x)h(\(short[]\)0x12345678)390 4763 y($2)g(=)h({0x1234,)d(0x5678})
275 4902 y Fu(Sometimes)36 b(the)h(arti\014cial)e(arra)m(y)i(mec)m
(hanism)f(is)f(not)i(quite)f(enough;)k(in)35 b(mo)s(derately)h(complex)
150 5011 y(data)44 b(structures,)h(the)f(elemen)m(ts)f(of)g(in)m
(terest)g(ma)m(y)h(not)f(actually)g(b)s(e)f(adjacen)m(t|for)i(example,)
i(if)150 5121 y(y)m(ou)39 b(are)g(in)m(terested)f(in)g(the)g(v)-5
b(alues)38 b(of)h(p)s(oin)m(ters)e(in)g(an)i(arra)m(y)-8
b(.)66 b(One)38 b(useful)f(w)m(ork-around)h(in)f(this)150
5230 y(situation)28 b(is)g(to)j(use)d(a)i(con)m(v)m(enience)g(v)-5
b(ariable)29 b(\(see)h(Section)f(8.9)h([Con)m(v)m(enience)g(v)-5
b(ariables],)29 b(page)h(67\))150 5340 y(as)36 b(a)f(coun)m(ter)h(in)e
(an)h(expression)f(that)i(prin)m(ts)e(the)i(\014rst)e(in)m(teresting)h
(v)-5 b(alue,)36 b(and)f(then)g(rep)s(eat)g(that)p eop
%%Page: 58 60
58 59 bop 150 -116 a Fu(58)2644 b(Debugging)31 b(with)e(GDB)150
299 y(expression)22 b(via)724 296 y Fj(h)p 748 243 151
4 v 748 299 a Fi(RET)p 748 314 V 894 296 a Fj(i)924 299
y Fu(.)39 b(F)-8 b(or)24 b(instance,)h(supp)s(ose)d(y)m(ou)i(ha)m(v)m
(e)h(an)e(arra)m(y)h Fo(dtab)f Fu(of)h(p)s(oin)m(ters)e(to)i
(structures,)150 408 y(and)32 b(y)m(ou)h(are)h(in)m(terested)f(in)e
(the)i(v)-5 b(alues)32 b(of)h(a)g(\014eld)f Fo(fv)g Fu(in)g(eac)m(h)i
(structure.)47 b(Here)34 b(is)e(an)g(example)h(of)150
518 y(what)d(y)m(ou)h(migh)m(t)f(t)m(yp)s(e:)390 648
y Fo(set)47 b($i)g(=)h(0)390 752 y(p)f(dtab[$i++]->fv)390
853 y Fj(h)p 414 800 V 414 856 a Fi(RET)p 414 871 V 561
853 a Fj(i)390 956 y(h)p 414 903 V 414 959 a Fi(RET)p
414 975 V 561 956 a Fj(i)390 1063 y Fo(...)150 1324 y
Fs(8.4)68 b(Output)45 b(formats)275 1518 y Fu(By)31 b(default,)g(GDB)i
(prin)m(ts)d(a)i(v)-5 b(alue)31 b(according)g(to)h(its)f(data)h(t)m(yp)
s(e.)44 b(Sometimes)32 b(this)e(is)g(not)i(what)150 1627
y(y)m(ou)e(w)m(an)m(t.)42 b(F)-8 b(or)31 b(example,)f(y)m(ou)g(migh)m
(t)g(w)m(an)m(t)g(to)h(prin)m(t)e(a)h(n)m(um)m(b)s(er)f(in)g(hex,)h(or)
g(a)g(p)s(oin)m(ter)f(in)g(decimal.)150 1737 y(Or)f(y)m(ou)h(migh)m(t)g
(w)m(an)m(t)h(to)g(view)e(data)h(in)f(memory)h(at)h(a)f(certain)g
(address)f(as)h(a)g(c)m(haracter)i(string)d(or)h(as)150
1846 y(an)h(instruction.)39 b(T)-8 b(o)31 b(do)f(these)h(things,)e(sp)s
(ecify)g(an)i Fn(output)f(format)i Fu(when)e(y)m(ou)g(prin)m(t)f(a)i(v)
-5 b(alue.)275 1982 y(The)37 b(simplest)f(use)i(of)g(output)f(formats)h
(is)f(to)i(sa)m(y)g(ho)m(w)e(to)i(prin)m(t)e(a)h(v)-5
b(alue)37 b(already)h(computed.)150 2092 y(This)32 b(is)g(done)i(b)m(y)
f(starting)h(the)g(argumen)m(ts)g(of)f(the)h Fo(print)e
Fu(command)i(with)e(a)i(slash)f(and)g(a)h(format)150
2201 y(letter.)41 b(The)30 b(format)h(letters)f(supp)s(orted)f(are:)150
2363 y Fo(x)432 b Fu(Regard)26 b(the)g(bits)e(of)i(the)g(v)-5
b(alue)25 b(as)h(an)g(in)m(teger,)h(and)e(prin)m(t)f(the)i(in)m(teger)g
(in)e(hexadecimal.)150 2523 y Fo(d)432 b Fu(Prin)m(t)29
b(as)i(in)m(teger)g(in)e(signed)g(decimal.)150 2684 y
Fo(u)432 b Fu(Prin)m(t)29 b(as)i(in)m(teger)g(in)e(unsigned)f(decimal.)
150 2845 y Fo(o)432 b Fu(Prin)m(t)29 b(as)i(in)m(teger)g(in)e(o)s
(ctal.)150 3005 y Fo(t)432 b Fu(Prin)m(t)29 b(as)i(in)m(teger)g(in)e
(binary)-8 b(.)39 b(The)30 b(letter)h(`)p Fo(t)p Fu(')f(stands)g(for)g
(\\t)m(w)m(o".)2934 2972 y Fh(1)150 3166 y Fo(a)432 b
Fu(Prin)m(t)37 b(as)h(an)g(address,)i(b)s(oth)d(absolute)h(in)f
(hexadecimal)g(and)h(as)g(an)g(o\013set)h(from)f(the)630
3276 y(nearest)33 b(preceding)e(sym)m(b)s(ol.)45 b(Y)-8
b(ou)33 b(can)g(use)f(this)f(format)i(used)e(to)i(disco)m(v)m(er)g
(where)f(\(in)630 3385 y(what)e(function\))g(an)g(unkno)m(wn)f(address)
g(is)h(lo)s(cated:)870 3515 y Fo(\(gdb\))46 b(p/a)h(0x54320)870
3618 y($3)g(=)h(0x54320)d(<_initialize_vx+396>)150 3779
y(c)432 b Fu(Regard)31 b(as)f(an)h(in)m(teger)f(and)g(prin)m(t)f(it)h
(as)h(a)f(c)m(haracter)i(constan)m(t.)150 3940 y Fo(f)432
b Fu(Regard)30 b(the)f(bits)f(of)i(the)f(v)-5 b(alue)29
b(as)h(a)f(\015oating)h(p)s(oin)m(t)e(n)m(um)m(b)s(er)g(and)h(prin)m(t)
f(using)f(t)m(ypical)630 4049 y(\015oating)j(p)s(oin)m(t)g(syn)m(tax.)
275 4211 y(F)-8 b(or)27 b(example,)g(to)h(prin)m(t)d(the)i(program)f
(coun)m(ter)i(in)d(hex)i(\(see)g(Section)g(8.10)h([Registers],)g(page)f
(68\),)150 4320 y(t)m(yp)s(e)390 4450 y Fo(p/x)47 b($pc)150
4586 y Fu(Note)37 b(that)f(no)f(space)h(is)f(required)f(b)s(efore)h
(the)g(slash;)j(this)c(is)g(b)s(ecause)i(command)f(names)h(in)e(GDB)150
4696 y(cannot)d(con)m(tain)g(a)f(slash.)275 4831 y(T)-8
b(o)36 b(reprin)m(t)e(the)i(last)g(v)-5 b(alue)35 b(in)g(the)h(v)-5
b(alue)35 b(history)g(with)g(a)h(di\013eren)m(t)f(format,)j(y)m(ou)e
(can)g(use)g(the)150 4941 y Fo(print)27 b Fu(command)i(with)e(just)h(a)
h(format)g(and)g(no)f(expression.)39 b(F)-8 b(or)30 b(example,)f(`)p
Fo(p/x)p Fu(')f(reprin)m(ts)f(the)i(last)150 5051 y(v)-5
b(alue)30 b(in)f(hex.)p 150 5131 1200 4 v 192 5197 a
Fh(1)275 5230 y Fu(`)p Fo(b)p Fu(')c(cannot)g(b)s(e)f(used)g(b)s
(ecause)h(these)h(format)f(letters)g(are)g(also)g(used)f(with)g(the)h
Fo(x)f Fu(command,)i(where)275 5340 y(`)p Fo(b)p Fu(')k(stands)g(for)g
(\\b)m(yte";)i(see)f(Section)f(8.5)i([Examining)c(memory],)j(page)g
(59.)p eop
%%Page: 59 61
59 60 bop 150 -116 a Fu(Chapter)30 b(8:)41 b(Examining)28
b(Data)2392 b(59)150 299 y Fs(8.5)68 b(Examining)46 b(memory)275
488 y Fu(Y)-8 b(ou)44 b(can)g(use)g(the)g(command)g Fo(x)g
Fu(\(for)g(\\examine"\))h(to)g(examine)e(memory)h(in)f(an)m(y)h(of)h
(sev)m(eral)150 598 y(formats,)31 b(indep)s(enden)m(tly)c(of)k(y)m(our)
f(program's)g(data)h(t)m(yp)s(es.)150 793 y Fo(x/)p Fn(nfu)e(addr)150
902 y Fo(x)h Fn(addr)150 1012 y Fo(x)432 b Fu(Use)31
b(the)f Fo(x)g Fu(command)g(to)i(examine)e(memory)-8
b(.)275 1164 y Fn(n)p Fu(,)24 b Fn(f)p Fu(,)h(and)d Fn(u)h
Fu(are)h(all)e(optional)g(parameters)i(that)g(sp)s(ecify)e(ho)m(w)h(m)m
(uc)m(h)g(memory)h(to)g(displa)m(y)d(and)i(ho)m(w)150
1274 y(to)35 b(format)g(it;)i Fn(addr)j Fu(is)34 b(an)g(expression)f
(giving)h(the)h(address)e(where)i(y)m(ou)g(w)m(an)m(t)g(to)g(start)h
(displa)m(ying)150 1384 y(memory)-8 b(.)40 b(If)28 b(y)m(ou)g(use)g
(defaults)f(for)h Fn(nfu)p Fu(,)g(y)m(ou)g(need)g(not)h(t)m(yp)s(e)f
(the)g(slash)f(`)p Fo(/)p Fu('.)40 b(Sev)m(eral)29 b(commands)e(set)150
1493 y(con)m(v)m(enien)m(t)k(defaults)f(for)g Fn(addr)p
Fu(.)150 1646 y Fn(n)p Fu(,)g(the)h(rep)s(eat)f(coun)m(t)630
1755 y(The)j(rep)s(eat)i(coun)m(t)f(is)f(a)i(decimal)e(in)m(teger;)j
(the)e(default)f(is)g(1.)52 b(It)34 b(sp)s(eci\014es)f(ho)m(w)h(m)m(uc)
m(h)630 1865 y(memory)c(\(coun)m(ting)h(b)m(y)f(units)f
Fn(u)p Fu(\))h(to)h(displa)m(y)-8 b(.)150 2017 y Fn(f)p
Fu(,)30 b(the)h(displa)m(y)d(format)630 2127 y(The)36
b(displa)m(y)e(format)j(is)f(one)g(of)h(the)f(formats)h(used)e(b)m(y)i
Fo(print)p Fu(,)f(`)p Fo(s)p Fu(')h(\(n)m(ull-terminated)630
2236 y(string\),)31 b(or)h(`)p Fo(i)p Fu(')g(\(mac)m(hine)f
(instruction\).)43 b(The)31 b(default)g(is)f(`)p Fo(x)p
Fu(')i(\(hexadecimal\))g(initially)-8 b(.)630 2346 y(The)30
b(default)f(c)m(hanges)j(eac)m(h)f(time)f(y)m(ou)h(use)f(either)g
Fo(x)g Fu(or)g Fo(print)p Fu(.)150 2498 y Fn(u)p Fu(,)g(the)h(unit)e
(size)630 2608 y(The)h(unit)f(size)h(is)f(an)m(y)i(of)630
2760 y Fo(b)432 b Fu(Bytes.)630 2913 y Fo(h)g Fu(Halfw)m(ords)30
b(\(t)m(w)m(o)i(b)m(ytes\).)630 3065 y Fo(w)432 b Fu(W)-8
b(ords)31 b(\(four)f(b)m(ytes\).)41 b(This)29 b(is)g(the)i(initial)c
(default.)630 3218 y Fo(g)432 b Fu(Gian)m(t)31 b(w)m(ords)f(\(eigh)m(t)
h(b)m(ytes\).)630 3370 y(Eac)m(h)d(time)f(y)m(ou)g(sp)s(ecify)f(a)i
(unit)d(size)i(with)f Fo(x)p Fu(,)i(that)g(size)f(b)s(ecomes)g(the)h
(default)e(unit)g(the)630 3480 y(next)33 b(time)f(y)m(ou)h(use)f
Fo(x)p Fu(.)47 b(\(F)-8 b(or)33 b(the)g(`)p Fo(s)p Fu(')f(and)g(`)p
Fo(i)p Fu(')h(formats,)g(the)g(unit)e(size)h(is)g(ignored)g(and)630
3589 y(is)d(normally)g(not)i(written.\))150 3742 y Fn(addr)p
Fu(,)f(starting)g(displa)m(y)e(address)630 3851 y Fn(addr)44
b Fu(is)38 b(the)g(address)g(where)g(y)m(ou)h(w)m(an)m(t)h(GDB)f(to)h
(b)s(egin)d(displa)m(ying)f(memory)-8 b(.)65 b(The)630
3961 y(expression)36 b(need)h(not)h(ha)m(v)m(e)g(a)g(p)s(oin)m(ter)f(v)
-5 b(alue)36 b(\(though)i(it)f(ma)m(y\);)42 b(it)37 b(is)f(alw)m(a)m
(ys)i(in)m(ter-)630 4070 y(preted)25 b(as)h(an)g(in)m(teger)g(address)f
(of)h(a)g(b)m(yte)g(of)g(memory)-8 b(.)40 b(See)26 b(Section)f(8.1)i
([Expressions],)630 4180 y(page)42 b(55,)j(for)d(more)f(information)f
(on)h(expressions.)73 b(The)41 b(default)f(for)h Fn(addr)47
b Fu(is)41 b(usu-)630 4289 y(ally)28 b(just)g(after)h(the)h(last)e
(address)g(examined|but)g(sev)m(eral)h(other)g(commands)g(also)f(set)
630 4399 y(the)34 b(default)e(address:)47 b Fo(info)29
b(breakpoints)h Fu(\(to)35 b(the)f(address)e(of)i(the)g(last)f(breakp)s
(oin)m(t)630 4509 y(listed\),)g Fo(info)c(line)j Fu(\(to)j(the)e
(starting)g(address)g(of)g(a)h(line\),)f(and)f Fo(print)g
Fu(\(if)h(y)m(ou)g(use)g(it)630 4618 y(to)e(displa)m(y)e(a)h(v)-5
b(alue)30 b(from)g(memory\).)275 4771 y(F)-8 b(or)40
b(example,)h(`)p Fo(x/3uh)29 b(0x54320)p Fu(')38 b(is)h(a)g(request)h
(to)g(displa)m(y)e(three)h(halfw)m(ords)f(\()p Fo(h)p
Fu(\))i(of)f(memory)-8 b(,)150 4880 y(formatted)44 b(as)f(unsigned)e
(decimal)h(in)m(tegers)h(\(`)p Fo(u)p Fu('\),)48 b(starting)43
b(at)g(address)g Fo(0x54320)p Fu(.)76 b(`)p Fo(x/4xw)30
b($sp)p Fu(')150 4990 y(prin)m(ts)e(the)h(four)g(w)m(ords)f(\(`)p
Fo(w)p Fu('\))j(of)e(memory)g(ab)s(o)m(v)m(e)i(the)e(stac)m(k)i(p)s
(oin)m(ter)d(\(here,)i(`)p Fo($sp)p Fu(';)f(see)h(Section)f(8.10)150
5099 y([Registers],)i(page)g(68\))h(in)d(hexadecimal)h(\(`)p
Fo(x)p Fu('\).)275 5230 y(Since)h(the)i(letters)g(indicating)e(unit)g
(sizes)i(are)g(all)f(distinct)f(from)i(the)g(letters)g(sp)s(ecifying)d
(output)150 5340 y(formats,)f(y)m(ou)g(do)f(not)h(ha)m(v)m(e)h(to)f
(remem)m(b)s(er)f(whether)f(unit)g(size)i(or)f(format)h(comes)g
(\014rst;)g(either)e(order)p eop
%%Page: 60 62
60 61 bop 150 -116 a Fu(60)2644 b(Debugging)31 b(with)e(GDB)150
299 y(w)m(orks.)47 b(The)32 b(output)g(sp)s(eci\014cations)f(`)p
Fo(4xw)p Fu(')h(and)g(`)p Fo(4wx)p Fu(')g(mean)h(exactly)g(the)f(same)h
(thing.)46 b(\(Ho)m(w)m(ev)m(er,)150 408 y(the)31 b(coun)m(t)g
Fn(n)e Fu(m)m(ust)i(come)g(\014rst;)f(`)p Fo(wx4)p Fu(')g(do)s(es)g
(not)g(w)m(ork.\))275 551 y(Ev)m(en)c(though)g(the)g(unit)f(size)g
Fn(u)h Fu(is)f(ignored)g(for)h(the)h(formats)f(`)p Fo(s)p
Fu(')g(and)g(`)p Fo(i)p Fu(',)h(y)m(ou)f(migh)m(t)g(still)e(w)m(an)m(t)
j(to)150 661 y(use)32 b(a)h(coun)m(t)g Fn(n)p Fu(;)g(for)g(example,)g
(`)p Fo(3i)p Fu(')f(sp)s(eci\014es)f(that)i(y)m(ou)g(w)m(an)m(t)h(to)f
(see)g(three)g(mac)m(hine)f(instructions,)150 770 y(including)23
b(an)m(y)k(op)s(erands.)39 b(The)26 b(command)g Fo(disassemble)e
Fu(giv)m(es)j(an)f(alternativ)m(e)h(w)m(a)m(y)h(of)f(insp)s(ecting)150
880 y(mac)m(hine)j(instructions;)f(see)h(Section)h(7.4)g([Source)g(and)
e(mac)m(hine)h(co)s(de],)i(page)f(53.)275 1023 y(All)24
b(the)h(defaults)g(for)g(the)h(argumen)m(ts)g(to)g Fo(x)f
Fu(are)h(designed)e(to)i(mak)m(e)h(it)e(easy)h(to)g(con)m(tin)m(ue)g
(scanning)150 1132 y(memory)41 b(with)g(minimal)d(sp)s(eci\014cations)i
(eac)m(h)j(time)e(y)m(ou)h(use)f Fo(x)p Fu(.)74 b(F)-8
b(or)43 b(example,)h(after)e(y)m(ou)g(ha)m(v)m(e)150
1242 y(insp)s(ected)26 b(three)h(mac)m(hine)f(instructions)f(with)h(`)p
Fo(x/3i)j Fn(addr)7 b Fu(',)27 b(y)m(ou)g(can)h(insp)s(ect)d(the)j
(next)f(sev)m(en)g(with)150 1351 y(just)i(`)p Fo(x/7)p
Fu('.)40 b(If)29 b(y)m(ou)h(use)1005 1348 y Fj(h)p 1029
1295 151 4 v 1029 1351 a Fi(RET)p 1029 1367 V 1175 1348
a Fj(i)1235 1351 y Fu(to)g(rep)s(eat)f(the)h Fo(x)f Fu(command,)h(the)f
(rep)s(eat)h(coun)m(t)g Fn(n)f Fu(is)f(used)h(again;)h(the)150
1461 y(other)h(argumen)m(ts)f(default)g(as)g(for)h(successiv)m(e)f
(uses)g(of)h Fo(x)p Fu(.)275 1604 y(The)25 b(addresses)g(and)g(con)m
(ten)m(ts)i(prin)m(ted)d(b)m(y)i(the)g Fo(x)f Fu(command)g(are)h(not)g
(sa)m(v)m(ed)h(in)d(the)i(v)-5 b(alue)25 b(history)150
1713 y(b)s(ecause)38 b(there)h(is)f(often)h(to)s(o)g(m)m(uc)m(h)f(of)h
(them)f(and)g(they)h(w)m(ould)e(get)j(in)d(the)i(w)m(a)m(y)-8
b(.)66 b(Instead,)41 b(GDB)150 1823 y(mak)m(es)31 b(these)g(v)-5
b(alues)29 b(a)m(v)-5 b(ailable)30 b(for)g(subsequen)m(t)f(use)h(in)f
(expressions)g(as)h(v)-5 b(alues)30 b(of)g(the)h(con)m(v)m(enience)150
1932 y(v)-5 b(ariables)31 b Fo($_)h Fu(and)g Fo($__)p
Fu(.)47 b(After)33 b(an)g Fo(x)f Fu(command,)h(the)g(last)f(address)g
(examined)g(is)g(a)m(v)-5 b(ailable)32 b(for)g(use)150
2042 y(in)g(expressions)g(in)h(the)g(con)m(v)m(enience)i(v)-5
b(ariable)32 b Fo($_)p Fu(.)50 b(The)33 b(con)m(ten)m(ts)i(of)f(that)g
(address,)g(as)f(examined,)150 2152 y(are)e(a)m(v)-5
b(ailable)30 b(in)f(the)h(con)m(v)m(enience)i(v)-5 b(ariable)29
b Fo($__)p Fu(.)275 2294 y(If)h(the)i Fo(x)f Fu(command)g(has)g(a)g
(rep)s(eat)h(coun)m(t,)g(the)g(address)e(and)h(con)m(ten)m(ts)i(sa)m(v)
m(ed)f(are)g(from)f(the)g(last)150 2404 y(memory)h(unit)f(prin)m(ted;)h
(this)f(is)g(not)i(the)f(same)h(as)f(the)h(last)f(address)f(prin)m(ted)
g(if)g(sev)m(eral)i(units)d(w)m(ere)150 2513 y(prin)m(ted)f(on)h(the)h
(last)f(line)f(of)h(output.)150 2791 y Fs(8.6)68 b(Automatic)46
b(displa)l(y)275 2992 y Fu(If)34 b(y)m(ou)h(\014nd)e(that)i(y)m(ou)g(w)
m(an)m(t)g(to)h(prin)m(t)d(the)i(v)-5 b(alue)34 b(of)g(an)h(expression)
e(frequen)m(tly)h(\(to)i(see)f(ho)m(w)f(it)150 3102 y(c)m(hanges\),)40
b(y)m(ou)e(migh)m(t)f(w)m(an)m(t)h(to)f(add)g(it)g(to)g(the)h
Fn(automatic)g(displa)m(y)d(list)j Fu(so)f(that)h(GDB)g(prin)m(ts)e
(its)150 3211 y(v)-5 b(alue)26 b(eac)m(h)i(time)f(y)m(our)g(program)f
(stops.)40 b(Eac)m(h)27 b(expression)f(added)g(to)h(the)g(list)f(is)g
(giv)m(en)g(a)i(n)m(um)m(b)s(er)d(to)150 3321 y(iden)m(tify)j(it;)i(to)
h(remo)m(v)m(e)h(an)e(expression)f(from)g(the)h(list,)f(y)m(ou)i(sp)s
(ecify)d(that)j(n)m(um)m(b)s(er.)39 b(The)30 b(automatic)150
3430 y(displa)m(y)f(lo)s(oks)g(lik)m(e)h(this:)390 3567
y Fo(2:)47 b(foo)g(=)h(38)390 3671 y(3:)f(bar[5])f(=)i(\(struct)e(hack)
g(*\))h(0x3804)150 3814 y Fu(This)34 b(displa)m(y)g(sho)m(ws)i(item)f
(n)m(um)m(b)s(ers,)h(expressions)f(and)g(their)g(curren)m(t)g(v)-5
b(alues.)57 b(As)35 b(with)g(displa)m(ys)150 3923 y(y)m(ou)g(request)g
(man)m(ually)f(using)g Fo(x)g Fu(or)h Fo(print)p Fu(,)g(y)m(ou)h(can)f
(sp)s(ecify)f(the)h(output)g(format)g(y)m(ou)g(prefer;)i(in)150
4033 y(fact,)c Fo(display)d Fu(decides)h(whether)g(to)i(use)e
Fo(print)g Fu(or)g Fo(x)h Fu(dep)s(ending)d(on)j(ho)m(w)g(elab)s(orate)
g(y)m(our)g(format)150 4143 y(sp)s(eci\014cation)f(is|it)g(uses)g
Fo(x)h Fu(if)f(y)m(ou)h(sp)s(ecify)f(a)i(unit)d(size,)j(or)f(one)g(of)g
(the)h(t)m(w)m(o)g(formats)f(\(`)p Fo(i)p Fu(')h(and)e(`)p
Fo(s)p Fu('\))150 4252 y(that)g(are)g(only)e(supp)s(orted)g(b)m(y)h
Fo(x)p Fu(;)g(otherwise)g(it)g(uses)g Fo(print)p Fu(.)150
4486 y Fo(display)e Fn(exp)630 4595 y Fu(Add)41 b(the)h(expression)e
Fn(exp)45 b Fu(to)d(the)g(list)f(of)h(expressions)e(to)j(displa)m(y)d
(eac)m(h)j(time)e(y)m(our)630 4705 y(program)30 b(stops.)41
b(See)30 b(Section)h(8.1)g([Expressions],)e(page)i(55.)630
4844 y Fo(display)d Fu(do)s(es)i(not)h(rep)s(eat)g(if)e(y)m(ou)i(press)
2125 4841 y Fj(h)p 2149 4788 V 2149 4844 a Fi(RET)p 2149
4859 V 2296 4841 a Fj(i)2356 4844 y Fu(again)g(after)g(using)d(it.)150
5011 y Fo(display/)p Fn(fm)m(t)i(exp)630 5121 y Fu(F)-8
b(or)46 b Fn(fm)m(t)h Fu(sp)s(ecifying)c(only)i(a)g(displa)m(y)e
(format)j(and)e(not)i(a)f(size)g(or)g(coun)m(t,)50 b(add)45
b(the)630 5230 y(expression)35 b Fn(exp)40 b Fu(to)d(the)g(auto-displa)
m(y)f(list)f(but)h(arrange)h(to)g(displa)m(y)e(it)h(eac)m(h)i(time)e
(in)630 5340 y(the)31 b(sp)s(eci\014ed)d(format)j Fn(fm)m(t)p
Fu(.)41 b(See)31 b(Section)f(8.4)h([Output)f(formats],)h(page)g(58.)p
eop
%%Page: 61 63
61 62 bop 150 -116 a Fu(Chapter)30 b(8:)41 b(Examining)28
b(Data)2392 b(61)150 299 y Fo(display/)p Fn(fm)m(t)30
b(addr)630 408 y Fu(F)-8 b(or)29 b Fn(fm)m(t)h Fu(`)p
Fo(i)p Fu(')e(or)f(`)p Fo(s)p Fu(',)i(or)f(including)c(a)29
b(unit-size)d(or)i(a)g(n)m(um)m(b)s(er)f(of)h(units,)f(add)g(the)h
(expres-)630 518 y(sion)h Fn(addr)36 b Fu(as)30 b(a)h(memory)f(address)
f(to)i(b)s(e)f(examined)f(eac)m(h)j(time)e(y)m(our)g(program)g(stops.)
630 628 y(Examining)41 b(means)i(in)f(e\013ect)j(doing)d(`)p
Fo(x/)p Fn(fm)m(t)33 b(addr)7 b Fu('.)78 b(See)43 b(Section)g(8.5)i
([Examining)630 737 y(memory],)31 b(page)g(59.)275 908
y(F)-8 b(or)35 b(example,)i(`)p Fo(display/i)28 b($pc)p
Fu(')34 b(can)i(b)s(e)e(helpful,)g(to)i(see)f(the)h(mac)m(hine)e
(instruction)f(ab)s(out)i(to)150 1018 y(b)s(e)d(executed)i(eac)m(h)g
(time)f(execution)g(stops)g(\(`)p Fo($pc)p Fu(')f(is)g(a)i(common)f
(name)g(for)f(the)h(program)g(coun)m(ter;)150 1127 y(see)e(Section)f
(8.10)i([Registers],)f(page)g(68\).)150 1359 y Fo(undisplay)d
Fn(dn)m(ums)t Fo(...)150 1469 y(delete)h(display)f Fn(dn)m(ums)t
Fo(...)630 1579 y Fu(Remo)m(v)m(e)k(item)e(n)m(um)m(b)s(ers)f
Fn(dn)m(ums)k Fu(from)d(the)g(list)f(of)i(expressions)e(to)i(displa)m
(y)-8 b(.)630 1717 y Fo(undisplay)36 b Fu(do)s(es)i(not)h(rep)s(eat)f
(if)g(y)m(ou)g(press)2277 1714 y Fj(h)p 2301 1661 151
4 v 2301 1717 a Fi(RET)p 2301 1732 V 2448 1714 a Fj(i)2516
1717 y Fu(after)h(using)e(it.)64 b(\(Otherwise)38 b(y)m(ou)630
1827 y(w)m(ould)29 b(just)h(get)h(the)g(error)f(`)p Fo(No)g(display)e
(number)h(...)o Fu('.\))150 1994 y Fo(disable)f(display)h
Fn(dn)m(ums)t Fo(...)630 2103 y Fu(Disable)39 b(the)i(displa)m(y)d(of)j
(item)e(n)m(um)m(b)s(ers)g Fn(dn)m(ums)p Fu(.)69 b(A)40
b(disabled)e(displa)m(y)h(item)g(is)h(not)630 2213 y(prin)m(ted)29
b(automatically)-8 b(,)31 b(but)e(is)h(not)h(forgotten.)42
b(It)30 b(ma)m(y)h(b)s(e)f(enabled)f(again)h(later.)150
2380 y Fo(enable)f(display)f Fn(dn)m(ums)t Fo(...)630
2489 y Fu(Enable)e(displa)m(y)f(of)i(item)f(n)m(um)m(b)s(ers)g
Fn(dn)m(ums)p Fu(.)38 b(It)27 b(b)s(ecomes)g(e\013ectiv)m(e)h(once)g
(again)f(in)e(auto)630 2599 y(displa)m(y)k(of)h(its)g(expression,)f(un)
m(til)g(y)m(ou)i(sp)s(ecify)e(otherwise.)150 2766 y Fo(display)144
b Fu(Displa)m(y)33 b(the)h(curren)m(t)f(v)-5 b(alues)33
b(of)h(the)g(expressions)f(on)g(the)h(list,)g(just)f(as)h(is)e(done)i
(when)630 2876 y(y)m(our)c(program)g(stops.)150 3043
y Fo(info)f(display)630 3152 y Fu(Prin)m(t)39 b(the)g(list)g(of)h
(expressions)e(previously)f(set)j(up)f(to)h(displa)m(y)e(automatically)
-8 b(,)43 b(eac)m(h)630 3262 y(one)34 b(with)e(its)h(item)g(n)m(um)m(b)
s(er,)g(but)g(without)f(sho)m(wing)h(the)g(v)-5 b(alues.)49
b(This)32 b(includes)f(dis-)630 3371 y(abled)25 b(expressions,)h(whic)m
(h)f(are)i(mark)m(ed)f(as)g(suc)m(h.)39 b(It)27 b(also)f(includes)d
(expressions)i(whic)m(h)630 3481 y(w)m(ould)h(not)i(b)s(e)e(displa)m(y)
m(ed)g(righ)m(t)h(no)m(w)h(b)s(ecause)f(they)g(refer)g(to)h(automatic)h
(v)-5 b(ariables)26 b(not)630 3591 y(curren)m(tly)j(a)m(v)-5
b(ailable.)275 3762 y(If)30 b(a)i(displa)m(y)d(expression)h(refers)h
(to)h(lo)s(cal)f(v)-5 b(ariables,)30 b(then)h(it)g(do)s(es)f(not)i(mak)
m(e)g(sense)f(outside)g(the)150 3871 y(lexical)23 b(con)m(text)k(for)d
(whic)m(h)f(it)h(w)m(as)g(set)h(up.)38 b(Suc)m(h)24 b(an)g(expression)f
(is)g(disabled)f(when)i(execution)g(en)m(ters)150 3981
y(a)33 b(con)m(text)h(where)e(one)g(of)h(its)f(v)-5 b(ariables)31
b(is)g(not)i(de\014ned.)45 b(F)-8 b(or)33 b(example,)g(if)e(y)m(ou)i
(giv)m(e)g(the)f(command)150 4090 y Fo(display)c(last_char)35
b Fu(while)h(inside)f(a)j(function)e(with)h(an)g(argumen)m(t)h
Fo(last_char)p Fu(,)f(GDB)i(displa)m(ys)150 4200 y(this)d(argumen)m(t)h
(while)d(y)m(our)j(program)f(con)m(tin)m(ues)h(to)g(stop)g(inside)d
(that)j(function.)58 b(When)37 b(it)f(stops)150 4309
y(elsewhere|where)j(there)i(is)e(no)h(v)-5 b(ariable)39
b Fo(last_char)p Fu(|the)f(displa)m(y)g(is)i(disabled)d(automatically)
-8 b(.)150 4419 y(The)41 b(next)g(time)g(y)m(our)g(program)g(stops)g
(where)g Fo(last_char)d Fu(is)i(meaningful,)i(y)m(ou)g(can)f(enable)g
(the)150 4529 y(displa)m(y)29 b(expression)g(once)i(again.)150
4805 y Fs(8.7)68 b(Prin)l(t)45 b(settings)275 5005 y
Fu(GDB)40 b(pro)m(vides)f(the)h(follo)m(wing)f(w)m(a)m(ys)h(to)h(con)m
(trol)f(ho)m(w)g(arra)m(ys,)j(structures,)f(and)d(sym)m(b)s(ols)g(are)
150 5115 y(prin)m(ted.)150 5257 y(These)30 b(settings)g(are)h(useful)e
(for)h(debugging)f(programs)h(in)f(an)m(y)i(language:)p
eop
%%Page: 62 64
62 63 bop 150 -116 a Fu(62)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(set)g(print)g(address)150 408 y(set)g(print)g(address)g(on)630
518 y Fu(GDB)35 b(prin)m(ts)e(memory)h(addresses)f(sho)m(wing)g(the)i
(lo)s(cation)e(of)i(stac)m(k)g(traces,)h(structure)630
628 y(v)-5 b(alues,)28 b(p)s(oin)m(ter)e(v)-5 b(alues,)28
b(breakp)s(oin)m(ts,)f(and)g(so)h(forth,)g(ev)m(en)h(when)d(it)h(also)h
(displa)m(ys)e(the)630 737 y(con)m(ten)m(ts)41 b(of)e(those)h
(addresses.)67 b(The)38 b(default)h(is)f Fo(on)p Fu(.)67
b(F)-8 b(or)40 b(example,)h(this)d(is)g(what)i(a)630
847 y(stac)m(k)32 b(frame)e(displa)m(y)f(lo)s(oks)h(lik)m(e)f(with)g
Fo(set)h(print)f(address)f(on)p Fu(:)870 981 y Fo(\(gdb\))46
b(f)870 1085 y(#0)95 b(set_quotes)45 b(\(lq=0x34c78)g("<<",)h
(rq=0x34c88)f(">>"\))1061 1189 y(at)i(input.c:530)870
1292 y(530)429 b(if)47 b(\(lquote)f(!=)h(def_lquote\))150
1448 y(set)29 b(print)g(address)g(off)630 1558 y Fu(Do)f(not)g(prin)m
(t)e(addresses)h(when)g(displa)m(ying)e(their)i(con)m(ten)m(ts.)41
b(F)-8 b(or)29 b(example,)f(this)e(is)h(the)630 1667
y(same)k(stac)m(k)h(frame)e(displa)m(y)m(ed)f(with)g
Fo(set)g(print)g(address)g(off)p Fu(:)870 1802 y Fo(\(gdb\))46
b(set)h(print)g(addr)f(off)870 1905 y(\(gdb\))g(f)870
2009 y(#0)95 b(set_quotes)45 b(\(lq="<<",)g(rq=">>"\))h(at)h
(input.c:530)870 2113 y(530)429 b(if)47 b(\(lquote)f(!=)h(def_lquote\))
630 2246 y Fu(Y)-8 b(ou)32 b(can)g(use)f(`)p Fo(set)f(print)f(address)f
(off)p Fu(')j(to)h(eliminate)e(all)g(mac)m(hine)i(dep)s(enden)m(t)e
(dis-)630 2355 y(pla)m(ys)43 b(from)g(the)h(GDB)g(in)m(terface.)81
b(F)-8 b(or)44 b(example,)j(with)42 b Fo(print)29 b(address)f(off)p
Fu(,)47 b(y)m(ou)630 2465 y(should)30 b(get)j(the)g(same)f(text)h(for)f
(bac)m(ktraces)i(on)e(all)f(mac)m(hines|whether)g(or)h(not)h(they)630
2575 y(in)m(v)m(olv)m(e)e(p)s(oin)m(ter)e(argumen)m(ts.)150
2745 y Fo(show)g(print)g(address)630 2855 y Fu(Sho)m(w)h(whether)g(or)g
(not)h(addresses)e(are)i(to)g(b)s(e)f(prin)m(ted.)275
3031 y(When)e(GDB)i(prin)m(ts)e(a)h(sym)m(b)s(olic)e(address,)i(it)f
(normally)f(prin)m(ts)h(the)h(closest)g(earlier)f(sym)m(b)s(ol)g(plus)
150 3140 y(an)k(o\013set.)46 b(If)31 b(that)h(sym)m(b)s(ol)f(do)s(es)g
(not)h(uniquely)d(iden)m(tify)i(the)h(address)f(\(for)g(example,)i(it)e
(is)g(a)h(name)150 3250 y(whose)k(scop)s(e)h(is)e(a)i(single)e(source)i
(\014le\),)h(y)m(ou)f(ma)m(y)g(need)f(to)h(clarify)-8
b(.)58 b(One)36 b(w)m(a)m(y)i(to)f(do)f(this)g(is)f(with)150
3359 y Fo(info)29 b(line)p Fu(,)36 b(for)f(example)g(`)p
Fo(info)30 b(line)f(*0x4537)p Fu('.)54 b(Alternately)-8
b(,)37 b(y)m(ou)f(can)g(set)g(GDB)g(to)h(prin)m(t)d(the)150
3469 y(source)d(\014le)e(and)h(line)e(n)m(um)m(b)s(er)i(when)f(it)h
(prin)m(ts)f(a)h(sym)m(b)s(olic)f(address:)150 3711 y
Fo(set)g(print)g(symbol-filename)e(on)630 3821 y Fu(T)-8
b(ell)39 b(GDB)i(to)f(prin)m(t)f(the)h(source)g(\014le)f(name)h(and)f
(line)g(n)m(um)m(b)s(er)f(of)i(a)h(sym)m(b)s(ol)d(in)h(the)630
3930 y(sym)m(b)s(olic)29 b(form)h(of)g(an)g(address.)150
4101 y Fo(set)f(print)g(symbol-filename)e(off)630 4211
y Fu(Do)h(not)g(prin)m(t)e(source)i(\014le)f(name)g(and)g(line)f(n)m
(um)m(b)s(er)g(of)i(a)g(sym)m(b)s(ol.)38 b(This)26 b(is)h(the)g
(default.)150 4381 y Fo(show)i(print)g(symbol-filename)630
4491 y Fu(Sho)m(w)f(whether)g(or)h(not)g(GDB)g(will)d(prin)m(t)i(the)g
(source)h(\014le)f(name)g(and)h(line)d(n)m(um)m(b)s(er)i(of)h(a)630
4600 y(sym)m(b)s(ol)g(in)g(the)i(sym)m(b)s(olic)e(form)g(of)i(an)f
(address.)275 4776 y(Another)25 b(situation)g(where)h(it)f(is)g
(helpful)e(to)k(sho)m(w)f(sym)m(b)s(ol)f(\014lenames)g(and)g(line)f(n)m
(um)m(b)s(ers)h(is)g(when)150 4886 y(disassem)m(bling)34
b(co)s(de;)41 b(GDB)d(sho)m(ws)f(y)m(ou)g(the)g(line)f(n)m(um)m(b)s(er)
f(and)i(source)g(\014le)f(that)i(corresp)s(onds)d(to)150
4995 y(eac)m(h)d(instruction.)275 5141 y(Also,)c(y)m(ou)g(ma)m(y)h
(wish)d(to)j(see)g(the)f(sym)m(b)s(olic)e(form)i(only)f(if)g(the)h
(address)f(b)s(eing)g(prin)m(ted)f(is)h(reason-)150 5250
y(ably)i(close)i(to)g(the)g(closest)g(earlier)e(sym)m(b)s(ol:)p
eop
%%Page: 63 65
63 64 bop 150 -116 a Fu(Chapter)30 b(8:)41 b(Examining)28
b(Data)2392 b(63)150 299 y Fo(set)29 b(print)g(max-symbolic-offset)d
Fn(max-o\013set)630 408 y Fu(T)-8 b(ell)28 b(GDB)i(to)g(only)e(displa)m
(y)g(the)h(sym)m(b)s(olic)f(form)g(of)h(an)g(address)g(if)f(the)h
(o\013set)h(b)s(et)m(w)m(een)630 518 y(the)i(closest)g(earlier)f(sym)m
(b)s(ol)f(and)h(the)h(address)f(is)g(less)g(than)g Fn(max-o\013set)p
Fu(.)47 b(The)31 b(default)630 628 y(is)k(0,)j(whic)m(h)d(tells)g(GDB)i
(to)f(alw)m(a)m(ys)h(prin)m(t)e(the)h(sym)m(b)s(olic)e(form)i(of)g(an)g
(address)f(if)g(an)m(y)630 737 y(sym)m(b)s(ol)29 b(precedes)i(it.)150
895 y Fo(show)e(print)g(max-symbolic-offset)630 1005
y Fu(Ask)h(ho)m(w)h(large)f(the)h(maxim)m(um)e(o\013set)i(is)f(that)h
(GDB)g(prin)m(ts)e(in)g(a)i(sym)m(b)s(olic)e(address.)275
1187 y(If)19 b(y)m(ou)i(ha)m(v)m(e)g(a)g(p)s(oin)m(ter)e(and)h(y)m(ou)h
(are)f(not)h(sure)e(where)h(it)g(p)s(oin)m(ts,)h(try)g(`)p
Fo(set)29 b(print)g(symbol-filename)150 1297 y(on)p Fu('.)65
b(Then)38 b(y)m(ou)h(can)g(determine)f(the)h(name)g(and)f(source)h
(\014le)f(lo)s(cation)g(of)h(the)g(v)-5 b(ariable)37
b(where)h(it)150 1407 y(p)s(oin)m(ts,)j(using)c(`)p Fo(p/a)30
b Fn(p)s(oin)m(ter)7 b Fu('.)66 b(This)38 b(in)m(terprets)g(the)i
(address)e(in)g(sym)m(b)s(olic)g(form.)67 b(F)-8 b(or)40
b(example,)150 1516 y(here)30 b(GDB)i(sho)m(ws)e(that)h(a)g(v)-5
b(ariable)29 b Fo(ptt)g Fu(p)s(oin)m(ts)g(at)j(another)e(v)-5
b(ariable)29 b Fo(t)p Fu(,)i(de\014ned)e(in)g(`)p Fo(hi2.c)p
Fu(':)390 1644 y Fo(\(gdb\))46 b(set)h(print)g(symbol-filename)c(on)390
1748 y(\(gdb\))j(p/a)h(ptt)390 1852 y($4)g(=)h(0xe008)e(<t)h(in)g
(hi2.c>)390 1980 y Fr(Warning:)52 b Fu(F)-8 b(or)34 b(p)s(oin)m(ters)e
(that)i(p)s(oin)m(t)f(to)h(a)f(lo)s(cal)g(v)-5 b(ariable,)33
b(`)p Fo(p/a)p Fu(')g(do)s(es)g(not)h(sho)m(w)f(the)390
2084 y(sym)m(b)s(ol)23 b(name)i(and)f(\014lename)g(of)h(the)g(referen)m
(t,)h(ev)m(en)g(with)d(the)i(appropriate)f Fo(set)29
b(print)390 2187 y Fu(options)h(turned)f(on.)275 2321
y(Other)g(settings)i(con)m(trol)g(ho)m(w)f(di\013eren)m(t)g(kinds)e(of)
j(ob)5 b(jects)31 b(are)g(prin)m(ted:)150 2528 y Fo(set)e(print)g
(array)150 2638 y(set)g(print)g(array)g(on)630 2747 y
Fu(Prett)m(y)41 b(prin)m(t)d(arra)m(ys.)70 b(This)38
b(format)i(is)f(more)h(con)m(v)m(enien)m(t)g(to)h(read,)h(but)d(uses)h
(more)630 2857 y(space.)h(The)30 b(default)g(is)f(o\013.)150
3015 y Fo(set)g(print)g(array)g(off)630 3125 y Fu(Return)h(to)h
(compressed)f(format)g(for)h(arra)m(ys.)150 3283 y Fo(show)e(print)g
(array)630 3392 y Fu(Sho)m(w)h(whether)g(compressed)g(or)g(prett)m(y)h
(format)g(is)e(selected)i(for)f(displa)m(ying)e(arra)m(ys.)150
3550 y Fo(set)h(print)g(elements)g Fn(n)m(um)m(b)s(er-of-elemen)m(ts)
630 3660 y Fu(Set)f(a)g(limit)d(on)j(ho)m(w)f(man)m(y)h(elemen)m(ts)g
(of)g(an)f(arra)m(y)h(GDB)h(will)c(prin)m(t.)38 b(If)28
b(GDB)g(is)f(prin)m(t-)630 3770 y(ing)k(a)i(large)g(arra)m(y)-8
b(,)34 b(it)d(stops)i(prin)m(ting)d(after)j(it)f(has)g(prin)m(ted)f
(the)h(n)m(um)m(b)s(er)f(of)i(elemen)m(ts)630 3879 y(set)j(b)m(y)g(the)
g Fo(set)30 b(print)f(elements)k Fu(command.)57 b(This)34
b(limit)g(also)h(applies)f(to)j(the)f(dis-)630 3989 y(pla)m(y)c(of)g
(strings.)45 b(Setting)32 b Fn(n)m(um)m(b)s(er-of-elemen)m(ts)k
Fu(to)d(zero)g(means)g(that)f(the)h(prin)m(ting)d(is)630
4098 y(unlimited.)150 4257 y Fo(show)f(print)g(elements)630
4366 y Fu(Displa)m(y)36 b(the)i(n)m(um)m(b)s(er)d(of)j(elemen)m(ts)f
(of)h(a)f(large)g(arra)m(y)h(that)g(GDB)g(will)c(prin)m(t.)60
b(If)37 b(the)630 4476 y(n)m(um)m(b)s(er)29 b(is)g(0,)i(then)g(the)f
(prin)m(ting)e(is)i(unlimited.)150 4634 y Fo(set)f(print)g(null-stop)
630 4743 y Fu(Cause)34 b(GDB)h(to)g(stop)g(prin)m(ting)d(the)i(c)m
(haracters)i(of)f(an)f(arra)m(y)h(when)e(the)h(\014rst)g
Ft(NULL)630 4853 y Fu(is)39 b(encoun)m(tered.)70 b(This)38
b(is)g(useful)h(when)f(large)i(arra)m(ys)h(actually)e(con)m(tain)h
(only)f(short)630 4963 y(strings.)150 5121 y Fo(set)29
b(print)g(pretty)g(on)630 5230 y Fu(Cause)39 b(GDB)h(to)g(prin)m(t)d
(structures)i(in)e(an)i(inden)m(ted)f(format)i(with)d(one)j(mem)m(b)s
(er)e(p)s(er)630 5340 y(line,)29 b(lik)m(e)h(this:)p
eop
%%Page: 64 66
64 65 bop 150 -116 a Fu(64)2644 b(Debugging)31 b(with)e(GDB)870
299 y Fo($1)47 b(=)h({)965 403 y(next)f(=)h(0x0,)965
506 y(flags)f(=)g({)1061 610 y(sweet)f(=)i(1,)1061 714
y(sour)f(=)g(1)965 818 y(},)965 922 y(meat)g(=)h(0x54)e("Pork")870
1025 y(})150 1167 y(set)29 b(print)g(pretty)g(off)630
1277 y Fu(Cause)h(GDB)i(to)f(prin)m(t)e(structures)h(in)f(a)h(compact)i
(format,)f(lik)m(e)f(this:)870 1404 y Fo($1)47 b(=)h({next)e(=)h(0x0,)g
(flags)f(=)i({sweet)e(=)h(1,)h(sour)e(=)i(1},)f(\\)870
1507 y(meat)g(=)g(0x54)g("Pork"})630 1633 y Fu(This)29
b(is)g(the)i(default)e(format.)150 1790 y Fo(show)g(print)g(pretty)630
1899 y Fu(Sho)m(w)h(whic)m(h)f(format)i(GDB)g(is)f(using)e(to)k(prin)m
(t)d(structures.)150 2055 y Fo(set)g(print)g(sevenbit-strings)d(on)630
2165 y Fu(Prin)m(t)36 b(using)f(only)h(sev)m(en-bit)g(c)m(haracters;)42
b(if)36 b(this)f(option)h(is)g(set,)j(GDB)f(displa)m(ys)d(an)m(y)630
2275 y(eigh)m(t-bit)k(c)m(haracters)i(\(in)d(strings)g(or)h(c)m
(haracter)i(v)-5 b(alues\))39 b(using)f(the)h(notation)h
Fo(\\)p Fn(nnn)p Fu(.)630 2384 y(This)27 b(setting)h(is)g(b)s(est)g(if)
g(y)m(ou)h(are)g(w)m(orking)e(in)h(English)e(\()p Ft(asci)r(i)p
Fu(\))j(and)f(y)m(ou)h(use)f(the)h(high-)630 2494 y(order)h(bit)f(of)i
(c)m(haracters)h(as)e(a)h(mark)m(er)g(or)f(\\meta")i(bit.)150
2650 y Fo(set)d(print)g(sevenbit-strings)d(off)630 2760
y Fu(Prin)m(t)32 b(full)e(eigh)m(t-bit)i(c)m(haracters.)49
b(This)31 b(allo)m(ws)h(the)h(use)f(of)h(more)g(in)m(ternational)e(c)m
(har-)630 2869 y(acter)h(sets,)f(and)e(is)h(the)g(default.)150
3025 y Fo(show)f(print)g(sevenbit-strings)630 3135 y
Fu(Sho)m(w)h(whether)g(or)g(not)h(GDB)g(is)f(prin)m(ting)e(only)h(sev)m
(en-bit)i(c)m(haracters.)150 3291 y Fo(set)e(print)g(union)g(on)630
3401 y Fu(T)-8 b(ell)26 b(GDB)i(to)g(prin)m(t)e(unions)f(whic)m(h)h
(are)h(con)m(tained)g(in)f(structures.)39 b(This)25 b(is)h(the)i
(default)630 3510 y(setting.)150 3667 y Fo(set)h(print)g(union)g(off)
630 3776 y Fu(T)-8 b(ell)29 b(GDB)j(not)e(to)i(prin)m(t)d(unions)f
(whic)m(h)h(are)i(con)m(tained)f(in)f(structures.)150
3933 y Fo(show)g(print)g(union)630 4042 y Fu(Ask)e(GDB)h(whether)e(or)h
(not)g(it)f(will)e(prin)m(t)i(unions)f(whic)m(h)g(are)j(con)m(tained)f
(in)e(structures.)630 4175 y(F)-8 b(or)31 b(example,)f(giv)m(en)h(the)f
(declarations)870 4302 y Fo(typedef)46 b(enum)g({Tree,)h(Bug})f
(Species;)870 4406 y(typedef)g(enum)g({Big_tree,)f(Acorn,)i(Seedling})e
(Tree_forms;)870 4510 y(typedef)h(enum)g({Caterpillar,)f(Cocoon,)g
(Butterfly})1538 4614 y(Bug_forms;)870 4821 y(struct)h(thing)g({)965
4925 y(Species)g(it;)965 5029 y(union)h({)1061 5132 y(Tree_forms)e
(tree;)1061 5236 y(Bug_forms)g(bug;)965 5340 y(})j(form;)p
eop
%%Page: 65 67
65 66 bop 150 -116 a Fu(Chapter)30 b(8:)41 b(Examining)28
b(Data)2392 b(65)870 299 y Fo(};)870 506 y(struct)46
b(thing)g(foo)h(=)h({Tree,)e({Acorn}};)630 637 y Fu(with)29
b Fo(set)h(print)e(union)h(on)h Fu(in)f(e\013ect)j(`)p
Fo(p)e(foo)p Fu(')g(w)m(ould)f(prin)m(t)870 761 y Fo($1)47
b(=)h({it)f(=)g(Tree,)f(form)h(=)g({tree)g(=)g(Acorn,)f(bug)h(=)h
(Cocoon}})630 892 y Fu(and)30 b(with)f Fo(set)g(print)g(union)g(off)h
Fu(in)f(e\013ect)j(it)e(w)m(ould)f(prin)m(t)870 1016
y Fo($1)47 b(=)h({it)f(=)g(Tree,)f(form)h(=)g({...}})150
1143 y Fu(These)30 b(settings)g(are)h(of)g(in)m(terest)f(when)g
(debugging)f(C)p Fo(++)g Fu(programs:)150 1335 y Fo(set)g(print)g
(demangle)150 1445 y(set)g(print)g(demangle)g(on)630
1554 y Fu(Prin)m(t)h(C)p Fo(++)f Fu(names)i(in)e(their)h(source)h(form)
f(rather)g(than)h(in)e(the)i(enco)s(ded)f(\(\\mangled"\))630
1664 y(form)36 b(passed)g(to)i(the)f(assem)m(bler)f(and)g(link)m(er)f
(for)h(t)m(yp)s(e-safe)i(link)-5 b(age.)59 b(The)36 b(default)g(is)630
1773 y(`)p Fo(on)p Fu('.)150 1925 y Fo(show)29 b(print)g(demangle)630
2034 y Fu(Sho)m(w)h(whether)g(C)p Fo(++)f Fu(names)h(are)h(prin)m(ted)e
(in)g(mangled)h(or)g(demangled)g(form.)150 2185 y Fo(set)f(print)g
(asm-demangle)150 2295 y(set)g(print)g(asm-demangle)e(on)630
2404 y Fu(Prin)m(t)j(C)p Fo(++)g Fu(names)h(in)e(their)h(source)i(form)
e(rather)h(than)g(their)f(mangled)g(form,)h(ev)m(en)g(in)630
2514 y(assem)m(bler)f(co)s(de)g(prin)m(touts)g(suc)m(h)g(as)g
(instruction)f(disassem)m(blies.)38 b(The)30 b(default)f(is)h(o\013.)
150 2665 y Fo(show)f(print)g(asm-demangle)630 2775 y
Fu(Sho)m(w)38 b(whether)f(C)p Fo(++)g Fu(names)h(in)f(assem)m(bly)g
(listings)f(are)i(prin)m(ted)f(in)g(mangled)g(or)h(de-)630
2884 y(mangled)30 b(form.)150 3035 y Fo(set)f(demangle-style)e
Fn(st)m(yle)630 3145 y Fu(Cho)s(ose)21 b(among)i(sev)m(eral)f(enco)s
(ding)e(sc)m(hemes)j(used)e(b)m(y)g(di\013eren)m(t)g(compilers)f(to)j
(represen)m(t)630 3255 y(C)p Fo(++)29 b Fu(names.)41
b(The)30 b(c)m(hoices)h(for)f Fn(st)m(yle)36 b Fu(are)31
b(curren)m(tly:)630 3406 y Fo(auto)288 b Fu(Allo)m(w)25
b(GDB)i(to)f(c)m(ho)s(ose)h(a)f(deco)s(ding)e(st)m(yle)i(b)m(y)g(insp)s
(ecting)d(y)m(our)j(program.)630 3557 y Fo(gnu)336 b
Fu(Deco)s(de)30 b(based)f(on)g(the)h Ft(gnu)f Fu(C)p
Fo(++)f Fu(compiler)g(\()p Fo(g++)p Fu(\))h(enco)s(ding)f(algorithm.)
1110 3666 y(This)h(is)g(the)i(default.)630 3817 y Fo(hp)384
b Fu(Deco)s(de)31 b(based)f(on)h(the)f(HP)h(ANSI)f(C)p
Fo(++)f Fu(\()p Fo(aCC)p Fu(\))h(enco)s(ding)g(algorithm.)630
3968 y Fo(lucid)240 b Fu(Deco)s(de)24 b(based)f(on)g(the)h(Lucid)d(C)p
Fo(++)i Fu(compiler)e(\()p Fo(lcc)p Fu(\))i(enco)s(ding)g(algorithm.)
630 4120 y Fo(arm)336 b Fu(Deco)s(de)30 b(using)d(the)h(algorithm)g(in)
f(the)i Fn(C)p Fo(++)e Fn(Annotated)i(Reference)g(Man-)1110
4229 y(ual)p Fu(.)59 b Fm(W)-8 b(arning:)54 b Fu(this)36
b(setting)h(alone)g(is)f(not)h(su\016cien)m(t)f(to)i(allo)m(w)e(debug-)
1110 4339 y(ging)44 b Fo(cfront)p Fu(-generated)g(executables.)83
b(GDB)45 b(w)m(ould)e(require)g(further)1110 4448 y(enhancemen)m(t)31
b(to)g(p)s(ermit)e(that.)630 4599 y(If)h(y)m(ou)h(omit)f
Fn(st)m(yle)p Fu(,)h(y)m(ou)f(will)e(see)j(a)g(list)e(of)h(p)s(ossible)
e(formats.)150 4751 y Fo(show)h(demangle-style)630 4860
y Fu(Displa)m(y)h(the)g(enco)s(ding)f(st)m(yle)i(curren)m(tly)e(in)g
(use)i(for)f(deco)s(ding)f(C)p Fo(++)g Fu(sym)m(b)s(ols.)150
5011 y Fo(set)g(print)g(object)150 5121 y(set)g(print)g(object)g(on)630
5230 y Fu(When)36 b(displa)m(ying)d(a)j(p)s(oin)m(ter)f(to)i(an)e(ob)5
b(ject,)39 b(iden)m(tify)34 b(the)i Fr(actual)46 b Fu(\(deriv)m(ed\))36
b(t)m(yp)s(e)g(of)630 5340 y(the)31 b(ob)5 b(ject)31
b(rather)f(than)g(the)h Fr(de)-5 b(clar)g(e)g(d)42 b
Fu(t)m(yp)s(e,)31 b(using)e(the)h(virtual)f(function)g(table.)p
eop
%%Page: 66 68
66 67 bop 150 -116 a Fu(66)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(set)g(print)g(object)g(off)630 408 y Fu(Displa)m(y)c(only)h
(the)g(declared)f(t)m(yp)s(e)i(of)f(ob)5 b(jects,)28
b(without)d(reference)i(to)g(the)f(virtual)f(func-)630
518 y(tion)30 b(table.)40 b(This)29 b(is)g(the)i(default)f(setting.)150
671 y Fo(show)f(print)g(object)630 780 y Fu(Sho)m(w)h(whether)g
(actual,)h(or)f(declared,)g(ob)5 b(ject)31 b(t)m(yp)s(es)g(are)f
(displa)m(y)m(ed.)150 933 y Fo(set)f(print)g(static-members)150
1042 y(set)g(print)g(static-members)e(on)630 1152 y Fu(Prin)m(t)i
(static)i(mem)m(b)s(ers)f(when)f(displa)m(ying)f(a)j(C)p
Fo(++)e Fu(ob)5 b(ject.)42 b(The)30 b(default)f(is)h(on.)150
1305 y Fo(set)f(print)g(static-members)e(off)630 1414
y Fu(Do)k(not)g(prin)m(t)e(static)i(mem)m(b)s(ers)e(when)h(displa)m
(ying)e(a)i(C)p Fo(++)g Fu(ob)5 b(ject.)150 1567 y Fo(show)29
b(print)g(static-members)630 1677 y Fu(Sho)m(w)h(whether)g(C)p
Fo(++)f Fu(static)i(mem)m(b)s(ers)f(are)g(prin)m(ted,)g(or)g(not.)150
1829 y Fo(set)f(print)g(vtbl)150 1939 y(set)g(print)g(vtbl)h(on)630
2048 y Fu(Prett)m(y)h(prin)m(t)e(C)p Fo(++)h Fu(virtual)e(function)i
(tables.)40 b(The)30 b(default)f(is)h(o\013.)150 2201
y Fo(set)f(print)g(vtbl)h(off)630 2311 y Fu(Do)h(not)g(prett)m(y)g
(prin)m(t)e(C)p Fo(++)g Fu(virtual)g(function)g(tables.)150
2463 y Fo(show)g(print)g(vtbl)630 2573 y Fu(Sho)m(w)h(whether)g(C)p
Fo(++)f Fu(virtual)g(function)g(tables)h(are)h(prett)m(y)g(prin)m(ted,)
e(or)h(not.)150 2820 y Fs(8.8)68 b(V)-11 b(alue)45 b(history)275
3009 y Fu(V)-8 b(alues)29 b(prin)m(ted)f(b)m(y)h(the)g
Fo(print)f Fu(command)h(are)h(sa)m(v)m(ed)g(in)e(the)i(GDB)g
Fn(v)-5 b(alue)29 b(history)p Fu(.)39 b(This)28 b(allo)m(ws)150
3119 y(y)m(ou)i(to)g(refer)g(to)g(them)g(in)e(other)i(expressions.)39
b(V)-8 b(alues)30 b(are)g(k)m(ept)g(un)m(til)e(the)i(sym)m(b)s(ol)e
(table)i(is)f(re-read)150 3228 y(or)36 b(discarded)e(\(for)i(example)g
(with)f(the)h Fo(file)f Fu(or)h Fo(symbol-file)d Fu(commands\).)57
b(When)36 b(the)g(sym)m(b)s(ol)150 3338 y(table)29 b(c)m(hanges,)i(the)
e(v)-5 b(alue)28 b(history)g(is)g(discarded,)g(since)h(the)g(v)-5
b(alues)28 b(ma)m(y)i(con)m(tain)f(p)s(oin)m(ters)f(bac)m(k)i(to)150
3448 y(the)h(t)m(yp)s(es)f(de\014ned)f(in)g(the)i(sym)m(b)s(ol)e
(table.)275 3579 y(The)35 b(v)-5 b(alues)35 b(prin)m(ted)g(are)h(giv)m
(en)g Fn(history)f(n)m(um)m(b)s(ers)j Fu(b)m(y)e(whic)m(h)f(y)m(ou)h
(can)g(refer)g(to)h(them.)57 b(These)150 3688 y(are)31
b(successiv)m(e)g(in)m(tegers)g(starting)g(with)e(one.)43
b Fo(print)29 b Fu(sho)m(ws)i(y)m(ou)g(the)g(history)f(n)m(um)m(b)s(er)
f(assigned)h(to)150 3798 y(a)h(v)-5 b(alue)30 b(b)m(y)g(prin)m(ting)e
(`)p Fo($)p Fn(n)m(um)i Fo(=)g Fu(')g(b)s(efore)g(the)h(v)-5
b(alue;)30 b(here)g Fn(n)m(um)g Fu(is)f(the)i(history)e(n)m(um)m(b)s
(er.)275 3929 y(T)-8 b(o)30 b(refer)g(to)h(an)m(y)g(previous)d(v)-5
b(alue,)30 b(use)g(`)p Fo($)p Fu(')h(follo)m(w)m(ed)e(b)m(y)i(the)f(v)
-5 b(alue's)30 b(history)f(n)m(um)m(b)s(er.)39 b(The)30
b(w)m(a)m(y)150 4039 y Fo(print)g Fu(lab)s(els)h(its)g(output)g(is)g
(designed)g(to)i(remind)d(y)m(ou)i(of)g(this.)44 b(Just)32
b Fo($)f Fu(refers)h(to)g(the)h(most)f(recen)m(t)150
4148 y(v)-5 b(alue)27 b(in)f(the)h(history)-8 b(,)28
b(and)e Fo($$)h Fu(refers)g(to)h(the)f(v)-5 b(alue)27
b(b)s(efore)g(that.)40 b Fo($$)p Fn(n)26 b Fu(refers)h(to)h(the)f
Fn(n)p Fu(th)g(v)-5 b(alue)26 b(from)150 4258 y(the)31
b(end;)g Fo($$2)f Fu(is)g(the)h(v)-5 b(alue)31 b(just)f(prior)g(to)h
Fo($$)p Fu(,)g Fo($$1)f Fu(is)g(equiv)-5 b(alen)m(t)31
b(to)g Fo($$)p Fu(,)g(and)g Fo($$0)f Fu(is)g(equiv)-5
b(alen)m(t)30 b(to)150 4367 y Fo($)p Fu(.)275 4498 y(F)-8
b(or)28 b(example,)h(supp)s(ose)d(y)m(ou)j(ha)m(v)m(e)g(just)e(prin)m
(ted)g(a)h(p)s(oin)m(ter)f(to)i(a)g(structure)e(and)g(w)m(an)m(t)i(to)g
(see)g(the)150 4608 y(con)m(ten)m(ts)j(of)f(the)f(structure.)40
b(It)31 b(su\016ces)f(to)h(t)m(yp)s(e)390 4733 y Fo(p)47
b(*$)275 4864 y Fu(If)28 b(y)m(ou)h(ha)m(v)m(e)h(a)f(c)m(hain)f(of)h
(structures)f(where)h(the)f(comp)s(onen)m(t)h Fo(next)f
Fu(p)s(oin)m(ts)g(to)h(the)g(next)g(one,)h(y)m(ou)150
4974 y(can)h(prin)m(t)e(the)h(con)m(ten)m(ts)i(of)f(the)f(next)h(one)g
(with)e(this:)390 5099 y Fo(p)47 b(*$.next)150 5230 y
Fu(Y)-8 b(ou)31 b(can)h(prin)m(t)d(successiv)m(e)j(links)c(in)i(the)h
(c)m(hain)g(b)m(y)g(rep)s(eating)f(this)g(command|whic)m(h)f(y)m(ou)j
(can)f(do)150 5340 y(b)m(y)f(just)g(t)m(yping)739 5337
y Fj(h)p 763 5284 151 4 v 763 5340 a Fi(RET)p 763 5355
V 910 5337 a Fj(i)940 5340 y Fu(.)p eop
%%Page: 67 69
67 68 bop 150 -116 a Fu(Chapter)30 b(8:)41 b(Examining)28
b(Data)2392 b(67)275 299 y(Note)29 b(that)f(the)h(history)d(records)i
(v)-5 b(alues,)28 b(not)g(expressions.)39 b(If)27 b(the)i(v)-5
b(alue)27 b(of)h Fo(x)g Fu(is)f(4)h(and)f(y)m(ou)i(t)m(yp)s(e)150
408 y(these)i(commands:)390 548 y Fo(print)46 b(x)390
652 y(set)h(x=5)150 797 y Fu(then)28 b(the)g(v)-5 b(alue)27
b(recorded)h(in)e(the)i(v)-5 b(alue)28 b(history)f(b)m(y)g(the)i
Fo(print)d Fu(command)i(remains)e(4)j(ev)m(en)f(though)150
906 y(the)j(v)-5 b(alue)29 b(of)i Fo(x)f Fu(has)g(c)m(hanged.)150
1148 y Fo(show)f(values)630 1257 y Fu(Prin)m(t)h(the)g(last)h(ten)g(v)
-5 b(alues)30 b(in)f(the)i(v)-5 b(alue)30 b(history)-8
b(,)30 b(with)f(their)h(item)g(n)m(um)m(b)s(ers.)40 b(This)29
b(is)630 1367 y(lik)m(e)j(`)p Fo(p)48 b($$9)p Fu(')31
b(rep)s(eated)i(ten)g(times,)g(except)g(that)g Fo(show)c(values)i
Fu(do)s(es)h(not)h(c)m(hange)h(the)630 1477 y(history)-8
b(.)150 1647 y Fo(show)29 b(values)g Fn(n)630 1756 y
Fu(Prin)m(t)g(ten)i(history)e(v)-5 b(alues)30 b(cen)m(tered)h(on)g
(history)e(item)h(n)m(um)m(b)s(er)f Fn(n)p Fu(.)150 1926
y Fo(show)g(values)g(+)630 2036 y Fu(Prin)m(t)e(ten)h(history)f(v)-5
b(alues)27 b(just)h(after)g(the)g(v)-5 b(alues)28 b(last)f(prin)m(ted.)
39 b(If)27 b(no)h(more)g(v)-5 b(alues)28 b(are)630 2146
y(a)m(v)-5 b(ailable,)30 b Fo(show)f(values)g(+)h Fu(pro)s(duces)f(no)h
(displa)m(y)-8 b(.)275 2321 y(Pressing)636 2318 y Fj(h)p
660 2265 151 4 v 660 2321 a Fi(RET)p 660 2336 V 807 2318
a Fj(i)867 2321 y Fu(to)31 b(rep)s(eat)f Fo(show)g(values)e
Fn(n)i Fu(has)g(exactly)h(the)g(same)g(e\013ect)h(as)e(`)p
Fo(show)g(values)e(+)p Fu('.)150 2605 y Fs(8.9)68 b(Con)l(v)l(enience)
46 b(v)-7 b(ariables)275 2809 y Fu(GDB)28 b(pro)m(vides)f
Fn(con)m(v)m(enience)i(v)-5 b(ariables)30 b Fu(that)f(y)m(ou)f(can)g
(use)f(within)e(GDB)k(to)g(hold)d(on)i(to)g(a)g(v)-5
b(alue)150 2918 y(and)32 b(refer)g(to)i(it)e(later.)47
b(These)33 b(v)-5 b(ariables)31 b(exist)h(en)m(tirely)g(within)e(GDB;)k
(they)f(are)g(not)g(part)f(of)h(y)m(our)150 3028 y(program,)25
b(and)f(setting)g(a)h(con)m(v)m(enience)g(v)-5 b(ariable)23
b(has)h(no)h(direct)e(e\013ect)j(on)e(further)f(execution)i(of)f(y)m
(our)150 3137 y(program.)40 b(That)31 b(is)e(wh)m(y)h(y)m(ou)h(can)f
(use)h(them)f(freely)-8 b(.)275 3282 y(Con)m(v)m(enience)32
b(v)-5 b(ariables)31 b(are)i(pre\014xed)e(with)f(`)p
Fo($)p Fu('.)47 b(An)m(y)32 b(name)g(preceded)g(b)m(y)g(`)p
Fo($)p Fu(')h(can)f(b)s(e)g(used)f(for)150 3392 y(a)39
b(con)m(v)m(enience)g(v)-5 b(ariable,)40 b(unless)d(it)g(is)h(one)h(of)
f(the)h(prede\014ned)d(mac)m(hine-sp)s(eci\014c)i(register)g(names)150
3502 y(\(see)c(Section)e(8.10)j([Registers],)f(page)f(68\).)50
b(\(V)-8 b(alue)33 b(history)f(references,)i(in)d(con)m(trast,)k(are)e
Fr(numb)-5 b(ers)150 3611 y Fu(preceded)30 b(b)m(y)g(`)p
Fo($)p Fu('.)41 b(See)31 b(Section)f(8.8)h([V)-8 b(alue)31
b(history],)f(page)h(66.\))275 3756 y(Y)-8 b(ou)35 b(can)h(sa)m(v)m(e)h
(a)e(v)-5 b(alue)35 b(in)f(a)i(con)m(v)m(enience)g(v)-5
b(ariable)34 b(with)g(an)h(assignmen)m(t)g(expression,)h(just)f(as)150
3866 y(y)m(ou)c(w)m(ould)e(set)i(a)g(v)-5 b(ariable)29
b(in)g(y)m(our)h(program.)41 b(F)-8 b(or)31 b(example:)390
4005 y Fo(set)47 b($foo)g(=)g(*object_ptr)150 4151 y
Fu(w)m(ould)29 b(sa)m(v)m(e)j(in)d Fo($foo)g Fu(the)i(v)-5
b(alue)30 b(con)m(tained)g(in)f(the)i(ob)5 b(ject)31
b(p)s(oin)m(ted)f(to)h(b)m(y)f Fo(object_ptr)p Fu(.)275
4296 y(Using)f(a)i(con)m(v)m(enience)g(v)-5 b(ariable)29
b(for)h(the)h(\014rst)e(time)h(creates)i(it,)e(but)f(its)h(v)-5
b(alue)30 b(is)f Fo(void)g Fu(un)m(til)g(y)m(ou)150 4405
y(assign)h(a)g(new)g(v)-5 b(alue.)41 b(Y)-8 b(ou)30 b(can)h(alter)f
(the)h(v)-5 b(alue)30 b(with)f(another)h(assignmen)m(t)h(at)g(an)m(y)g
(time.)275 4551 y(Con)m(v)m(enience)k(v)-5 b(ariables)34
b(ha)m(v)m(e)i(no)f(\014xed)g(t)m(yp)s(es.)55 b(Y)-8
b(ou)35 b(can)h(assign)e(a)h(con)m(v)m(enience)i(v)-5
b(ariable)34 b(an)m(y)150 4660 y(t)m(yp)s(e)f(of)g(v)-5
b(alue,)34 b(including)29 b(structures)k(and)f(arra)m(ys,)i(ev)m(en)g
(if)e(that)i(v)-5 b(ariable)32 b(already)g(has)h(a)g(v)-5
b(alue)33 b(of)150 4770 y(a)e(di\013eren)m(t)f(t)m(yp)s(e.)42
b(The)30 b(con)m(v)m(enience)i(v)-5 b(ariable,)30 b(when)f(used)h(as)h
(an)g(expression,)f(has)g(the)h(t)m(yp)s(e)g(of)g(its)150
4879 y(curren)m(t)f(v)-5 b(alue.)150 5121 y Fo(show)29
b(convenience)630 5230 y Fu(Prin)m(t)h(a)h(list)e(of)i(con)m(v)m
(enience)g(v)-5 b(ariables)30 b(used)g(so)h(far,)f(and)g(their)g(v)-5
b(alues.)41 b(Abbreviated)630 5340 y Fo(show)29 b(con)p
Fu(.)p eop
%%Page: 68 70
68 69 bop 150 -116 a Fu(68)2644 b(Debugging)31 b(with)e(GDB)275
299 y(One)36 b(of)h(the)g(w)m(a)m(ys)h(to)g(use)e(a)i(con)m(v)m
(enience)g(v)-5 b(ariable)35 b(is)h(as)h(a)h(coun)m(ter)f(to)h(b)s(e)e
(incremen)m(ted)h(or)g(a)150 408 y(p)s(oin)m(ter)31 b(to)h(b)s(e)f(adv)
-5 b(anced.)45 b(F)-8 b(or)32 b(example,)g(to)g(prin)m(t)f(a)h(\014eld)
e(from)h(successiv)m(e)h(elemen)m(ts)g(of)g(an)f(arra)m(y)150
518 y(of)g(structures:)390 648 y Fo(set)47 b($i)g(=)h(0)390
752 y(print)e(bar[$i++]->contents)150 888 y Fu(Rep)s(eat)31
b(that)g(command)f(b)m(y)g(t)m(yping)1482 885 y Fj(h)p
1506 832 151 4 v 1506 888 a Fi(RET)p 1506 903 V 1653
885 a Fj(i)1683 888 y Fu(.)275 1024 y(Some)35 b(con)m(v)m(enience)i(v)
-5 b(ariables)35 b(are)h(created)g(automatically)g(b)m(y)g(GDB)g(and)g
(giv)m(en)f(v)-5 b(alues)35 b(lik)m(ely)150 1133 y(to)c(b)s(e)f
(useful.)150 1347 y Fo($_)384 b Fu(The)41 b(v)-5 b(ariable)41
b Fo($_)h Fu(is)f(automatically)g(set)i(b)m(y)f(the)g
Fo(x)f Fu(command)h(to)h(the)f(last)g(address)630 1456
y(examined)c(\(see)i(Section)e(8.5)i([Examining)d(memory],)k(page)f
(59\).)67 b(Other)38 b(commands)630 1566 y(whic)m(h)c(pro)m(vide)g(a)i
(default)f(address)f(for)h Fo(x)g Fu(to)h(examine)f(also)g(set)h
Fo($_)f Fu(to)h(that)g(address;)630 1675 y(these)g(commands)f(include)e
Fo(info)c(line)34 b Fu(and)h Fo(info)29 b(breakpoint)p
Fu(.)53 b(The)34 b(t)m(yp)s(e)i(of)f Fo($_)g Fu(is)630
1785 y Fo(void)29 b(*)h Fu(except)g(when)f(set)h(b)m(y)f(the)h
Fo(x)g Fu(command,)f(in)g(whic)m(h)f(case)j(it)e(is)g(a)h(p)s(oin)m
(ter)e(to)j(the)630 1895 y(t)m(yp)s(e)g(of)f Fo($__)p
Fu(.)150 2055 y Fo($__)336 b Fu(The)30 b(v)-5 b(ariable)30
b Fo($__)f Fu(is)h(automatically)g(set)i(b)m(y)e(the)h
Fo(x)f Fu(command)h(to)g(the)g(v)-5 b(alue)30 b(found)f(in)630
2165 y(the)g(last)f(address)f(examined.)39 b(Its)29 b(t)m(yp)s(e)f(is)f
(c)m(hosen)i(to)g(matc)m(h)h(the)e(format)h(in)e(whic)m(h)g(the)630
2275 y(data)k(w)m(as)g(prin)m(ted.)150 2435 y Fo($_exitcode)630
2545 y Fu(The)21 b(v)-5 b(ariable)20 b Fo($_exitcode)f
Fu(is)i(automatically)g(set)h(to)g(the)g(exit)f(co)s(de)h(when)e(the)i
(program)630 2654 y(b)s(eing)29 b(debugged)h(terminates.)150
2915 y Fs(8.10)68 b(Registers)275 3109 y Fu(Y)-8 b(ou)45
b(can)h(refer)f(to)h(mac)m(hine)f(register)g(con)m(ten)m(ts,)51
b(in)44 b(expressions,)k(as)e(v)-5 b(ariables)44 b(with)g(names)150
3219 y(starting)23 b(with)f(`)p Fo($)p Fu('.)39 b(The)23
b(names)h(of)f(registers)g(are)h(di\013eren)m(t)f(for)h(eac)m(h)g(mac)m
(hine;)i(use)d Fo(info)29 b(registers)150 3328 y Fu(to)i(see)g(the)g
(names)f(used)g(on)g(y)m(our)g(mac)m(hine.)150 3542 y
Fo(info)f(registers)630 3651 y Fu(Prin)m(t)37 b(the)i(names)g(and)e(v)
-5 b(alues)38 b(of)h(all)e(registers)h(except)i(\015oating-p)s(oin)m(t)
e(registers)g(\(in)630 3761 y(the)31 b(selected)f(stac)m(k)i(frame\).)
150 3922 y Fo(info)d(all-registers)630 4031 y Fu(Prin)m(t)g(the)i
(names)f(and)g(v)-5 b(alues)30 b(of)g(all)f(registers,)i(including)c
(\015oating-p)s(oin)m(t)i(registers.)150 4192 y Fo(info)g(registers)f
Fn(regname)36 b Fo(...)630 4302 y Fu(Prin)m(t)d(the)g
Fn(relativized)k Fu(v)-5 b(alue)33 b(of)g(eac)m(h)i(sp)s(eci\014ed)d
(register)i Fn(regname)p Fu(.)51 b(As)34 b(discussed)d(in)630
4411 y(detail)i(b)s(elo)m(w,)i(register)f(v)-5 b(alues)34
b(are)g(normally)f(relativ)m(e)h(to)h(the)f(selected)h(stac)m(k)h
(frame.)630 4521 y Fn(regname)d Fu(ma)m(y)28 b(b)s(e)f(an)m(y)g
(register)h(name)f(v)-5 b(alid)26 b(on)h(the)h(mac)m(hine)f(y)m(ou)g
(are)h(using,)f(with)f(or)630 4631 y(without)j(the)i(initial)d(`)p
Fo($)p Fu('.)275 4792 y(GDB)41 b(has)g(four)f(\\standard")g(register)h
(names)f(that)i(are)f(a)m(v)-5 b(ailable)40 b(\(in)f(expressions\))h
(on)h(most)150 4902 y(mac)m(hines|whenev)m(er)36 b(they)h(do)f(not)h
(con\015ict)f(with)g(an)g(arc)m(hitecture's)i(canonical)e(mnemonics)f
(for)150 5011 y(registers.)55 b(The)34 b(register)h(names)g
Fo($pc)f Fu(and)h Fo($sp)f Fu(are)i(used)e(for)h(the)g(program)g(coun)m
(ter)h(register)f(and)150 5121 y(the)i(stac)m(k)i(p)s(oin)m(ter.)60
b Fo($fp)36 b Fu(is)g(used)g(for)h(a)h(register)f(that)h(con)m(tains)f
(a)g(p)s(oin)m(ter)f(to)i(the)g(curren)m(t)e(stac)m(k)150
5230 y(frame,)d(and)f Fo($ps)f Fu(is)g(used)h(for)g(a)g(register)h
(that)f(con)m(tains)h(the)f(pro)s(cessor)g(status.)47
b(F)-8 b(or)33 b(example,)g(y)m(ou)150 5340 y(could)c(prin)m(t)g(the)i
(program)f(coun)m(ter)h(in)e(hex)h(with)p eop
%%Page: 69 71
69 70 bop 150 -116 a Fu(Chapter)30 b(8:)41 b(Examining)28
b(Data)2392 b(69)390 299 y Fo(p/x)47 b($pc)150 436 y
Fu(or)30 b(prin)m(t)f(the)i(instruction)d(to)j(b)s(e)f(executed)h(next)
g(with)390 568 y Fo(x/i)47 b($pc)150 705 y Fu(or)30 b(add)g(four)g(to)h
(the)f(stac)m(k)i(p)s(oin)m(ter)1412 672 y Fh(2)1479
705 y Fu(with)390 837 y Fo(set)47 b($sp)g(+=)g(4)275
974 y Fu(Whenev)m(er)39 b(p)s(ossible,)f(these)h(four)f(standard)g
(register)g(names)g(are)h(a)m(v)-5 b(ailable)38 b(on)h(y)m(our)f(mac)m
(hine)150 1084 y(ev)m(en)29 b(though)f(the)h(mac)m(hine)f(has)g
(di\013eren)m(t)g(canonical)g(mnemonics,)g(so)h(long)f(as)g(there)h(is)
f(no)g(con\015ict.)150 1194 y(The)k Fo(info)d(registers)i
Fu(command)h(sho)m(ws)h(the)g(canonical)f(names.)48 b(F)-8
b(or)34 b(example,)f(on)g(the)g(SP)-8 b(AR)m(C,)150 1303
y Fo(info)29 b(registers)h Fu(displa)m(ys)g(the)i(pro)s(cessor)g
(status)h(register)f(as)g Fo($psr)f Fu(but)h(y)m(ou)g(can)g(also)h
(refer)e(to)i(it)150 1413 y(as)e Fo($ps)p Fu(.)275 1550
y(GDB)24 b(alw)m(a)m(ys)f(considers)f(the)h(con)m(ten)m(ts)i(of)e(an)g
(ordinary)e(register)i(as)g(an)g(in)m(teger)g(when)f(the)h(register)150
1660 y(is)30 b(examined)g(in)g(this)f(w)m(a)m(y)-8 b(.)44
b(Some)31 b(mac)m(hines)f(ha)m(v)m(e)i(sp)s(ecial)e(registers)g(whic)m
(h)g(can)h(hold)f(nothing)g(but)150 1769 y(\015oating)g(p)s(oin)m(t;)f
(these)h(registers)g(are)g(considered)e(to)j(ha)m(v)m(e)g(\015oating)f
(p)s(oin)m(t)e(v)-5 b(alues.)40 b(There)29 b(is)g(no)h(w)m(a)m(y)150
1879 y(to)38 b(refer)e(to)i(the)f(con)m(ten)m(ts)h(of)f(an)g(ordinary)e
(register)i(as)g(\015oating)g(p)s(oin)m(t)f(v)-5 b(alue)36
b(\(although)g(y)m(ou)i(can)150 1988 y Fr(print)i Fu(it)30
b(as)g(a)h(\015oating)f(p)s(oin)m(t)g(v)-5 b(alue)30
b(with)f(`)p Fo(print/f)f($)p Fn(regname)5 b Fu('\).)275
2126 y(Some)23 b(registers)g(ha)m(v)m(e)i(distinct)d(\\ra)m(w")j(and)e
(\\virtual")f(data)j(formats.)38 b(This)22 b(means)h(that)i(the)e(data)
150 2235 y(format)38 b(in)d(whic)m(h)h(the)i(register)f(con)m(ten)m(ts)
i(are)e(sa)m(v)m(ed)i(b)m(y)e(the)g(op)s(erating)g(system)g(is)g(not)g
(the)h(same)150 2345 y(one)27 b(that)g(y)m(our)g(program)f(normally)f
(sees.)40 b(F)-8 b(or)27 b(example,)h(the)f(registers)f(of)h(the)g
(68881)h(\015oating)f(p)s(oin)m(t)150 2455 y(copro)s(cessor)c(are)h
(alw)m(a)m(ys)f(sa)m(v)m(ed)i(in)c(\\extended")j(\(ra)m(w\))g(format,)h
(but)d(all)g(C)h(programs)g(exp)s(ect)g(to)h(w)m(ork)150
2564 y(with)g(\\double")h(\(virtual\))f(format.)40 b(In)24
b(suc)m(h)h(cases,)j(GDB)e(normally)e(w)m(orks)h(with)f(the)i(virtual)e
(format)150 2674 y(only)34 b(\(the)h(format)f(that)h(mak)m(es)h(sense)e
(for)g(y)m(our)h(program\),)h(but)d(the)i Fo(info)29
b(registers)j Fu(command)150 2783 y(prin)m(ts)d(the)h(data)h(in)f(b)s
(oth)f(formats.)275 2921 y(Normally)-8 b(,)27 b(register)g(v)-5
b(alues)26 b(are)i(relativ)m(e)f(to)h(the)f(selected)h(stac)m(k)h
(frame)e(\(see)h(Section)f(6.3)h([Select-)150 3030 y(ing)j(a)i(frame],)
g(page)g(47\).)47 b(This)30 b(means)i(that)h(y)m(ou)f(get)i(the)e(v)-5
b(alue)32 b(that)g(the)h(register)f(w)m(ould)f(con)m(tain)150
3140 y(if)f(all)g(stac)m(k)j(frames)e(farther)g(in)f(w)m(ere)h(exited)h
(and)e(their)g(sa)m(v)m(ed)j(registers)e(restored.)43
b(In)31 b(order)f(to)i(see)150 3250 y(the)g(true)f(con)m(ten)m(ts)j(of)
e(hardw)m(are)f(registers,)h(y)m(ou)g(m)m(ust)g(select)g(the)g
(innermost)f(frame)g(\(with)g(`)p Fo(frame)150 3359 y(0)p
Fu('\).)275 3497 y(Ho)m(w)m(ev)m(er,)e(GDB)e(m)m(ust)g(deduce)f(where)g
(registers)g(are)g(sa)m(v)m(ed,)j(from)d(the)g(mac)m(hine)g(co)s(de)h
(generated)150 3606 y(b)m(y)32 b(y)m(our)g(compiler.)45
b(If)32 b(some)h(registers)f(are)h(not)f(sa)m(v)m(ed,)i(or)f(if)e(GDB)i
(is)e(unable)g(to)i(lo)s(cate)g(the)g(sa)m(v)m(ed)150
3716 y(registers,)d(the)h(selected)g(stac)m(k)h(frame)e(mak)m(es)h(no)f
(di\013erence.)150 3934 y Fo(set)f(rstack_high_address)d
Fn(address)630 4043 y Fu(On)37 b(AMD)i(29000)h(family)c(pro)s(cessors,)
k(registers)d(are)i(sa)m(v)m(ed)g(in)d(a)j(separate)g(\\register)630
4153 y(stac)m(k".)54 b(There)34 b(is)f(no)h(w)m(a)m(y)h(for)f(GDB)h(to)
g(determine)f(the)g(exten)m(t)h(of)g(this)e(stac)m(k.)53
b(Nor-)630 4262 y(mally)-8 b(,)31 b(GDB)h(just)f(assumes)g(that)h(the)f
(stac)m(k)i(is)d(\\large)i(enough".)44 b(This)29 b(ma)m(y)j(result)e
(in)630 4372 y(GDB)g(referencing)e(memory)h(lo)s(cations)f(that)h(do)g
(not)g(exist.)40 b(If)28 b(necessary)-8 b(,)31 b(y)m(ou)e(can)g(get)630
4482 y(around)d(this)h(problem)e(b)m(y)j(sp)s(ecifying)d(the)j(ending)d
(address)i(of)h(the)f(register)g(stac)m(k)i(with)630
4591 y(the)24 b Fo(set)29 b(rstack_high_address)19 b
Fu(command.)38 b(The)24 b(argumen)m(t)g(should)e(b)s(e)h(an)h(address,)
630 4701 y(whic)m(h)29 b(y)m(ou)i(probably)d(w)m(an)m(t)k(to)f(precede)
f(with)f(`)p Fo(0x)p Fu(')i(to)g(sp)s(ecify)e(in)g(hexadecimal.)p
150 4802 1200 4 v 192 4869 a Fh(2)275 4902 y Fu(This)38
b(is)i(a)h(w)m(a)m(y)h(of)f(remo)m(ving)g(one)g(w)m(ord)f(from)g(the)h
(stac)m(k,)k(on)c(mac)m(hines)f(where)g(stac)m(ks)i(gro)m(w)275
5011 y(do)m(wn)m(w)m(ard)e(in)f(memory)h(\(most)i(mac)m(hines,)h(no)m
(w)m(ada)m(ys\).)72 b(This)39 b(assumes)h(that)i(the)e(innermost)275
5121 y(stac)m(k)31 b(frame)g(is)e(selected;)i(setting)f
Fo($sp)g Fu(is)f(not)i(allo)m(w)m(ed)f(when)f(other)i(stac)m(k)g
(frames)f(are)h(selected.)275 5230 y(T)-8 b(o)34 b(p)s(op)f(en)m(tire)g
(frames)h(o\013)g(the)g(stac)m(k,)j(regardless)c(of)h(mac)m(hine)f(arc)
m(hitecture,)j(use)d Fo(return)p Fu(;)h(see)275 5340
y(Section)c(11.4)i([Returning)d(from)h(a)g(function],)g(page)h(99.)p
eop
%%Page: 70 72
70 71 bop 150 -116 a Fu(70)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(show)g(rstack_high_address)630 408 y Fu(Displa)m(y)23
b(the)g(curren)m(t)h(limit)d(of)i(the)h(register)f(stac)m(k,)k(on)c
(AMD)i(29000)g(family)d(pro)s(cessors.)150 666 y Fs(8.11)68
b(Floating)46 b(p)t(oin)l(t)g(hardw)l(are)275 858 y Fu(Dep)s(ending)28
b(on)i(the)g(con\014guration,)f(GDB)i(ma)m(y)f(b)s(e)g(able)f(to)i(giv)
m(e)f(y)m(ou)g(more)g(information)e(ab)s(out)150 968
y(the)j(status)f(of)h(the)f(\015oating)h(p)s(oin)m(t)e(hardw)m(are.)150
1177 y Fo(info)g(float)630 1287 y Fu(Displa)m(y)39 b(hardw)m(are-dep)s
(enden)m(t)g(information)g(ab)s(out)h(the)g(\015oating)g(p)s(oin)m(t)f
(unit.)68 b(The)630 1396 y(exact)27 b(con)m(ten)m(ts)g(and)e(la)m(y)m
(out)h(v)-5 b(ary)26 b(dep)s(ending)d(on)i(the)h(\015oating)f(p)s(oin)m
(t)g(c)m(hip.)38 b(Curren)m(tly)-8 b(,)630 1506 y(`)p
Fo(info)29 b(float)p Fu(')h(is)f(supp)s(orted)g(on)h(the)g(ARM)h(and)f
(x86)h(mac)m(hines.)p eop
%%Page: 71 73
71 72 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(71)150
299 y Fp(9)80 b(Using)54 b(GDB)f(with)h(Di\013eren)l(t)e(Languages)275
531 y Fu(Although)35 b(programming)g(languages)i(generally)e(ha)m(v)m
(e)j(common)e(asp)s(ects,)j(they)d(are)h(rarely)e(ex-)150
640 y(pressed)30 b(in)g(the)i(same)g(manner.)43 b(F)-8
b(or)32 b(instance,)f(in)f(ANSI)h(C,)g(dereferencing)g(a)g(p)s(oin)m
(ter)g Fo(p)g Fu(is)f(accom-)150 750 y(plished)h(b)m(y)k
Fo(*p)p Fu(,)f(but)g(in)f(Mo)s(dula-2,)i(it)f(is)f(accomplished)g(b)m
(y)h Fo(p^)p Fu(.)52 b(V)-8 b(alues)34 b(can)g(also)g(b)s(e)g(represen)
m(ted)150 860 y(\(and)g(displa)m(y)m(ed\))f(di\013eren)m(tly)-8
b(.)51 b(Hex)34 b(n)m(um)m(b)s(ers)f(in)g(C)g(app)s(ear)h(as)g(`)p
Fo(0x1ae)p Fu(',)g(while)e(in)h(Mo)s(dula-2)h(they)150
969 y(app)s(ear)c(as)g(`)p Fo(1AEH)p Fu('.)275 1103 y(Language-sp)s
(eci\014c)40 b(information)f(is)g(built)f(in)m(to)j(GDB)g(for)f(some)h
(languages,)i(allo)m(wing)c(y)m(ou)i(to)150 1213 y(express)30
b(op)s(erations)f(lik)m(e)g(the)h(ab)s(o)m(v)m(e)h(in)e(y)m(our)h
(program's)g(nativ)m(e)g(language,)h(and)e(allo)m(wing)g(GDB)i(to)150
1322 y(output)k(v)-5 b(alues)34 b(in)g(a)h(manner)g(consisten)m(t)g
(with)f(the)h(syn)m(tax)h(of)f(y)m(our)g(program's)g(nativ)m(e)g
(language.)150 1432 y(The)30 b(language)h(y)m(ou)f(use)g(to)i(build)27
b(expressions)i(is)g(called)h(the)g Fn(w)m(orking)g(language)p
Fu(.)150 1688 y Fs(9.1)68 b(Switc)l(hing)46 b(b)t(et)l(w)l(een)g
(source)f(languages)275 1880 y Fu(There)30 b(are)i(t)m(w)m(o)h(w)m(a)m
(ys)f(to)g(con)m(trol)g(the)g(w)m(orking)e(language|either)h(ha)m(v)m
(e)i(GDB)g(set)e(it)g(automat-)150 1990 y(ically)-8 b(,)37
b(or)g(select)g(it)f(man)m(ually)f(y)m(ourself.)58 b(Y)-8
b(ou)37 b(can)g(use)f(the)g Fo(set)30 b(language)k Fu(command)i(for)g
(either)150 2099 y(purp)s(ose.)60 b(On)36 b(startup,)j(GDB)f(defaults)e
(to)i(setting)f(the)h(language)f(automatically)-8 b(.)62
b(The)37 b(w)m(orking)150 2209 y(language)j(is)e(used)h(to)h(determine)
f(ho)m(w)g(expressions)g(y)m(ou)g(t)m(yp)s(e)h(are)g(in)m(terpreted,)h
(ho)m(w)f(v)-5 b(alues)39 b(are)150 2318 y(prin)m(ted,)29
b(etc.)275 2452 y(In)36 b(addition)g(to)i(the)f(w)m(orking)g(language,)
i(ev)m(ery)f(source)g(\014le)e(that)i(GDB)g(kno)m(ws)g(ab)s(out)f(has)g
(its)150 2562 y(o)m(wn)i(w)m(orking)g(language.)67 b(F)-8
b(or)40 b(some)f(ob)5 b(ject)40 b(\014le)e(formats,)k(the)e(compiler)d
(migh)m(t)i(indicate)f(whic)m(h)150 2672 y(language)31
b(a)g(particular)d(source)j(\014le)e(is)h(in.)39 b(Ho)m(w)m(ev)m(er,)33
b(most)e(of)f(the)h(time)f(GDB)h(infers)e(the)i(language)150
2781 y(from)k(the)h(name)f(of)h(the)g(\014le.)55 b(The)35
b(language)h(of)g(a)g(source)f(\014le)g(con)m(trols)h(whether)f(C)p
Fo(++)f Fu(names)i(are)150 2891 y(demangled|this)30 b(w)m(a)m(y)j
Fo(backtrace)d Fu(can)i(sho)m(w)g(eac)m(h)h(frame)f(appropriately)f
(for)h(its)f(o)m(wn)h(language.)150 3000 y(There)e(is)f(no)i(w)m(a)m(y)
g(to)g(set)g(the)f(language)h(of)g(a)g(source)f(\014le)g(from)f(within)
f(GDB.)275 3134 y(This)d(is)h(most)h(commonly)f(a)i(problem)d(when)h(y)
m(ou)h(use)g(a)g(program,)h(suc)m(h)e(as)h Fo(cfront)e
Fu(or)i Fo(f2c)p Fu(,)g(that)150 3244 y(generates)k(C)f(but)f(is)g
(written)f(in)h(another)h(language.)41 b(In)29 b(that)h(case,)i(mak)m
(e)e(the)g(program)g(use)f Fo(#line)150 3354 y Fu(directiv)m(es)e(in)g
(its)g(C)g(output;)i(that)f(w)m(a)m(y)h(GDB)g(will)c(kno)m(w)j(the)g
(correct)h(language)g(of)f(the)g(source)g(co)s(de)150
3463 y(of)j(the)f(original)f(program,)h(and)g(will)e(displa)m(y)g(that)
j(source)g(co)s(de,)f(not)h(the)g(generated)g(C)f(co)s(de.)150
3686 y Fk(9.1.1)63 b(List)41 b(of)f(\014lename)h(extensions)h(and)f
(languages)275 3878 y Fu(If)34 b(a)h(source)g(\014le)f(name)h(ends)f
(in)f(one)j(of)f(the)g(follo)m(wing)e(extensions,)j(then)e(GDB)i
(infers)d(that)j(its)150 3988 y(language)31 b(is)e(the)i(one)f
(indicated.)150 4146 y(`)p Fo(.c)p Fu(')334 b(C)30 b(source)g(\014le)
150 4305 y(`)p Fo(.C)p Fu(')150 4414 y(`)p Fo(.cc)p Fu(')150
4524 y(`)p Fo(.cp)p Fu(')150 4634 y(`)p Fo(.cpp)p Fu(')150
4743 y(`)p Fo(.cxx)p Fu(')150 4853 y(`)p Fo(.c++)p Fu(')238
b(C)p Fo(++)29 b Fu(source)i(\014le)150 4962 y(`)p Fo(.m)p
Fu(')334 b(Ob)5 b(jectiv)m(e-C)31 b(source)f(\014le)150
5072 y(`)p Fo(.M)p Fu(')334 b(Ob)5 b(jectiv)m(e-C)p Fo(++)30
b Fu(source)h(\014le)150 5230 y(`)p Fo(.f)p Fu(')150
5340 y(`)p Fo(.F)p Fu(')334 b(F)-8 b(ortran)31 b(source)g(\014le)p
eop
%%Page: 72 74
72 73 bop 150 -116 a Fu(72)2644 b(Debugging)31 b(with)e(GDB)150
299 y(`)p Fo(.ch)p Fu(')150 408 y(`)p Fo(.c186)p Fu(')150
518 y(`)p Fo(.c286)p Fu(')190 b(CHILL)30 b(source)g(\014le.)150
676 y(`)p Fo(.mod)p Fu(')238 b(Mo)s(dula-2)30 b(source)h(\014le)150
834 y(`)p Fo(.s)p Fu(')150 943 y(`)p Fo(.S)p Fu(')334
b(Assem)m(bler)30 b(source)i(\014le.)42 b(This)30 b(actually)g(b)s(eha)
m(v)m(es)i(almost)f(lik)m(e)g(C,)g(but)f(GDB)j(do)s(es)e(not)630
1053 y(skip)e(o)m(v)m(er)j(function)d(prologues)g(when)h(stepping.)275
1211 y(In)36 b(addition,)g(y)m(ou)h(ma)m(y)h(set)f(the)g(language)g
(asso)s(ciated)g(with)f(a)h(\014lename)f(extension.)59
b(See)37 b(Sec-)150 1320 y(tion)30 b(9.2)h([Displa)m(ying)e(the)i
(language],)g(page)g(72.)150 1542 y Fk(9.1.2)63 b(Setting)41
b(the)g(w)m(orking)g(language)275 1734 y Fu(If)23 b(y)m(ou)h(allo)m(w)f
(GDB)i(to)g(set)f(the)g(language)g(automatically)-8 b(,)26
b(expressions)c(are)i(in)m(terpreted)g(the)g(same)150
1844 y(w)m(a)m(y)31 b(in)e(y)m(our)i(debugging)e(session)h(and)f(y)m
(our)i(program.)275 1978 y(If)k(y)m(ou)h(wish,)f(y)m(ou)h(ma)m(y)g(set)
h(the)e(language)i(man)m(ually)-8 b(.)55 b(T)-8 b(o)36
b(do)g(this,)g(issue)e(the)i(command)g(`)p Fo(set)150
2087 y(language)28 b Fn(lang)8 b Fu(',)29 b(where)f Fn(lang)36
b Fu(is)28 b(the)h(name)g(of)g(a)g(language,)g(suc)m(h)g(as)g
Fo(c)f Fu(or)h Fo(modula-2)p Fu(.)38 b(F)-8 b(or)29 b(a)g(list)f(of)150
2197 y(the)j(supp)s(orted)d(languages,)j(t)m(yp)s(e)g(`)p
Fo(set)e(language)p Fu('.)275 2330 y(Setting)j(the)i(language)f(man)m
(ually)f(prev)m(en)m(ts)h(GDB)h(from)f(up)s(dating)e(the)i(w)m(orking)f
(language)i(au-)150 2440 y(tomatically)-8 b(.)56 b(This)34
b(can)h(lead)g(to)h(confusion)f(if)f(y)m(ou)i(try)f(to)h(debug)f(a)g
(program)h(when)e(the)i(w)m(orking)150 2550 y(language)31
b(is)e(not)i(the)f(same)h(as)g(the)f(source)h(language,)g(when)e(an)i
(expression)e(is)g(acceptable)j(to)f(b)s(oth)150 2659
y(languages|but)e(means)h(di\013eren)m(t)f(things.)39
b(F)-8 b(or)30 b(instance,)g(if)e(the)i(curren)m(t)f(source)h(\014le)f
(w)m(ere)h(written)150 2769 y(in)f(C,)h(and)g(GDB)i(w)m(as)e(parsing)f
(Mo)s(dula-2,)i(a)f(command)g(suc)m(h)h(as:)390 2897
y Fo(print)46 b(a)i(=)f(b)h(+)f(c)150 3030 y Fu(migh)m(t)37
b(not)h(ha)m(v)m(e)h(the)f(e\013ect)i(y)m(ou)e(in)m(tended.)61
b(In)37 b(C,)h(this)f(means)g(to)i(add)e Fo(b)g Fu(and)g
Fo(c)h Fu(and)f(place)h(the)150 3140 y(result)24 b(in)h
Fo(a)p Fu(.)39 b(The)25 b(result)f(prin)m(ted)g(w)m(ould)h(b)s(e)f(the)
i(v)-5 b(alue)25 b(of)h Fo(a)p Fu(.)39 b(In)25 b(Mo)s(dula-2,)h(this)f
(means)g(to)h(compare)150 3250 y Fo(a)k Fu(to)h(the)g(result)e(of)i
Fo(b+c)p Fu(,)e(yielding)f(a)j Fo(BOOLEAN)d Fu(v)-5 b(alue.)150
3472 y Fk(9.1.3)63 b(Ha)m(ving)40 b(GDB)h(infer)g(the)f(source)i
(language)275 3663 y Fu(T)-8 b(o)25 b(ha)m(v)m(e)h(GDB)h(set)e(the)g(w)
m(orking)g(language)g(automatically)-8 b(,)27 b(use)e(`)p
Fo(set)k(language)g(local)p Fu(')24 b(or)h(`)p Fo(set)150
3773 y(language)j(auto)p Fu('.)38 b(GDB)27 b(then)e(infers)f(the)h(w)m
(orking)g(language.)39 b(That)25 b(is,)h(when)f(y)m(our)g(program)g
(stops)150 3883 y(in)31 b(a)i(frame)f(\(usually)f(b)m(y)h(encoun)m
(tering)g(a)h(breakp)s(oin)m(t\),)f(GDB)i(sets)f(the)f(w)m(orking)g
(language)h(to)g(the)150 3992 y(language)h(recorded)g(for)g(the)g
(function)e(in)h(that)i(frame.)51 b(If)33 b(the)h(language)h(for)e(a)i
(frame)e(is)g(unkno)m(wn)150 4102 y(\(that)27 b(is,)g(if)f(the)g
(function)f(or)i(blo)s(c)m(k)f(corresp)s(onding)e(to)k(the)e(frame)h(w)
m(as)g(de\014ned)e(in)g(a)i(source)g(\014le)e(that)150
4211 y(do)s(es)35 b(not)h(ha)m(v)m(e)h(a)f(recognized)g(extension\),)h
(the)e(curren)m(t)h(w)m(orking)f(language)g(is)g(not)h(c)m(hanged,)i
(and)150 4321 y(GDB)31 b(issues)f(a)g(w)m(arning.)275
4455 y(This)22 b(ma)m(y)j(not)g(seem)f(necessary)h(for)f(most)h
(programs,)g(whic)m(h)e(are)i(written)f(en)m(tirely)f(in)g(one)i
(source)150 4564 y(language.)49 b(Ho)m(w)m(ev)m(er,)36
b(program)d(mo)s(dules)e(and)i(libraries)d(written)i(in)g(one)h(source)
h(language)f(can)h(b)s(e)150 4674 y(used)26 b(b)m(y)i(a)f(main)f
(program)h(written)g(in)f(a)h(di\013eren)m(t)g(source)g(language.)41
b(Using)26 b(`)p Fo(set)k(language)e(auto)p Fu(')150
4783 y(in)h(this)g(case)j(frees)e(y)m(ou)h(from)f(ha)m(ving)g(to)h(set)
g(the)f(w)m(orking)g(language)h(man)m(ually)-8 b(.)150
5039 y Fs(9.2)68 b(Displa)l(ying)46 b(the)g(language)275
5230 y Fu(The)26 b(follo)m(wing)g(commands)h(help)f(y)m(ou)i(\014nd)e
(out)h(whic)m(h)f(language)i(is)f(the)g(w)m(orking)g(language,)i(and)
150 5340 y(also)h(what)h(language)f(source)h(\014les)e(w)m(ere)i
(written)f(in.)p eop
%%Page: 73 75
73 74 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(73)150
299 y Fo(show)29 b(language)630 408 y Fu(Displa)m(y)k(the)i(curren)m(t)
f(w)m(orking)g(language.)53 b(This)32 b(is)i(the)g(language)h(y)m(ou)g
(can)f(use)g(with)630 518 y(commands)h(suc)m(h)g(as)g
Fo(print)f Fu(to)h(build)e(and)h(compute)i(expressions)d(that)j(ma)m(y)
g(in)m(v)m(olv)m(e)630 628 y(v)-5 b(ariables)29 b(in)g(y)m(our)h
(program.)150 790 y Fo(info)f(frame)630 900 y Fu(Displa)m(y)c(the)h
(source)g(language)g(for)g(this)f(frame.)39 b(This)24
b(language)i(b)s(ecomes)h(the)f(w)m(orking)630 1009 y(language)32
b(if)f(y)m(ou)g(use)h(an)f(iden)m(ti\014er)f(from)h(this)g(frame.)44
b(See)32 b(Section)f(6.4)i([Information)630 1119 y(ab)s(out)d(a)h
(frame],)g(page)g(48,)g(to)g(iden)m(tify)e(the)i(other)f(information)f
(listed)g(here.)150 1282 y Fo(info)g(source)630 1391
y Fu(Displa)m(y)g(the)g(source)h(language)g(of)g(this)e(source)i
(\014le.)40 b(See)30 b(Chapter)f(10)h([Examining)e(the)630
1501 y(Sym)m(b)s(ol)h(T)-8 b(able],)30 b(page)h(93,)h(to)f(iden)m(tify)
e(the)h(other)h(information)e(listed)g(here.)275 1665
y(In)d(un)m(usual)f(circumstances,)j(y)m(ou)g(ma)m(y)g(ha)m(v)m(e)g
(source)g(\014les)e(with)g(extensions)h(not)g(in)f(the)i(standard)150
1775 y(list.)39 b(Y)-8 b(ou)31 b(can)g(then)f(set)h(the)f(extension)g
(asso)s(ciated)h(with)e(a)i(language)g(explicitly:)150
1939 y Fo(set)e(extension-language)d Fn(.ext)33 b(language)630
2048 y Fu(Set)d(source)f(\014les)g(with)f(extension)h
Fn(.ext)k Fu(to)d(b)s(e)f(assumed)g(to)h(b)s(e)f(in)f(the)i(source)g
(language)630 2158 y Fn(language)p Fu(.)150 2321 y Fo(info)f
(extensions)630 2430 y Fu(List)h(all)f(the)h(\014lename)g(extensions)g
(and)g(the)g(asso)s(ciated)h(languages.)150 2696 y Fs(9.3)68
b(T)l(yp)t(e)45 b(and)f(range)i(c)l(hec)l(king)390 2886
y Fr(Warning:)69 b Fu(In)42 b(this)f(release,)k(the)d(GDB)i(commands)d
(for)h(t)m(yp)s(e)g(and)g(range)g(c)m(hec)m(king)390
2989 y(are)32 b(included,)e(but)h(they)g(do)h(not)g(y)m(et)h(ha)m(v)m
(e)g(an)m(y)f(e\013ect.)46 b(This)30 b(section)h(do)s(cumen)m(ts)h(the)
390 3093 y(in)m(tended)d(facilities.)275 3231 y(Some)40
b(languages)h(are)g(designed)f(to)h(guard)f(y)m(ou)h(against)g(making)f
(seemingly)g(common)g(errors)150 3341 y(through)45 b(a)h(series)e(of)i
(compile-)f(and)f(run-time)h(c)m(hec)m(ks.)87 b(These)45
b(include)e(c)m(hec)m(king)k(the)e(t)m(yp)s(e)h(of)150
3450 y(argumen)m(ts)29 b(to)h(functions)d(and)h(op)s(erators,)h(and)g
(making)f(sure)g(mathematical)h(o)m(v)m(er\015o)m(ws)h(are)f(caugh)m(t)
150 3560 y(at)j(run)e(time.)44 b(Chec)m(ks)31 b(suc)m(h)g(as)h(these)g
(help)e(to)i(ensure)e(a)i(program's)f(correctness)i(once)f(it)f(has)g
(b)s(een)150 3669 y(compiled)22 b(b)m(y)h(eliminating)e(t)m(yp)s(e)j
(mismatc)m(hes,)h(and)e(pro)m(viding)f(activ)m(e)j(c)m(hec)m(ks)g(for)e
(range)h(errors)f(when)150 3779 y(y)m(our)30 b(program)g(is)g(running.)
275 3917 y(GDB)e(can)g(c)m(hec)m(k)h(for)e(conditions)f(lik)m(e)g(the)i
(ab)s(o)m(v)m(e)h(if)d(y)m(ou)i(wish.)38 b(Although)26
b(GDB)j(do)s(es)e(not)g(c)m(hec)m(k)150 4026 y(the)d(statemen)m(ts)i
(in)c(y)m(our)i(program,)h(it)f(can)g(c)m(hec)m(k)h(expressions)e(en)m
(tered)i(directly)d(in)m(to)i(GDB)h(for)f(ev)-5 b(al-)150
4136 y(uation)28 b(via)g(the)g Fo(print)f Fu(command,)i(for)f(example.)
39 b(As)29 b(with)e(the)h(w)m(orking)g(language,)h(GDB)g(can)g(also)150
4245 y(decide)c(whether)f(or)h(not)h(to)f(c)m(hec)m(k)i(automatically)e
(based)g(on)g(y)m(our)g(program's)g(source)g(language.)40
b(See)150 4355 y(Section)27 b(9.4)i([Supp)s(orted)d(languages],)j(page)
f(75,)h(for)f(the)g(default)e(settings)i(of)g(supp)s(orted)d
(languages.)150 4586 y Fk(9.3.1)63 b(An)40 b(o)m(v)m(erview)g(of)h(t)m
(yp)s(e)g(c)m(hec)m(king)275 4781 y Fu(Some)31 b(languages,)i(suc)m(h)e
(as)h(Mo)s(dula-2,)g(are)h(strongly)e(t)m(yp)s(ed,)h(meaning)f(that)h
(the)g(argumen)m(ts)g(to)150 4891 y(op)s(erators)k(and)f(functions)f
(ha)m(v)m(e)j(to)g(b)s(e)e(of)h(the)g(correct)h(t)m(yp)s(e,)g
(otherwise)f(an)f(error)h(o)s(ccurs.)56 b(These)150 5001
y(c)m(hec)m(ks)23 b(prev)m(en)m(t)g(t)m(yp)s(e)e(mismatc)m(h)h(errors)f
(from)g(ev)m(er)i(causing)e(an)m(y)h(run-time)e(problems.)37
b(F)-8 b(or)22 b(example,)390 5132 y Fo(1)47 b(+)h(2)679
5126 y Fq(\))820 5132 y Fo(3)150 5236 y Fu(but)p 411
5283 217 5 v 411 5363 5 81 v 434 5343 a Fg(erro)m(r)p
623 5363 V 411 5367 217 5 v 724 5340 a Fo(1)g(+)f(2.3)p
eop
%%Page: 74 76
74 75 bop 150 -116 a Fu(74)2644 b(Debugging)31 b(with)e(GDB)275
299 y(The)g(second)h(example)f(fails)f(b)s(ecause)i(the)g
Fo(CARDINAL)d Fu(1)j(is)f(not)h(t)m(yp)s(e-compatible)g(with)e(the)i
Fo(REAL)150 408 y Fu(2.3.)275 542 y(F)-8 b(or)34 b(the)f(expressions)f
(y)m(ou)i(use)f(in)f(GDB)i(commands,)g(y)m(ou)g(can)g(tell)e(the)i(GDB)
g(t)m(yp)s(e)g(c)m(hec)m(k)m(er)h(to)150 651 y(skip)g(c)m(hec)m(king;)
42 b(to)37 b(treat)h(an)m(y)f(mismatc)m(hes)g(as)g(errors)g(and)f
(abandon)g(the)h(expression;)i(or)e(to)h(only)150 761
y(issue)e(w)m(arnings)g(when)h(t)m(yp)s(e)g(mismatc)m(hes)h(o)s(ccur,)h
(but)e(ev)-5 b(aluate)38 b(the)f(expression)g(an)m(yw)m(a)m(y)-8
b(.)63 b(When)150 871 y(y)m(ou)27 b(c)m(ho)s(ose)i(the)e(last)g(of)g
(these,)i(GDB)f(ev)-5 b(aluates)28 b(expressions)e(lik)m(e)g(the)h
(second)h(example)e(ab)s(o)m(v)m(e,)k(but)150 980 y(also)g(issues)f(a)i
(w)m(arning.)275 1113 y(Ev)m(en)41 b(if)g(y)m(ou)g(turn)g(t)m(yp)s(e)g
(c)m(hec)m(king)i(o\013,)h(there)e(ma)m(y)g(b)s(e)f(other)h(reasons)f
(related)h(to)g(t)m(yp)s(e)f(that)150 1223 y(prev)m(en)m(t)f(GDB)g
(from)f(ev)-5 b(aluating)39 b(an)g(expression.)66 b(F)-8
b(or)40 b(instance,)h(GDB)f(do)s(es)f(not)h(kno)m(w)f(ho)m(w)g(to)150
1333 y(add)c(an)g Fo(int)g Fu(and)f(a)i Fo(struct)29
b(foo)p Fu(.)55 b(These)35 b(particular)f(t)m(yp)s(e)h(errors)g(ha)m(v)
m(e)i(nothing)d(to)i(do)g(with)e(the)150 1442 y(language)28
b(in)e(use,)i(and)f(usually)f(arise)h(from)g(expressions,)g(suc)m(h)g
(as)h(the)g(one)g(describ)s(ed)e(ab)s(o)m(v)m(e,)j(whic)m(h)150
1552 y(mak)m(e)i(little)f(sense)g(to)h(ev)-5 b(aluate)31
b(an)m(yw)m(a)m(y)-8 b(.)275 1685 y(Eac)m(h)26 b(language)g(de\014nes)f
(to)i(what)e(degree)i(it)e(is)g(strict)h(ab)s(out)f(t)m(yp)s(e.)39
b(F)-8 b(or)27 b(instance,)g(b)s(oth)e(Mo)s(dula-)150
1795 y(2)30 b(and)f(C)g(require)f(the)i(argumen)m(ts)f(to)i
(arithmetical)d(op)s(erators)i(to)g(b)s(e)f(n)m(um)m(b)s(ers.)39
b(In)28 b(C,)i(en)m(umerated)150 1904 y(t)m(yp)s(es)41
b(and)f(p)s(oin)m(ters)g(can)h(b)s(e)f(represen)m(ted)g(as)h(n)m(um)m
(b)s(ers,)i(so)e(that)g(they)g(are)g(v)-5 b(alid)39 b(argumen)m(ts)i
(to)150 2014 y(mathematical)28 b(op)s(erators.)40 b(See)27
b(Section)h(9.4)g([Supp)s(orted)e(languages],)i(page)h(75,)g(for)e
(further)f(details)150 2123 y(on)k(sp)s(eci\014c)f(languages.)275
2257 y(GDB)i(pro)m(vides)e(some)i(additional)d(commands)i(for)h(con)m
(trolling)e(the)h(t)m(yp)s(e)h(c)m(hec)m(k)m(er:)150
2414 y Fo(set)e(check)g(type)h(auto)630 2523 y Fu(Set)37
b(t)m(yp)s(e)g(c)m(hec)m(king)g(on)f(or)h(o\013)g(based)f(on)h(the)f
(curren)m(t)h(w)m(orking)f(language.)60 b(See)36 b(Sec-)630
2633 y(tion)f(9.4)i([Supp)s(orted)c(languages],)38 b(page)e(75,)i(for)d
(the)h(default)f(settings)g(for)h(eac)m(h)g(lan-)630
2742 y(guage.)150 2899 y Fo(set)29 b(check)g(type)h(on)150
3009 y(set)f(check)g(type)h(off)630 3118 y Fu(Set)22
b(t)m(yp)s(e)g(c)m(hec)m(king)g(on)g(or)f(o\013,)j(o)m(v)m(erriding)d
(the)g(default)g(setting)h(for)f(the)h(curren)m(t)g(w)m(orking)630
3228 y(language.)50 b(Issue)33 b(a)h(w)m(arning)e(if)g(the)i(setting)f
(do)s(es)g(not)h(matc)m(h)g(the)g(language)f(default.)630
3338 y(If)27 b(an)m(y)i(t)m(yp)s(e)f(mismatc)m(hes)g(o)s(ccur)f(in)g
(ev)-5 b(aluating)28 b(an)f(expression)g(while)f(t)m(yp)s(ec)m(hec)m
(king)j(is)630 3447 y(on,)i(GDB)g(prin)m(ts)e(a)i(message)g(and)f(ab)s
(orts)g(ev)-5 b(aluation)30 b(of)g(the)h(expression.)150
3604 y Fo(set)e(check)g(type)h(warn)630 3714 y Fu(Cause)24
b(the)h(t)m(yp)s(e)g(c)m(hec)m(k)m(er)h(to)g(issue)d(w)m(arnings,)i
(but)e(to)j(alw)m(a)m(ys)f(attempt)g(to)h(ev)-5 b(aluate)25
b(the)630 3823 y(expression.)38 b(Ev)-5 b(aluating)25
b(the)i(expression)e(ma)m(y)i(still)d(b)s(e)h(imp)s(ossible)e(for)j
(other)h(reasons.)630 3933 y(F)-8 b(or)31 b(example,)f(GDB)i(cannot)f
(add)f(n)m(um)m(b)s(ers)f(and)g(structures.)150 4090
y Fo(show)g(type)67 b Fu(Sho)m(w)23 b(the)h(curren)m(t)f(setting)h(of)g
(the)g(t)m(yp)s(e)g(c)m(hec)m(k)m(er,)j(and)c(whether)g(or)h(not)f(GDB)
i(is)e(setting)630 4200 y(it)30 b(automatically)-8 b(.)150
4467 y Fk(9.3.2)63 b(An)40 b(o)m(v)m(erview)g(of)h(range)g(c)m(hec)m
(king)275 4659 y Fu(In)36 b(some)i(languages)f(\(suc)m(h)h(as)f(Mo)s
(dula-2\),)j(it)d(is)f(an)h(error)g(to)h(exceed)h(the)e(b)s(ounds)e(of)
j(a)g(t)m(yp)s(e;)150 4768 y(this)h(is)g(enforced)h(with)f(run-time)f
(c)m(hec)m(ks.)71 b(Suc)m(h)39 b(range)i(c)m(hec)m(king)f(is)f(mean)m
(t)i(to)g(ensure)e(program)150 4878 y(correctness)c(b)m(y)g(making)f
(sure)g(computations)g(do)g(not)h(o)m(v)m(er\015o)m(w,)i(or)e(indices)e
(on)h(an)g(arra)m(y)h(elemen)m(t)150 4988 y(access)d(do)e(not)h(exceed)
g(the)g(b)s(ounds)d(of)i(the)h(arra)m(y)-8 b(.)275 5121
y(F)g(or)34 b(expressions)e(y)m(ou)i(use)f(in)f(GDB)i(commands,)g(y)m
(ou)g(can)g(tell)e(GDB)j(to)f(treat)h(range)e(errors)g(in)150
5230 y(one)i(of)f(three)h(w)m(a)m(ys:)49 b(ignore)34
b(them,)h(alw)m(a)m(ys)g(treat)h(them)e(as)g(errors)g(and)g(abandon)f
(the)i(expression,)150 5340 y(or)30 b(issue)g(w)m(arnings)f(but)g(ev)-5
b(aluate)31 b(the)g(expression)e(an)m(yw)m(a)m(y)-8 b(.)p
eop
%%Page: 75 77
75 76 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(75)275
299 y(A)27 b(range)h(error)f(can)h(result)f(from)g(n)m(umerical)f(o)m
(v)m(er\015o)m(w,)k(from)d(exceeding)h(an)f(arra)m(y)i(index)d(b)s
(ound,)150 408 y(or)31 b(when)g(y)m(ou)g(t)m(yp)s(e)h(a)f(constan)m(t)i
(that)f(is)e(not)i(a)f(mem)m(b)s(er)g(of)h(an)m(y)f(t)m(yp)s(e.)44
b(Some)31 b(languages,)h(ho)m(w)m(ev)m(er,)150 518 y(do)h(not)g(treat)h
(o)m(v)m(er\015o)m(ws)g(as)g(an)e(error.)49 b(In)32 b(man)m(y)h
(implemen)m(tations)e(of)i(C,)g(mathematical)h(o)m(v)m(er\015o)m(w)150
628 y(causes)29 b(the)f(result)g(to)h(\\wrap)f(around")g(to)h(lo)m(w)m
(er)g(v)-5 b(alues|for)27 b(example,)i(if)f Fn(m)g Fu(is)f(the)i
(largest)g(in)m(teger)150 737 y(v)-5 b(alue,)30 b(and)g
Fn(s)k Fu(is)29 b(the)i(smallest,)f(then)390 863 y Fn(m)47
b Fo(+)h(1)707 857 y Fq(\))848 863 y Fn(s)275 994 y Fu(This,)38
b(to)s(o,)k(is)37 b(sp)s(eci\014c)g(to)j(individual)33
b(languages,)41 b(and)d(in)f(some)i(cases)g(sp)s(eci\014c)e(to)j
(individual)150 1104 y(compilers)31 b(or)i(mac)m(hines.)48
b(See)33 b(Section)g(9.4)g([Supp)s(orted)e(languages],)k(page)e(75,)i
(for)d(further)g(details)150 1213 y(on)e(sp)s(eci\014c)f(languages.)275
1344 y(GDB)i(pro)m(vides)e(some)i(additional)d(commands)i(for)h(con)m
(trolling)e(the)h(range)h(c)m(hec)m(k)m(er:)150 1498
y Fo(set)e(check)g(range)g(auto)630 1607 y Fu(Set)34
b(range)g(c)m(hec)m(king)g(on)g(or)g(o\013)g(based)f(on)h(the)g(curren)
m(t)f(w)m(orking)g(language.)51 b(See)34 b(Sec-)630 1717
y(tion)h(9.4)i([Supp)s(orted)c(languages],)38 b(page)e(75,)i(for)d(the)
h(default)f(settings)g(for)h(eac)m(h)g(lan-)630 1826
y(guage.)150 1979 y Fo(set)29 b(check)g(range)g(on)150
2089 y(set)g(check)g(range)g(off)630 2198 y Fu(Set)d(range)f(c)m(hec)m
(king)h(on)g(or)f(o\013,)i(o)m(v)m(erriding)d(the)i(default)e(setting)i
(for)f(the)g(curren)m(t)h(w)m(ork-)630 2308 y(ing)34
b(language.)54 b(A)35 b(w)m(arning)e(is)h(issued)f(if)g(the)i(setting)g
(do)s(es)f(not)h(matc)m(h)h(the)f(language)630 2418 y(default.)k(If)26
b(a)h(range)g(error)g(o)s(ccurs,)g(then)f(a)i(message)f(is)f(prin)m
(ted)f(and)i(ev)-5 b(aluation)26 b(of)h(the)630 2527
y(expression)i(is)h(ab)s(orted.)150 2680 y Fo(set)f(check)g(range)g
(warn)630 2790 y Fu(Output)34 b(messages)i(when)e(the)h(GDB)i(range)e
(c)m(hec)m(k)m(er)i(detects)f(a)g(range)f(error,)i(but)d(at-)630
2899 y(tempt)g(to)g(ev)-5 b(aluate)35 b(the)f(expression)e(an)m(yw)m(a)
m(y)-8 b(.)53 b(Ev)-5 b(aluating)32 b(the)i(expression)f(ma)m(y)h
(still)630 3009 y(b)s(e)24 b(imp)s(ossible)d(for)j(other)g(reasons,)i
(suc)m(h)e(as)h(accessing)g(memory)f(that)h(the)f(pro)s(cess)g(do)s(es)
630 3119 y(not)31 b(o)m(wn)f(\(a)h(t)m(ypical)f(example)g(from)g(man)m
(y)h(Unix)e(systems\).)150 3272 y Fo(show)g(range)630
3381 y Fu(Sho)m(w)34 b(the)h(curren)m(t)g(setting)f(of)h(the)g(range)g
(c)m(hec)m(k)m(er,)j(and)d(whether)f(or)g(not)h(it)g(is)e(b)s(eing)630
3491 y(set)e(automatically)f(b)m(y)g(GDB.)150 3739 y
Fs(9.4)68 b(Supp)t(orted)44 b(languages)275 3928 y Fu(GDB)29
b(supp)s(orts)e(C,)h(C)p Fo(++)p Fu(,)g(Ob)5 b(jectiv)m(e-C,)29
b(Ob)5 b(jectiv)m(e-C)p Fo(++)p Fu(,)29 b(F)-8 b(ortran,)30
b(Ja)m(v)-5 b(a,)30 b(Chill,)c(assem)m(bly)-8 b(,)29
b(and)150 4038 y(Mo)s(dula-2.)83 b(Some)45 b(GDB)g(features)g(ma)m(y)g
(b)s(e)f(used)g(in)f(expressions)g(regardless)h(of)h(the)g(language)150
4147 y(y)m(ou)39 b(use:)57 b(the)39 b(GDB)h Fo(@)e Fu(and)h
Fo(::)f Fu(op)s(erators,)j(and)d(the)h(`)p Fo({type}addr)p
Fu(')d(construct)k(\(see)f(Section)g(8.1)150 4257 y([Expressions],)29
b(page)i(55\))h(can)f(b)s(e)e(used)h(with)f(the)i(constructs)f(of)h(an)
m(y)f(supp)s(orted)f(language.)275 4388 y(The)d(follo)m(wing)f
(sections)i(detail)f(to)i(what)e(degree)i(eac)m(h)g(source)f(language)g
(is)f(supp)s(orted)f(b)m(y)i(GDB.)150 4498 y(These)38
b(sections)h(are)g(not)g(mean)m(t)g(to)h(b)s(e)e(language)h(tutorials)e
(or)i(references,)i(but)d(serv)m(e)h(only)f(as)h(a)150
4607 y(reference)f(guide)f(to)i(what)e(the)h(GDB)h(expression)e(parser)
g(accepts,)k(and)d(what)f(input)f(and)h(output)150 4717
y(formats)h(should)d(lo)s(ok)j(lik)m(e)f(for)g(di\013eren)m(t)g
(languages.)63 b(There)37 b(are)h(man)m(y)g(go)s(o)s(d)f(b)s(o)s(oks)g
(written)g(on)150 4826 y(eac)m(h)32 b(of)e(these)h(languages;)g(please)
f(lo)s(ok)g(to)h(these)g(for)f(a)h(language)g(reference)f(or)h
(tutorial.)150 5041 y Fk(9.4.1)63 b(C)40 b(and)h(C)p
Ff(++)275 5230 y Fu(Since)27 b(C)i(and)f(C)p Fo(++)g
Fu(are)h(so)g(closely)g(related,)g(man)m(y)g(features)g(of)g(GDB)h
(apply)e(to)h(b)s(oth)f(languages.)150 5340 y(Whenev)m(er)j(this)e(is)h
(the)g(case,)i(w)m(e)f(discuss)d(those)j(languages)g(together.)p
eop
%%Page: 76 78
76 77 bop 150 -116 a Fu(76)2644 b(Debugging)31 b(with)e(GDB)275
299 y(The)36 b(C)p Fo(++)g Fu(debugging)g(facilities)g(are)h(join)m
(tly)f(implemen)m(ted)g(b)m(y)h(the)g(C)p Fo(++)f Fu(compiler)g(and)h
(GDB.)150 408 y(Therefore,)c(to)g(debug)f(y)m(our)g(C)p
Fo(++)g Fu(co)s(de)g(e\013ectiv)m(ely)-8 b(,)35 b(y)m(ou)e(m)m(ust)f
(compile)f(y)m(our)i(C)p Fo(++)e Fu(programs)h(with)150
518 y(a)f(supp)s(orted)d(C)p Fo(++)i Fu(compiler,)f(suc)m(h)h(as)h
Ft(gnu)f Fo(g++)p Fu(,)f(or)i(the)f(HP)h(ANSI)f(C)p Fo(++)f
Fu(compiler)g(\()p Fo(aCC)p Fu(\).)275 652 y(F)-8 b(or)34
b(b)s(est)f(results)f(when)h(using)f Ft(gnu)i Fu(C)p
Fo(++)p Fu(,)f(use)h(the)f(stabs)h(debugging)f(format.)50
b(Y)-8 b(ou)34 b(can)g(select)150 762 y(that)40 b(format)g(explicitly)c
(with)i(the)i Fo(g++)e Fu(command-line)g(options)h(`)p
Fo(-gstabs)p Fu(')f(or)h(`)p Fo(-gstabs+)p Fu('.)66 b(See)150
872 y(section)38 b(\\Options)f(for)h(Debugging)f(Y)-8
b(our)38 b(Program)g(or)g Ft(gnu)g Fu(CC")g(in)e Fn(Using)h
Ft(gnu)h Fn(CC)8 b Fu(,)37 b(for)h(more)150 981 y(information.)150
1205 y Fk(9.4.1.1)63 b(C)41 b(and)g(C)p Ff(++)f Fk(op)s(erators)275
1397 y Fu(Op)s(erators)g(m)m(ust)h(b)s(e)f(de\014ned)g(on)h(v)-5
b(alues)40 b(of)h(sp)s(eci\014c)f(t)m(yp)s(es.)72 b(F)-8
b(or)42 b(instance,)i Fo(+)c Fu(is)g(de\014ned)g(on)150
1507 y(n)m(um)m(b)s(ers,)29 b(but)h(not)g(on)h(structures.)40
b(Op)s(erators)30 b(are)g(often)h(de\014ned)e(on)i(groups)e(of)i(t)m
(yp)s(es.)275 1641 y(F)-8 b(or)31 b(the)f(purp)s(oses)f(of)h(C)g(and)g
(C)p Fo(++)p Fu(,)g(the)g(follo)m(wing)f(de\014nitions)f(hold:)225
1775 y Fq(\017)60 b Fr(Inte)-5 b(gr)g(al)34 b(typ)-5
b(es)39 b Fu(include)28 b Fo(int)i Fu(with)f(an)m(y)i(of)f(its)g
(storage-class)i(sp)s(eci\014ers;)d Fo(char)p Fu(;)g(and)h
Fo(enum)p Fu(.)225 1909 y Fq(\017)60 b Fr(Flo)-5 b(ating-p)g(oint)35
b(typ)-5 b(es)39 b Fu(include)28 b Fo(float)h Fu(and)h
Fo(double)p Fu(.)225 2044 y Fq(\017)60 b Fr(Pointer)33
b(typ)-5 b(es)39 b Fu(include)28 b(all)h(t)m(yp)s(es)i(de\014ned)e(as)h
Fo(\()p Fn(t)m(yp)s(e)36 b Fo(*\))p Fu(.)225 2178 y Fq(\017)60
b Fr(Sc)-5 b(alar)34 b(typ)-5 b(es)39 b Fu(include)28
b(all)i(of)g(the)h(ab)s(o)m(v)m(e.)150 2337 y(The)k(follo)m(wing)f(op)s
(erators)h(are)h(supp)s(orted.)54 b(They)35 b(are)h(listed)e(here)h(in)
f(order)h(of)g(increasing)f(prece-)150 2446 y(dence:)150
2605 y Fo(,)432 b Fu(The)27 b(comma)i(or)e(sequencing)g(op)s(erator.)40
b(Expressions)26 b(in)h(a)h(comma-separated)h(list)e(are)630
2715 y(ev)-5 b(aluated)34 b(from)f(left)g(to)h(righ)m(t,)g(with)e(the)i
(result)f(of)g(the)h(en)m(tire)f(expression)g(b)s(eing)f(the)630
2824 y(last)e(expression)f(ev)-5 b(aluated.)150 2983
y Fo(=)432 b Fu(Assignmen)m(t.)44 b(The)31 b(v)-5 b(alue)31
b(of)h(an)f(assignmen)m(t)h(expression)e(is)g(the)i(v)-5
b(alue)31 b(assigned.)44 b(De-)630 3093 y(\014ned)29
b(on)h(scalar)h(t)m(yp)s(es.)150 3252 y Fn(op)s Fo(=)333
b Fu(Used)34 b(in)e(an)i(expression)f(of)h(the)g(form)f
Fn(a)e(op)s Fo(=)f Fn(b)q Fu(,)35 b(and)f(translated)f(to)i
Fn(a)c Fo(=)f Fn(a)h(op)f(b)q Fu(.)52 b Fn(op)s Fo(=)630
3362 y Fu(and)34 b Fo(=)g Fu(ha)m(v)m(e)h(the)g(same)f(precendence.)53
b Fn(op)37 b Fu(is)c(an)m(y)i(one)f(of)h(the)f(op)s(erators)h
Fo(|)p Fu(,)g Fo(^)p Fu(,)g Fo(&)p Fu(,)g Fo(<<)p Fu(,)630
3471 y Fo(>>)p Fu(,)30 b Fo(+)p Fu(,)g Fo(-)p Fu(,)h
Fo(*)p Fu(,)f Fo(/)p Fu(,)g Fo(\045)p Fu(.)150 3630 y
Fo(?:)384 b Fu(The)38 b(ternary)h(op)s(erator.)65 b Fn(a)31
b Fo(?)f Fn(b)i Fo(:)e Fn(c)44 b Fu(can)39 b(b)s(e)f(though)m(t)h(of)g
(as:)57 b(if)38 b Fn(a)h Fu(then)f Fn(b)i Fu(else)f Fn(c)p
Fu(.)66 b Fn(a)630 3740 y Fu(should)28 b(b)s(e)i(of)h(an)f(in)m(tegral)
g(t)m(yp)s(e.)150 3899 y Fo(||)384 b Fu(Logical)30 b
Ft(or)p Fu(.)41 b(De\014ned)30 b(on)g(in)m(tegral)g(t)m(yp)s(es.)150
4058 y Fo(&&)384 b Fu(Logical)30 b Ft(and)p Fu(.)40 b(De\014ned)30
b(on)h(in)m(tegral)f(t)m(yp)s(es.)150 4217 y Fo(|)432
b Fu(Bit)m(wise)30 b Ft(or)p Fu(.)40 b(De\014ned)30 b(on)g(in)m(tegral)
h(t)m(yp)s(es.)150 4375 y Fo(^)432 b Fu(Bit)m(wise)30
b(exclusiv)m(e-)p Ft(or)p Fu(.)40 b(De\014ned)30 b(on)g(in)m(tegral)g
(t)m(yp)s(es.)150 4534 y Fo(&)432 b Fu(Bit)m(wise)30
b Ft(and)p Fu(.)40 b(De\014ned)30 b(on)g(in)m(tegral)g(t)m(yp)s(es.)150
4693 y Fo(==)p Fu(,)g Fo(!=)233 b Fu(Equalit)m(y)22 b(and)h(inequalit)m
(y)-8 b(.)37 b(De\014ned)23 b(on)h(scalar)f(t)m(yp)s(es.)38
b(The)23 b(v)-5 b(alue)23 b(of)h(these)f(expressions)630
4803 y(is)29 b(0)i(for)f(false)g(and)g(non-zero)h(for)f(true.)150
4962 y Fo(<)p Fu(,)g Fo(>)p Fu(,)h Fo(<=)p Fu(,)f Fo(>=)630
5071 y Fu(Less)j(than,)h(greater)h(than,)f(less)e(than)h(or)h(equal,)f
(greater)i(than)e(or)g(equal.)49 b(De\014ned)33 b(on)630
5181 y(scalar)28 b(t)m(yp)s(es.)40 b(The)28 b(v)-5 b(alue)27
b(of)i(these)f(expressions)f(is)g(0)i(for)f(false)g(and)f(non-zero)i
(for)f(true.)150 5340 y Fo(<<)p Fu(,)i Fo(>>)233 b Fu(left)30
b(shift,)f(and)h(righ)m(t)g(shift.)40 b(De\014ned)30
b(on)g(in)m(tegral)g(t)m(yp)s(es.)p eop
%%Page: 77 79
77 78 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(77)150
299 y Fo(@)432 b Fu(The)30 b(GDB)h(\\arti\014cial)f(arra)m(y")h(op)s
(erator)g(\(see)g(Section)f(8.1)i([Expressions],)d(page)i(55\).)150
459 y Fo(+)p Fu(,)f Fo(-)329 b Fu(Addition)32 b(and)h(subtraction.)50
b(De\014ned)34 b(on)f(in)m(tegral)h(t)m(yp)s(es,)h(\015oating-p)s(oin)m
(t)e(t)m(yp)s(es)h(and)630 569 y(p)s(oin)m(ter)29 b(t)m(yp)s(es.)150
729 y Fo(*)p Fu(,)h Fo(/)p Fu(,)h Fo(\045)225 b Fu(Multiplication,)30
b(division,)g(and)i(mo)s(dulus.)43 b(Multiplication)30
b(and)h(division)f(are)i(de\014ned)630 839 y(on)e(in)m(tegral)g(and)g
(\015oating-p)s(oin)m(t)g(t)m(yp)s(es.)41 b(Mo)s(dulus)28
b(is)h(de\014ned)g(on)i(in)m(tegral)f(t)m(yp)s(es.)150
999 y Fo(++)p Fu(,)g Fo(--)233 b Fu(Incremen)m(t)32 b(and)f(decremen)m
(t.)45 b(When)31 b(app)s(earing)f(b)s(efore)h(a)h(v)-5
b(ariable,)31 b(the)h(op)s(eration)f(is)630 1108 y(p)s(erformed)25
b(b)s(efore)i(the)g(v)-5 b(ariable)26 b(is)g(used)g(in)f(an)i
(expression;)g(when)f(app)s(earing)g(after)h(it,)630
1218 y(the)k(v)-5 b(ariable's)29 b(v)-5 b(alue)30 b(is)f(used)h(b)s
(efore)g(the)g(op)s(eration)g(tak)m(es)i(place.)150 1378
y Fo(*)432 b Fu(P)m(oin)m(ter)31 b(dereferencing.)40
b(De\014ned)30 b(on)g(p)s(oin)m(ter)f(t)m(yp)s(es.)41
b(Same)30 b(precedence)h(as)g Fo(++)p Fu(.)150 1539 y
Fo(&)432 b Fu(Address)29 b(op)s(erator.)41 b(De\014ned)30
b(on)h(v)-5 b(ariables.)39 b(Same)30 b(precedence)h(as)g
Fo(++)p Fu(.)630 1674 y(F)-8 b(or)38 b(debugging)e(C)p
Fo(++)p Fu(,)i(GDB)g(implemen)m(ts)e(a)h(use)g(of)g(`)p
Fo(&)p Fu(')h(b)s(ey)m(ond)e(what)h(is)f(allo)m(w)m(ed)h(in)630
1783 y(the)26 b(C)p Fo(++)e Fu(language)j(itself:)37
b(y)m(ou)26 b(can)g(use)f(`)p Fo(&\(&)p Fn(ref)17 b Fo(\))p
Fu(')25 b(\(or,)j(if)c(y)m(ou)i(prefer,)g(simply)d(`)p
Fo(&&)p Fn(ref)17 b Fu('\))630 1893 y(to)29 b(examine)e(the)i(address)e
(where)g(a)h(C)p Fo(++)f Fu(reference)i(v)-5 b(ariable)27
b(\(declared)g(with)g(`)p Fo(&)p Fn(ref)17 b Fu('\))29
b(is)630 2002 y(stored.)150 2163 y Fo(-)432 b Fu(Negativ)m(e.)41
b(De\014ned)26 b(on)h(in)m(tegral)f(and)g(\015oating-p)s(oin)m(t)g(t)m
(yp)s(es.)39 b(Same)27 b(precedence)g(as)f Fo(++)p Fu(.)150
2323 y Fo(!)432 b Fu(Logical)30 b(negation.)41 b(De\014ned)31
b(on)f(in)m(tegral)g(t)m(yp)s(es.)41 b(Same)30 b(precedence)h(as)f
Fo(++)p Fu(.)150 2483 y Fo(~)432 b Fu(Bit)m(wise)33 b(complemen)m(t)h
(op)s(erator.)51 b(De\014ned)33 b(on)g(in)m(tegral)h(t)m(yp)s(es.)50
b(Same)34 b(precedence)g(as)630 2593 y Fo(++)p Fu(.)150
2753 y Fo(.)p Fu(,)c Fo(->)281 b Fu(Structure)37 b(mem)m(b)s(er,)j(and)
e(p)s(oin)m(ter-to-structure)g(mem)m(b)s(er.)64 b(F)-8
b(or)39 b(con)m(v)m(enience,)j(GDB)630 2863 y(regards)29
b(the)h(t)m(w)m(o)h(as)e(equiv)-5 b(alen)m(t,)30 b(c)m(ho)s(osing)f
(whether)g(to)h(dereference)g(a)g(p)s(oin)m(ter)e(based)630
2972 y(on)i(the)h(stored)f(t)m(yp)s(e)h(information.)39
b(De\014ned)30 b(on)g Fo(struct)f Fu(and)h Fo(union)f
Fu(data.)150 3132 y Fo([])384 b Fu(Arra)m(y)31 b(indexing.)38
b Fn(a)p Fo([)p Fn(i)5 b Fo(])29 b Fu(is)h(de\014ned)f(as)i
Fo(*\()p Fn(a)p Fo(+)p Fn(i)5 b Fo(\))p Fu(.)39 b(Same)30
b(precedence)h(as)g Fo(->)p Fu(.)150 3293 y Fo(\(\))384
b Fu(F)-8 b(unction)30 b(parameter)h(list.)39 b(Same)31
b(precedence)g(as)f Fo(->)p Fu(.)150 3453 y Fo(::)384
b Fu(C)p Fo(++)29 b Fu(scop)s(e)i(resolution)e(op)s(erator.)41
b(De\014ned)30 b(on)g Fo(struct)p Fu(,)f Fo(union)p Fu(,)g(and)h
Fo(class)f Fu(t)m(yp)s(es.)150 3613 y Fo(::)384 b Fu(Doubled)38
b(colons)h(also)f(represen)m(t)h(the)g(GDB)h(scop)s(e)f(op)s(erator)g
(\(see)h(Section)f(8.1)h([Ex-)630 3723 y(pressions],)29
b(page)i(55\).)42 b(Same)31 b(precedence)f(as)h Fo(::)p
Fu(,)f(ab)s(o)m(v)m(e.)150 3949 y Fk(9.4.1.2)63 b(C)41
b(and)g(C)p Ff(++)f Fk(constan)m(ts)275 4142 y Fu(GDB)31
b(allo)m(ws)f(y)m(ou)g(to)i(express)d(the)i(constan)m(ts)h(of)e(C)g
(and)g(C)p Fo(++)f Fu(in)g(the)i(follo)m(wing)e(w)m(a)m(ys:)225
4278 y Fq(\017)60 b Fu(In)m(teger)36 b(constan)m(ts)f(are)h(a)f
(sequence)g(of)g(digits.)52 b(Octal)35 b(constan)m(ts)g(are)h(sp)s
(eci\014ed)d(b)m(y)h(a)h(leading)330 4387 y(`)p Fo(0)p
Fu(')27 b(\(i.e.)40 b(zero\),)29 b(and)e(hexadecimal)f(constan)m(ts)i
(b)m(y)f(a)h(leading)d(`)p Fo(0x)p Fu(')i(or)g(`)p Fo(0X)p
Fu('.)40 b(Constan)m(ts)27 b(ma)m(y)h(also)330 4497 y(end)i(with)f(a)i
(letter)f(`)p Fo(l)p Fu(',)h(sp)s(ecifying)d(that)j(the)g(constan)m(t)g
(should)e(b)s(e)h(treated)h(as)g(a)f Fo(long)g Fu(v)-5
b(alue.)225 4632 y Fq(\017)60 b Fu(Floating)28 b(p)s(oin)m(t)f(constan)
m(ts)h(are)h(a)f(sequence)g(of)g(digits,)f(follo)m(w)m(ed)g(b)m(y)h(a)g
(decimal)f(p)s(oin)m(t,)g(follo)m(w)m(ed)330 4741 y(b)m(y)h(a)h
(sequence)f(of)h(digits,)e(and)h(optionally)e(follo)m(w)m(ed)i(b)m(y)g
(an)g(exp)s(onen)m(t.)40 b(An)28 b(exp)s(onen)m(t)g(is)f(of)i(the)330
4851 y(form:)55 b(`)p Fo(e)p Fu([[)p Fo(+)p Fu(])p Fo(|-)p
Fu(])p Fn(nnn)n Fu(',)40 b(where)d Fn(nnn)f Fu(is)h(another)h(sequence)
g(of)g(digits.)61 b(The)37 b(`)p Fo(+)p Fu(')h(is)e(optional)h(for)330
4961 y(p)s(ositiv)m(e)29 b(exp)s(onen)m(ts.)225 5095
y Fq(\017)60 b Fu(En)m(umerated)30 b(constan)m(ts)i(consist)e(of)g(en)m
(umerated)h(iden)m(ti\014ers,)e(or)h(their)f(in)m(tegral)h(equiv)-5
b(alen)m(ts.)225 5230 y Fq(\017)60 b Fu(Character)51
b(constan)m(ts)g(are)g(a)f(single)f(c)m(haracter)j(surrounded)c(b)m(y)i
(single)f(quotes)h(\()p Fo(')p Fu(\),)56 b(or)51 b(a)330
5340 y(n)m(um)m(b)s(er|the)33 b(ordinal)g(v)-5 b(alue)34
b(of)g(the)h(corresp)s(onding)e(c)m(haracter)j(\(usually)c(its)i
Ft(ASCI)s(I)g Fu(v)-5 b(alue\).)p eop
%%Page: 78 80
78 79 bop 150 -116 a Fu(78)2644 b(Debugging)31 b(with)e(GDB)330
299 y(Within)47 b(quotes,)55 b(the)50 b(single)d(c)m(haracter)k(ma)m(y)
f(b)s(e)f(represen)m(ted)g(b)m(y)g(a)h(letter)f(or)g(b)m(y)g
Fn(escap)s(e)330 408 y(sequences)p Fu(,)h(whic)m(h)44
b(are)i(of)g(the)g(form)f(`)p Fo(\\)p Fn(nnn)p Fu(',)j(where)d
Fn(nnn)f Fu(is)g(the)i(o)s(ctal)g(represen)m(tation)g(of)330
518 y(the)c(c)m(haracter's)i(ordinal)c(v)-5 b(alue;)48
b(or)42 b(of)g(the)g(form)g(`)p Fo(\\)p Fn(x)6 b Fu(',)45
b(where)d(`)p Fn(x)6 b Fu(')43 b(is)e(a)h(prede\014ned)e(sp)s(ecial)330
628 y(c)m(haracter|for)32 b(example,)e(`)p Fo(\\n)p Fu(')g(for)g
(newline.)225 765 y Fq(\017)60 b Fu(String)37 b(constan)m(ts)i(are)g(a)
g(sequence)f(of)h(c)m(haracter)g(constan)m(ts)h(surrounded)35
b(b)m(y)k(double)d(quotes)330 874 y(\()p Fo(")p Fu(\).)225
1011 y Fq(\017)60 b Fu(P)m(oin)m(ter)29 b(constan)m(ts)h(are)f(an)g(in)
m(tegral)f(v)-5 b(alue.)40 b(Y)-8 b(ou)29 b(can)g(also)g(write)f(p)s
(oin)m(ters)f(to)j(constan)m(ts)f(using)330 1121 y(the)i(C)f(op)s
(erator)g(`)p Fo(&)p Fu('.)225 1258 y Fq(\017)60 b Fu(Arra)m(y)38
b(constan)m(ts)i(are)e(comma-separated)i(lists)c(surrounded)g(b)m(y)i
(braces)g(`)p Fo({)p Fu(')h(and)e(`)p Fo(})p Fu(';)42
b(for)c(ex-)330 1368 y(ample,)i(`)p Fo({1,2,3})p Fu(')e(is)g(a)h
(three-elemen)m(t)h(arra)m(y)f(of)g(in)m(tegers,)i(`)p
Fo({{1,2},)29 b({3,4},)f({5,6}})p Fu(')38 b(is)g(a)330
1477 y(three-b)m(y-t)m(w)m(o)48 b(arra)m(y)-8 b(,)50
b(and)45 b(`)p Fo({&"hi",)28 b(&"there",)g(&"fred"})p
Fu(')43 b(is)i(a)h(three-elemen)m(t)g(arra)m(y)g(of)330
1587 y(p)s(oin)m(ters.)150 1821 y Fk(9.4.1.3)63 b(C)p
Ff(++)41 b Fk(expressions)275 2019 y Fu(GDB)31 b(expression)e(handling)
f(can)j(in)m(terpret)e(most)i(C)p Fo(++)e Fu(expressions.)390
2153 y Fr(Warning:)45 b Fu(GDB)29 b(can)f(only)g(debug)f(C)p
Fo(++)g Fu(co)s(de)h(if)f(y)m(ou)i(use)f(the)g(prop)s(er)f(compiler.)38
b(T)m(yp-)390 2256 y(ically)-8 b(,)31 b(C)p Fo(++)g Fu(debugging)g(dep)
s(ends)f(on)i(the)g(use)g(of)g(additional)e(debugging)h(information)390
2360 y(in)k(the)i(sym)m(b)s(ol)e(table,)j(and)e(th)m(us)g(requires)f
(sp)s(ecial)g(supp)s(ort.)57 b(In)36 b(particular,)h(if)e(y)m(our)390
2464 y(compiler)27 b(generates)j(a.out,)g(MIPS)e Ft(ecoff)p
Fu(,)f(RS/6000)j Ft(x)n(coff)p Fu(,)e(or)g Ft(elf)g Fu(with)f(stabs)h
(ex-)390 2568 y(tensions)k(to)i(the)f(sym)m(b)s(ol)e(table,)j(these)f
(facilities)e(are)j(all)d(a)m(v)-5 b(ailable.)48 b(\(With)33
b Ft(gnu)f Fu(CC,)390 2671 y(y)m(ou)d(can)f(use)g(the)h(`)p
Fo(-gstabs)p Fu(')d(option)i(to)h(request)g(stabs)f(debugging)f
(extensions)h(explic-)390 2775 y(itly)-8 b(.\))40 b(Where)28
b(the)g(ob)5 b(ject)29 b(co)s(de)g(format)f(is)g(standard)f
Ft(coff)g Fu(or)h Ft(d)n(w)-8 b(arf)27 b Fu(in)g Ft(elf)p
Fu(,)h(on)g(the)390 2879 y(other)j(hand,)e(most)i(of)f(the)h(C)p
Fo(++)e Fu(supp)s(ort)g(in)g(GDB)j(do)s(es)e Fr(not)39
b Fu(w)m(ork.)199 3076 y(1.)61 b(Mem)m(b)s(er)30 b(function)f(calls)h
(are)h(allo)m(w)m(ed;)f(y)m(ou)h(can)g(use)f(expressions)f(lik)m(e)570
3207 y Fo(count)46 b(=)i(aml->GetOriginal\(x,)42 b(y\))199
3344 y Fu(2.)61 b(While)27 b(a)i(mem)m(b)s(er)f(function)f(is)g(activ)m
(e)j(\(in)d(the)i(selected)f(stac)m(k)i(frame\),)f(y)m(our)g
(expressions)e(ha)m(v)m(e)330 3454 y(the)37 b(same)h(namespace)g(a)m(v)
-5 b(ailable)36 b(as)h(the)h(mem)m(b)s(er)e(function;)k(that)d(is,)h
(GDB)h(allo)m(ws)d(implicit)330 3564 y(references)31
b(to)g(the)f(class)g(instance)h(p)s(oin)m(ter)e Fo(this)g
Fu(follo)m(wing)g(the)i(same)f(rules)f(as)i(C)p Fo(++)p
Fu(.)199 3701 y(3.)61 b(Y)-8 b(ou)23 b(can)f(call)f(o)m(v)m(erloaded)i
(functions;)h(GDB)f(resolv)m(es)f(the)g(function)f(call)g(to)i(the)f
(righ)m(t)g(de\014nition,)330 3810 y(with)h(one)i(restriction|y)m(ou)g
(m)m(ust)f(use)h(argumen)m(ts)g(of)g(the)f(t)m(yp)s(e)h(required)e(b)m
(y)i(the)g(function)e(that)330 3920 y(y)m(ou)36 b(w)m(an)m(t)h(to)g
(call.)58 b(GDB)37 b(do)s(es)f(not)g(p)s(erform)f(con)m(v)m(ersions)h
(requiring)e(constructors)i(or)g(user-)330 4029 y(de\014ned)29
b(t)m(yp)s(e)i(op)s(erators.)199 4166 y(4.)61 b(GDB)24
b(understands)d(v)-5 b(ariables)22 b(declared)g(as)h(C)p
Fo(++)f Fu(references;)k(y)m(ou)e(can)f(use)g(them)g(in)e(expressions)
330 4276 y(just)30 b(as)g(y)m(ou)h(do)f(in)f(C)p Fo(++)h
Fu(source|they)h(are)f(automatically)h(dereferenced.)330
4413 y(In)g(the)h(parameter)h(list)d(sho)m(wn)h(when)g(GDB)i(displa)m
(ys)d(a)i(frame,)h(the)f(v)-5 b(alues)31 b(of)h(reference)g(v)-5
b(ari-)330 4523 y(ables)27 b(are)h(not)g(displa)m(y)m(ed)f(\(unlik)m(e)
f(other)i(v)-5 b(ariables\);)28 b(this)f(a)m(v)m(oids)h(clutter,)g
(since)f(references)i(are)330 4632 y(often)37 b(used)e(for)i(large)f
(structures.)58 b(The)36 b Fr(addr)-5 b(ess)46 b Fu(of)37
b(a)g(reference)g(v)-5 b(ariable)35 b(is)g(alw)m(a)m(ys)i(sho)m(wn,)330
4742 y(unless)29 b(y)m(ou)h(ha)m(v)m(e)i(sp)s(eci\014ed)d(`)p
Fo(set)g(print)g(address)g(off)p Fu('.)199 4879 y(5.)61
b(GDB)23 b(supp)s(orts)d(the)i(C)p Fo(++)g Fu(name)g(resolution)e(op)s
(erator)j Fo(::)p Fu(|y)m(our)e(expressions)g(can)h(use)g(it)f(just)h
(as)330 4988 y(expressions)f(in)h(y)m(our)h(program)f(do.)38
b(Since)22 b(one)h(scop)s(e)g(ma)m(y)h(b)s(e)e(de\014ned)g(in)f
(another,)k(y)m(ou)e(can)g(use)330 5098 y Fo(::)29 b
Fu(rep)s(eatedly)g(if)g(necessary)-8 b(,)31 b(for)e(example)h(in)e(an)i
(expression)e(lik)m(e)h(`)p Fn(scop)s(e1)7 b Fo(::)p
Fn(scop)s(e2)g Fo(::)p Fn(name)e Fu('.)330 5208 y(GDB)32
b(also)e(allo)m(ws)g(resolving)f(name)i(scop)s(e)f(b)m(y)h(reference)f
(to)i(source)e(\014les,)g(in)f(b)s(oth)h(C)g(and)g(C)p
Fo(++)330 5317 y Fu(debugging)f(\(see)j(Section)e(8.2)h([Program)g(v)-5
b(ariables],)30 b(page)h(56\).)p eop
%%Page: 79 81
79 80 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(79)150
299 y Fk(9.4.1.4)63 b(C)41 b(and)g(C)p Ff(++)f Fk(defaults)275
490 y Fu(If)24 b(y)m(ou)i(allo)m(w)f(GDB)h(to)g(set)g(t)m(yp)s(e)f(and)
g(range)h(c)m(hec)m(king)g(automatically)-8 b(,)26 b(they)g(b)s(oth)e
(default)h(to)h Fo(off)150 600 y Fu(whenev)m(er)32 b(the)h(w)m(orking)f
(language)h(c)m(hanges)h(to)f(C)f(or)h(C)p Fo(++)p Fu(.)46
b(This)31 b(happ)s(ens)g(regardless)h(of)h(whether)150
709 y(y)m(ou)e(or)f(GDB)i(selects)e(the)h(w)m(orking)f(language.)275
842 y(If)40 b(y)m(ou)i(allo)m(w)f(GDB)h(to)g(set)g(the)f(language)h
(automatically)-8 b(,)44 b(it)d(recognizes)h(source)f(\014les)f(whose)
150 952 y(names)33 b(end)f(with)g(`)p Fo(.c)p Fu(',)i(`)p
Fo(.C)p Fu(',)f(or)g(`)p Fo(.cc)p Fu(',)h(etc,)h(and)d(when)g(GDB)i(en)
m(ters)f(co)s(de)h(compiled)d(from)i(one)g(of)150 1062
y(these)f(\014les,)f(it)g(sets)g(the)h(w)m(orking)f(language)h(to)g(C)f
(or)g(C)p Fo(++)p Fu(.)43 b(See)32 b(Section)f(9.1.3)i([Ha)m(ving)f
(GDB)g(infer)150 1171 y(the)f(source)f(language],)h(page)h(72,)f(for)f
(further)f(details.)150 1391 y Fk(9.4.1.5)63 b(C)41 b(and)g(C)p
Ff(++)f Fk(t)m(yp)s(e)h(and)g(range)g(c)m(hec)m(ks)275
1582 y Fu(By)25 b(default,)g(when)f(GDB)i(parses)f(C)f(or)h(C)p
Fo(++)f Fu(expressions,)h(t)m(yp)s(e)g(c)m(hec)m(king)g(is)f(not)i
(used.)38 b(Ho)m(w)m(ev)m(er,)150 1692 y(if)29 b(y)m(ou)i(turn)e(t)m
(yp)s(e)i(c)m(hec)m(king)g(on,)g(GDB)g(considers)e(t)m(w)m(o)j(v)-5
b(ariables)29 b(t)m(yp)s(e)h(equiv)-5 b(alen)m(t)30 b(if:)225
1825 y Fq(\017)60 b Fu(The)34 b(t)m(w)m(o)i(v)-5 b(ariables)34
b(are)h(structured)f(and)g(ha)m(v)m(e)i(the)f(same)g(structure,)h
(union,)e(or)h(en)m(umerated)330 1934 y(tag.)225 2068
y Fq(\017)60 b Fu(The)22 b(t)m(w)m(o)h(v)-5 b(ariables)21
b(ha)m(v)m(e)i(the)f(same)h(t)m(yp)s(e)f(name,)i(or)e(t)m(yp)s(es)g
(that)g(ha)m(v)m(e)i(b)s(een)d(declared)g(equiv)-5 b(alen)m(t)330
2177 y(through)30 b Fo(typedef)p Fu(.)275 2334 y(Range)c(c)m(hec)m
(king,)j(if)c(turned)g(on,)i(is)f(done)g(on)g(mathematical)g(op)s
(erations.)39 b(Arra)m(y)27 b(indices)d(are)j(not)150
2443 y(c)m(hec)m(k)m(ed,)33 b(since)c(they)i(are)g(often)f(used)g(to)h
(index)e(a)i(p)s(oin)m(ter)e(that)i(is)f(not)g(itself)f(an)i(arra)m(y)
-8 b(.)150 2663 y Fk(9.4.1.6)63 b(GDB)41 b(and)g(C)275
2854 y Fu(The)22 b Fo(set)29 b(print)g(union)22 b Fu(and)g
Fo(show)29 b(print)g(union)22 b Fu(commands)g(apply)g(to)h(the)g
Fo(union)f Fu(t)m(yp)s(e.)38 b(When)150 2964 y(set)25
b(to)g(`)p Fo(on)p Fu(',)h(an)m(y)f Fo(union)f Fu(that)h(is)e(inside)g
(a)i Fo(struct)e Fu(or)h Fo(class)f Fu(is)h(also)h(prin)m(ted.)37
b(Otherwise,)25 b(it)f(app)s(ears)150 3074 y(as)31 b(`)p
Fo({...})p Fu('.)275 3207 y(The)37 b Fo(@)g Fu(op)s(erator)i(aids)d(in)
h(the)h(debugging)f(of)h(dynamic)e(arra)m(ys,)41 b(formed)c(with)g(p)s
(oin)m(ters)f(and)i(a)150 3316 y(memory)30 b(allo)s(cation)g(function.)
39 b(See)31 b(Section)f(8.1)i([Expressions],)d(page)i(55.)150
3536 y Fk(9.4.1.7)63 b(GDB)41 b(features)f(for)h(C)p
Ff(++)275 3727 y Fu(Some)31 b(GDB)i(commands)f(are)g(particularly)d
(useful)h(with)h(C)p Fo(++)p Fu(,)g(and)g(some)h(are)h(designed)d(sp)s
(eci\014-)150 3837 y(cally)g(for)g(use)g(with)f(C)p Fo(++)p
Fu(.)40 b(Here)31 b(is)e(a)i(summary:)150 4041 y(breakp)s(oin)m(t)e
(men)m(us)630 4150 y(When)39 b(y)m(ou)g(w)m(an)m(t)h(a)f(breakp)s(oin)m
(t)f(in)g(a)h(function)f(whose)h(name)g(is)f(o)m(v)m(erloaded,)k(GDB)
630 4260 y(breakp)s(oin)m(t)e(men)m(us)h(help)f(y)m(ou)i(sp)s(ecify)e
(whic)m(h)g(function)g(de\014nition)f(y)m(ou)i(w)m(an)m(t.)75
b(See)630 4369 y(Section)30 b(5.1.8)i([Breakp)s(oin)m(t)f(men)m(us],)f
(page)h(37.)150 4526 y Fo(rbreak)e Fn(regex)630 4635
y Fu(Setting)h(breakp)s(oin)m(ts)f(using)g(regular)h(expressions)f(is)h
(helpful)d(for)k(setting)f(breakp)s(oin)m(ts)630 4745
y(on)j(o)m(v)m(erloaded)h(functions)d(that)j(are)f(not)g(mem)m(b)s(ers)
f(of)h(an)m(y)g(sp)s(ecial)f(classes.)48 b(See)33 b(Sec-)630
4855 y(tion)d(5.1.1)i([Setting)e(breakp)s(oin)m(ts],)g(page)h(28.)150
5011 y Fo(catch)e(throw)150 5121 y(catch)g(catch)630
5230 y Fu(Debug)k(C)p Fo(++)f Fu(exception)g(handling)e(using)h(these)i
(commands.)48 b(See)32 b(Section)h(5.1.3)h([Set-)630
5340 y(ting)c(catc)m(hp)s(oin)m(ts],)h(page)g(32.)p eop
%%Page: 80 82
80 81 bop 150 -116 a Fu(80)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(ptype)g Fn(t)m(yp)s(ename)630 408 y Fu(Prin)m(t)f(inheritance)
g(relationships)f(as)i(w)m(ell)f(as)i(other)f(information)f(for)h(t)m
(yp)s(e)g Fn(t)m(yp)s(ename)p Fu(.)630 518 y(See)i(Chapter)e(10)j
([Examining)c(the)j(Sym)m(b)s(ol)e(T)-8 b(able],)30 b(page)h(93.)150
677 y Fo(set)e(print)g(demangle)150 787 y(show)g(print)g(demangle)150
896 y(set)g(print)g(asm-demangle)150 1006 y(show)g(print)g
(asm-demangle)630 1116 y Fu(Con)m(trol)21 b(whether)f(C)p
Fo(++)g Fu(sym)m(b)s(ols)g(displa)m(y)f(in)h(their)g(source)h(form,)i
(b)s(oth)d(when)h(displa)m(ying)630 1225 y(co)s(de)34
b(as)g(C)p Fo(++)e Fu(source)i(and)f(when)g(displa)m(ying)e(disassem)m
(blies.)48 b(See)34 b(Section)f(8.7)i([Prin)m(t)630 1335
y(settings],)c(page)g(61.)150 1494 y Fo(set)e(print)g(object)150
1604 y(show)g(print)g(object)630 1713 y Fu(Cho)s(ose)43
b(whether)f(to)i(prin)m(t)e(deriv)m(ed)g(\(actual\))i(or)f(declared)g
(t)m(yp)s(es)g(of)g(ob)5 b(jects.)80 b(See)630 1823 y(Section)30
b(8.7)i([Prin)m(t)d(settings],)i(page)g(61.)150 1982
y Fo(set)e(print)g(vtbl)150 2092 y(show)g(print)g(vtbl)630
2201 y Fu(Con)m(trol)k(the)h(format)g(for)g(prin)m(ting)d(virtual)h
(function)h(tables.)50 b(See)34 b(Section)g(8.7)h([Prin)m(t)630
2311 y(settings],)c(page)g(61.)150 2470 y(Ov)m(erloaded)f(sym)m(b)s(ol)
f(names)630 2580 y(Y)-8 b(ou)27 b(can)g(sp)s(ecify)e(a)i(particular)e
(de\014nition)f(of)j(an)g(o)m(v)m(erloaded)g(sym)m(b)s(ol,)g(using)e
(the)i(same)630 2689 y(notation)21 b(that)g(is)e(used)g(to)j(declare)e
(suc)m(h)g(sym)m(b)s(ols)f(in)g(C)p Fo(++)p Fu(:)35 b(t)m(yp)s(e)20
b Fn(sym)m(b)s(ol)t Fo(\()p Fn(t)m(yp)s(es)t Fo(\))e
Fu(rather)630 2799 y(than)34 b(just)g Fn(sym)m(b)s(ol)p
Fu(.)51 b(Y)-8 b(ou)35 b(can)g(also)f(use)g(the)g(GDB)i(command-line)d
(w)m(ord)h(completion)630 2909 y(facilities)40 b(to)i(list)e(the)i(a)m
(v)-5 b(ailable)41 b(c)m(hoices,)46 b(or)41 b(to)i(\014nish)c(the)i(t)m
(yp)s(e)h(list)f(for)g(y)m(ou.)75 b(See)630 3018 y(Section)30
b(3.2)i([Command)d(completion],)h(page)i(13,)f(for)f(details)g(on)g(ho)
m(w)g(to)h(do)g(this.)150 3242 y Fk(9.4.2)63 b(Mo)s(dula-2)275
3435 y Fu(The)32 b(extensions)g(made)h(to)g(GDB)h(to)f(supp)s(ort)e(Mo)
s(dula-2)h(only)g(supp)s(ort)f(output)h(from)g(the)h
Ft(gnu)150 3544 y Fu(Mo)s(dula-2)25 b(compiler)f(\(whic)m(h)h(is)f
(curren)m(tly)g(b)s(eing)g(dev)m(elop)s(ed\).)39 b(Other)25
b(Mo)s(dula-2)g(compilers)f(are)i(not)150 3654 y(curren)m(tly)h(supp)s
(orted,)g(and)g(attempting)h(to)h(debug)e(executables)h(pro)s(duced)f
(b)m(y)g(them)h(is)f(most)h(lik)m(ely)150 3763 y(to)j(giv)m(e)g(an)f
(error)g(as)h(GDB)g(reads)f(in)g(the)g(executable's)h(sym)m(b)s(ol)e
(table.)150 3987 y Fk(9.4.2.1)63 b(Op)s(erators)275 4180
y Fu(Op)s(erators)40 b(m)m(ust)h(b)s(e)f(de\014ned)g(on)h(v)-5
b(alues)40 b(of)h(sp)s(eci\014c)f(t)m(yp)s(es.)72 b(F)-8
b(or)42 b(instance,)i Fo(+)c Fu(is)g(de\014ned)g(on)150
4289 y(n)m(um)m(b)s(ers,)35 b(but)f(not)h(on)g(structures.)53
b(Op)s(erators)34 b(are)h(often)h(de\014ned)d(on)i(groups)f(of)h(t)m
(yp)s(es.)54 b(F)-8 b(or)36 b(the)150 4399 y(purp)s(oses)29
b(of)h(Mo)s(dula-2,)g(the)h(follo)m(wing)e(de\014nitions)f(hold:)225
4533 y Fq(\017)60 b Fr(Inte)-5 b(gr)g(al)34 b(typ)-5
b(es)39 b Fu(consist)30 b(of)h Fo(INTEGER)p Fu(,)d Fo(CARDINAL)p
Fu(,)h(and)g(their)h(subranges.)225 4668 y Fq(\017)60
b Fr(Char)-5 b(acter)35 b(typ)-5 b(es)39 b Fu(consist)30
b(of)g Fo(CHAR)f Fu(and)h(its)g(subranges.)225 4802 y
Fq(\017)60 b Fr(Flo)-5 b(ating-p)g(oint)35 b(typ)-5 b(es)39
b Fu(consist)30 b(of)h Fo(REAL)p Fu(.)225 4937 y Fq(\017)60
b Fr(Pointer)33 b(typ)-5 b(es)39 b Fu(consist)30 b(of)g(an)m(ything)g
(declared)g(as)h Fo(POINTER)d(TO)i Fn(t)m(yp)s(e)5 b
Fu(.)225 5071 y Fq(\017)60 b Fr(Sc)-5 b(alar)34 b(typ)-5
b(es)39 b Fu(consist)30 b(of)h(all)e(of)i(the)f(ab)s(o)m(v)m(e.)225
5206 y Fq(\017)60 b Fr(Set)33 b(typ)-5 b(es)39 b Fu(consist)30
b(of)g Fo(SET)g Fu(and)f Fo(BITSET)g Fu(t)m(yp)s(es.)225
5340 y Fq(\017)60 b Fr(Bo)-5 b(ole)g(an)35 b(typ)-5 b(es)39
b Fu(consist)30 b(of)g Fo(BOOLEAN)p Fu(.)p eop
%%Page: 81 83
81 82 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(81)150
299 y(The)30 b(follo)m(wing)f(op)s(erators)h(are)h(supp)s(orted,)e(and)
h(app)s(ear)f(in)g(order)h(of)h(increasing)e(precedence:)150
485 y Fo(,)432 b Fu(F)-8 b(unction)30 b(argumen)m(t)h(or)f(arra)m(y)h
(index)e(separator.)150 663 y Fo(:=)384 b Fu(Assignmen)m(t.)40
b(The)30 b(v)-5 b(alue)30 b(of)h Fn(v)-5 b(ar)36 b Fo(:=)30
b Fn(v)-5 b(alue)35 b Fu(is)29 b Fn(v)-5 b(alue)p Fu(.)150
840 y Fo(<)p Fu(,)30 b Fo(>)329 b Fu(Less)30 b(than,)h(greater)g(than)f
(on)h(in)m(tegral,)f(\015oating-p)s(oin)m(t,)g(or)g(en)m(umerated)h(t)m
(yp)s(es.)150 1017 y Fo(<=)p Fu(,)f Fo(>=)233 b Fu(Less)43
b(than,)k(greater)d(than,)j(less)42 b(than)i(or)f(equal)g(to,)k
(greater)e(than)e(or)g(equal)g(to)h(on)630 1127 y(in)m(tegral,)h
(\015oating-p)s(oin)m(t)d(and)g(en)m(umerated)h(t)m(yp)s(es,)j(or)c
(set)h(inclusion)c(on)k(set)g(t)m(yp)s(es.)630 1237 y(Same)30
b(precedence)h(as)g Fo(<)p Fu(.)150 1414 y Fo(=)p Fu(,)f
Fo(<>)p Fu(,)g Fo(#)178 b Fu(Equalit)m(y)38 b(and)g(t)m(w)m(o)i(w)m(a)m
(ys)g(of)e(expressing)g(inequalit)m(y)-8 b(,)40 b(v)-5
b(alid)37 b(on)h(scalar)h(t)m(yp)s(es.)66 b(Same)630
1524 y(precedence)39 b(as)h Fo(<)p Fu(.)66 b(In)38 b(GDB)i(scripts,)g
(only)e Fo(<>)g Fu(is)g(a)m(v)-5 b(ailable)38 b(for)h(inequalit)m(y)-8
b(,)40 b(since)e Fo(#)630 1633 y Fu(con\015icts)30 b(with)f(the)i
(script)e(commen)m(t)i(c)m(haracter.)150 1811 y Fo(IN)384
b Fu(Set)34 b(mem)m(b)s(ership.)47 b(De\014ned)33 b(on)h(set)g(t)m(yp)s
(es)f(and)g(the)h(t)m(yp)s(es)f(of)h(their)f(mem)m(b)s(ers.)49
b(Same)630 1920 y(precedence)31 b(as)f Fo(<)p Fu(.)150
2098 y Fo(OR)384 b Fu(Bo)s(olean)31 b(disjunction.)38
b(De\014ned)30 b(on)g(b)s(o)s(olean)f(t)m(yp)s(es.)150
2275 y Fo(AND)p Fu(,)h Fo(&)233 b Fu(Bo)s(olean)31 b(conjuction.)40
b(De\014ned)30 b(on)g(b)s(o)s(olean)g(t)m(yp)s(es.)150
2452 y Fo(@)432 b Fu(The)30 b(GDB)h(\\arti\014cial)f(arra)m(y")h(op)s
(erator)g(\(see)g(Section)f(8.1)i([Expressions],)d(page)i(55\).)150
2630 y Fo(+)p Fu(,)f Fo(-)329 b Fu(Addition)39 b(and)h(subtraction)g
(on)g(in)m(tegral)g(and)h(\015oating-p)s(oin)m(t)f(t)m(yp)s(es,)j(or)e
(union)e(and)630 2739 y(di\013erence)30 b(on)g(set)h(t)m(yp)s(es.)150
2917 y Fo(*)432 b Fu(Multiplication)35 b(on)k(in)m(tegral)f(and)f
(\015oating-p)s(oin)m(t)h(t)m(yp)s(es,)j(or)d(set)h(in)m(tersection)f
(on)g(set)630 3026 y(t)m(yp)s(es.)150 3204 y Fo(/)432
b Fu(Division)23 b(on)i(\015oating-p)s(oin)m(t)g(t)m(yp)s(es,)h(or)g
(symmetric)e(set)i(di\013erence)f(on)g(set)h(t)m(yp)s(es.)39
b(Same)630 3313 y(precedence)31 b(as)f Fo(*)p Fu(.)150
3491 y Fo(DIV)p Fu(,)g Fo(MOD)137 b Fu(In)m(teger)30
b(division)25 b(and)j(remainder.)39 b(De\014ned)28 b(on)h(in)m(tegral)f
(t)m(yp)s(es.)40 b(Same)29 b(precedence)g(as)630 3600
y Fo(*)p Fu(.)150 3778 y Fo(-)432 b Fu(Negativ)m(e.)43
b(De\014ned)30 b(on)g Fo(INTEGER)e Fu(and)i Fo(REAL)f
Fu(data.)150 3955 y Fo(^)432 b Fu(P)m(oin)m(ter)31 b(dereferencing.)40
b(De\014ned)30 b(on)g(p)s(oin)m(ter)f(t)m(yp)s(es.)150
4133 y Fo(NOT)336 b Fu(Bo)s(olean)31 b(negation.)41 b(De\014ned)30
b(on)g(b)s(o)s(olean)g(t)m(yp)s(es.)40 b(Same)31 b(precedence)g(as)f
Fo(^)p Fu(.)150 4310 y Fo(.)432 b(RECORD)29 b Fu(\014eld)g(selector.)41
b(De\014ned)30 b(on)g Fo(RECORD)f Fu(data.)41 b(Same)31
b(precedence)g(as)f Fo(^)p Fu(.)150 4487 y Fo([])384
b Fu(Arra)m(y)31 b(indexing.)38 b(De\014ned)30 b(on)g
Fo(ARRAY)f Fu(data.)42 b(Same)30 b(precedence)h(as)g
Fo(^)p Fu(.)150 4665 y Fo(\(\))384 b Fu(Pro)s(cedure)33
b(argumen)m(t)h(list.)50 b(De\014ned)33 b(on)h Fo(PROCEDURE)d
Fu(ob)5 b(jects.)52 b(Same)33 b(precedence)i(as)630 4774
y Fo(^)p Fu(.)150 4952 y Fo(::)p Fu(,)30 b Fo(.)281 b
Fu(GDB)31 b(and)f(Mo)s(dula-2)g(scop)s(e)h(op)s(erators.)390
5132 y Fr(Warning:)49 b Fu(Sets)32 b(and)f(their)g(op)s(erations)h(are)
g(not)g(y)m(et)h(supp)s(orted,)e(so)h(GDB)h(treats)g(the)390
5236 y(use)d(of)h(the)g(op)s(erator)g Fo(IN)p Fu(,)f(or)g(the)h(use)g
(of)f(op)s(erators)h Fo(+)p Fu(,)g Fo(-)p Fu(,)f Fo(*)p
Fu(,)h Fo(/)p Fu(,)f Fo(=)p Fu(,)h(,)g Fo(<>)p Fu(,)f
Fo(#)p Fu(,)g Fo(<=)p Fu(,)h(and)f Fo(>=)390 5340 y Fu(on)g(sets)h(as)g
(an)f(error.)p eop
%%Page: 82 84
82 83 bop 150 -116 a Fu(82)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fk(9.4.2.2)63 b(Built-in)42 b(functions)f(and)g(pro)s(cedures)275
487 y Fu(Mo)s(dula-2)33 b(also)h(mak)m(es)g(a)m(v)-5
b(ailable)33 b(sev)m(eral)h(built-in)d(pro)s(cedures)h(and)h
(functions.)49 b(In)33 b(describing)150 597 y(these,)e(the)g(follo)m
(wing)d(meta)m(v)-5 b(ariables)31 b(are)g(used:)150 747
y Fn(a)435 b Fu(represen)m(ts)30 b(an)h Fo(ARRAY)d Fu(v)-5
b(ariable.)150 897 y Fn(c)440 b Fu(represen)m(ts)30 b(a)h
Fo(CHAR)e Fu(constan)m(t)j(or)e(v)-5 b(ariable.)150 1047
y Fn(i)454 b Fu(represen)m(ts)30 b(a)h(v)-5 b(ariable)29
b(or)i(constan)m(t)g(of)g(in)m(tegral)f(t)m(yp)s(e.)150
1198 y Fn(m)404 b Fu(represen)m(ts)29 b(an)g(iden)m(ti\014er)f(that)i
(b)s(elongs)e(to)i(a)g(set.)40 b(Generally)29 b(used)f(in)g(the)i(same)
g(func-)630 1307 y(tion)37 b(with)g(the)h(meta)m(v)-5
b(ariable)38 b Fn(s)p Fu(.)63 b(The)38 b(t)m(yp)s(e)g(of)g
Fn(s)j Fu(should)36 b(b)s(e)h Fo(SET)30 b(OF)g Fn(m)m(t)m(yp)s(e)43
b Fu(\(where)630 1417 y Fn(m)m(t)m(yp)s(e)36 b Fu(is)29
b(the)i(t)m(yp)s(e)f(of)h Fn(m)p Fu(\).)150 1567 y Fn(n)429
b Fu(represen)m(ts)30 b(a)h(v)-5 b(ariable)29 b(or)i(constan)m(t)g(of)g
(in)m(tegral)f(or)g(\015oating-p)s(oin)m(t)g(t)m(yp)s(e.)150
1717 y Fn(r)444 b Fu(represen)m(ts)30 b(a)h(v)-5 b(ariable)29
b(or)i(constan)m(t)g(of)g(\015oating-p)s(oin)m(t)e(t)m(yp)s(e.)150
1868 y Fn(t)445 b Fu(represen)m(ts)30 b(a)h(t)m(yp)s(e.)150
2018 y Fn(v)432 b Fu(represen)m(ts)30 b(a)h(v)-5 b(ariable.)150
2168 y Fn(x)432 b Fu(represen)m(ts)31 b(a)h(v)-5 b(ariable)30
b(or)i(constan)m(t)h(of)e(one)h(of)f(man)m(y)h(t)m(yp)s(es.)44
b(See)32 b(the)f(explanation)g(of)630 2278 y(the)g(function)e(for)h
(details.)275 2428 y(All)f(Mo)s(dula-2)h(built-in)d(pro)s(cedures)i
(also)h(return)g(a)g(result,)g(describ)s(ed)e(b)s(elo)m(w.)150
2578 y Fo(ABS\()p Fn(n)p Fo(\))189 b Fu(Returns)29 b(the)i(absolute)f
(v)-5 b(alue)30 b(of)g Fn(n)p Fu(.)150 2729 y Fo(CAP\()p
Fn(c)6 b Fo(\))194 b Fu(If)42 b Fn(c)49 b Fu(is)42 b(a)h(lo)m(w)m(er)g
(case)h(letter,)j(it)42 b(returns)g(its)g(upp)s(er)f(case)i(equiv)-5
b(alen)m(t,)46 b(otherwise)c(it)630 2838 y(returns)29
b(its)h(argumen)m(t)150 2989 y Fo(CHR\()p Fn(i)5 b Fo(\))209
b Fu(Returns)29 b(the)i(c)m(haracter)h(whose)e(ordinal)f(v)-5
b(alue)29 b(is)h Fn(i)p Fu(.)150 3139 y Fo(DEC\()p Fn(v)8
b Fo(\))184 b Fu(Decremen)m(ts)32 b(the)e(v)-5 b(alue)30
b(in)f(the)i(v)-5 b(ariable)29 b Fn(v)p Fu(.)41 b(Returns)29
b(the)i(new)f(v)-5 b(alue.)150 3289 y Fo(DEC\()p Fn(v)p
Fo(,)p Fn(i)5 b Fo(\))113 b Fu(Decremen)m(ts)32 b(the)e(v)-5
b(alue)30 b(in)f(the)i(v)-5 b(ariable)29 b Fn(v)38 b
Fu(b)m(y)30 b Fn(i)p Fu(.)40 b(Returns)30 b(the)g(new)g(v)-5
b(alue.)150 3439 y Fo(EXCL\()p Fn(m)p Fo(,)p Fn(s)t Fo(\))630
3549 y Fu(Remo)m(v)m(es)32 b(the)f(elemen)m(t)f Fn(m)h
Fu(from)e(the)i(set)g Fn(s)p Fu(.)40 b(Returns)30 b(the)g(new)g(set.)
150 3699 y Fo(FLOAT\()p Fn(i)5 b Fo(\))113 b Fu(Returns)29
b(the)i(\015oating)f(p)s(oin)m(t)g(equiv)-5 b(alen)m(t)29
b(of)i(the)g(in)m(teger)f Fn(i)p Fu(.)150 3850 y Fo(HIGH\()p
Fn(a)p Fo(\))147 b Fu(Returns)29 b(the)i(index)e(of)i(the)f(last)g(mem)
m(b)s(er)g(of)h Fn(a)p Fu(.)150 4000 y Fo(INC\()p Fn(v)8
b Fo(\))184 b Fu(Incremen)m(ts)30 b(the)h(v)-5 b(alue)30
b(in)f(the)h(v)-5 b(ariable)30 b Fn(v)p Fu(.)40 b(Returns)30
b(the)g(new)g(v)-5 b(alue.)150 4150 y Fo(INC\()p Fn(v)p
Fo(,)p Fn(i)5 b Fo(\))113 b Fu(Incremen)m(ts)30 b(the)h(v)-5
b(alue)30 b(in)f(the)h(v)-5 b(ariable)30 b Fn(v)38 b
Fu(b)m(y)30 b Fn(i)p Fu(.)40 b(Returns)29 b(the)i(new)f(v)-5
b(alue.)150 4300 y Fo(INCL\()p Fn(m)p Fo(,)p Fn(s)t Fo(\))630
4410 y Fu(Adds)27 b(the)i(elemen)m(t)f Fn(m)g Fu(to)h(the)g(set)f
Fn(s)k Fu(if)27 b(it)h(is)f(not)i(already)f(there.)40
b(Returns)27 b(the)h(new)g(set.)150 4560 y Fo(MAX\()p
Fn(t)r Fo(\))203 b Fu(Returns)29 b(the)i(maxim)m(um)e(v)-5
b(alue)30 b(of)h(the)f(t)m(yp)s(e)h Fn(t)p Fu(.)150 4711
y Fo(MIN\()p Fn(t)r Fo(\))203 b Fu(Returns)29 b(the)i(minim)m(um)d(v)-5
b(alue)29 b(of)i(the)g(t)m(yp)s(e)f Fn(t)p Fu(.)150 4861
y Fo(ODD\()p Fn(i)5 b Fo(\))209 b Fu(Returns)29 b(b)s(o)s(olean)h(TR)m
(UE)g(if)g Fn(i)k Fu(is)29 b(an)i(o)s(dd)e(n)m(um)m(b)s(er.)150
5011 y Fo(ORD\()p Fn(x)6 b Fo(\))186 b Fu(Returns)30
b(the)h(ordinal)e(v)-5 b(alue)31 b(of)g(its)f(argumen)m(t.)43
b(F)-8 b(or)32 b(example,)f(the)g(ordinal)e(v)-5 b(alue)30
b(of)i(a)630 5121 y(c)m(haracter)d(is)d(its)h(ASCI)s(I)f(v)-5
b(alue)27 b(\(on)h(mac)m(hines)f(supp)s(orting)d(the)k(ASCI)s(I)e(c)m
(haracter)j(set\).)630 5230 y Fn(x)i Fu(m)m(ust)24 b(b)s(e)g(of)h(an)f
(ordered)g(t)m(yp)s(e,)i(whic)m(h)e(include)e(in)m(tegral,)k(c)m
(haracter)g(and)e(en)m(umerated)630 5340 y(t)m(yp)s(es.)p
eop
%%Page: 83 85
83 84 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(83)150
299 y Fo(SIZE\()p Fn(x)6 b Fo(\))138 b Fu(Returns)29
b(the)i(size)f(of)h(its)f(argumen)m(t.)41 b Fn(x)36 b
Fu(can)31 b(b)s(e)f(a)g(v)-5 b(ariable)30 b(or)g(a)h(t)m(yp)s(e.)150
459 y Fo(TRUNC\()p Fn(r)7 b Fo(\))101 b Fu(Returns)29
b(the)i(in)m(tegral)f(part)g(of)h Fn(r)p Fu(.)150 618
y Fo(VAL\()p Fn(t)p Fo(,)p Fn(i)5 b Fo(\))126 b Fu(Returns)29
b(the)i(mem)m(b)s(er)f(of)g(the)h(t)m(yp)s(e)f Fn(t)j
Fu(whose)d(ordinal)f(v)-5 b(alue)29 b(is)h Fn(i)p Fu(.)390
772 y Fr(Warning:)49 b Fu(Sets)32 b(and)f(their)g(op)s(erations)h(are)g
(not)g(y)m(et)h(supp)s(orted,)e(so)h(GDB)h(treats)g(the)390
876 y(use)d(of)h(pro)s(cedures)e Fo(INCL)g Fu(and)h Fo(EXCL)f
Fu(as)h(an)h(error.)150 1101 y Fk(9.4.2.3)63 b(Constan)m(ts)275
1294 y Fu(GDB)31 b(allo)m(ws)f(y)m(ou)g(to)i(express)d(the)i(constan)m
(ts)h(of)e(Mo)s(dula-2)g(in)f(the)i(follo)m(wing)e(w)m(a)m(ys:)225
1429 y Fq(\017)60 b Fu(In)m(teger)32 b(constan)m(ts)h(are)f(simply)d(a)
i(sequence)h(of)g(digits.)42 b(When)31 b(used)g(in)f(an)h(expression,)g
(a)g(con-)330 1539 y(stan)m(t)c(is)d(in)m(terpreted)h(to)i(b)s(e)e(t)m
(yp)s(e-compatible)g(with)g(the)g(rest)h(of)g(the)g(expression.)38
b(Hexadecimal)330 1648 y(in)m(tegers)31 b(are)f(sp)s(eci\014ed)f(b)m(y)
h(a)h(trailing)e(`)p Fo(H)p Fu(',)h(and)g(o)s(ctal)h(in)m(tegers)f(b)m
(y)h(a)f(trailing)f(`)p Fo(B)p Fu('.)225 1783 y Fq(\017)60
b Fu(Floating)37 b(p)s(oin)m(t)e(constan)m(ts)j(app)s(ear)e(as)h(a)g
(sequence)g(of)g(digits,)g(follo)m(w)m(ed)f(b)m(y)g(a)h(decimal)f(p)s
(oin)m(t)330 1892 y(and)23 b(another)h(sequence)h(of)f(digits.)37
b(An)24 b(optional)f(exp)s(onen)m(t)h(can)g(then)g(b)s(e)f(sp)s
(eci\014ed,)h(in)e(the)i(form)330 2002 y(`)p Fo(E)p Fu([)p
Fo(+|-)p Fu(])p Fn(nnn)p Fu(',)32 b(where)g(`[)p Fo(+|-)p
Fu(])p Fn(nnn)p Fu(')f(is)h(the)g(desired)f(exp)s(onen)m(t.)48
b(All)31 b(of)i(the)f(digits)g(of)g(the)h(\015oating)330
2112 y(p)s(oin)m(t)c(constan)m(t)j(m)m(ust)e(b)s(e)g(v)-5
b(alid)29 b(decimal)g(\(base)i(10\))h(digits.)225 2246
y Fq(\017)60 b Fu(Character)24 b(constan)m(ts)h(consist)e(of)h(a)g
(single)e(c)m(haracter)k(enclosed)d(b)m(y)h(a)g(pair)e(of)i(lik)m(e)f
(quotes,)i(either)330 2356 y(single)c(\()p Fo(')p Fu(\))j(or)f(double)e
(\()p Fo(")p Fu(\).)38 b(They)23 b(ma)m(y)g(also)g(b)s(e)f(expressed)h
(b)m(y)f(their)g(ordinal)f(v)-5 b(alue)22 b(\(their)g(ASCI)s(I)330
2465 y(v)-5 b(alue,)30 b(usually\))f(follo)m(w)m(ed)h(b)m(y)g(a)h(`)p
Fo(C)p Fu('.)225 2600 y Fq(\017)60 b Fu(String)33 b(constan)m(ts)i
(consist)f(of)g(a)h(sequence)g(of)f(c)m(haracters)i(enclosed)e(b)m(y)g
(a)g(pair)f(of)i(lik)m(e)e(quotes,)330 2710 y(either)k(single)g(\()p
Fo(')p Fu(\))h(or)f(double)g(\()p Fo(")p Fu(\).)63 b(Escap)s(e)38
b(sequences)f(in)g(the)h(st)m(yle)g(of)g(C)f(are)h(also)g(allo)m(w)m
(ed.)330 2819 y(See)e(Section)f(9.4.1.2)j([C)e(and)f(C)p
Fo(++)f Fu(constan)m(ts],)39 b(page)d(77,)i(for)d(a)h(brief)e
(explanation)h(of)g(escap)s(e)330 2929 y(sequences.)225
3064 y Fq(\017)60 b Fu(En)m(umerated)30 b(constan)m(ts)i(consist)e(of)g
(an)g(en)m(umerated)h(iden)m(ti\014er.)225 3198 y Fq(\017)60
b Fu(Bo)s(olean)31 b(constan)m(ts)g(consist)f(of)h(the)f(iden)m
(ti\014ers)f Fo(TRUE)g Fu(and)h Fo(FALSE)p Fu(.)225 3333
y Fq(\017)60 b Fu(P)m(oin)m(ter)31 b(constan)m(ts)g(consist)f(of)h(in)m
(tegral)f(v)-5 b(alues)30 b(only)-8 b(.)225 3468 y Fq(\017)60
b Fu(Set)31 b(constan)m(ts)g(are)g(not)f(y)m(et)i(supp)s(orted.)150
3692 y Fk(9.4.2.4)63 b(Mo)s(dula-2)43 b(defaults)275
3885 y Fu(If)h(t)m(yp)s(e)h(and)f(range)i(c)m(hec)m(king)g(are)f(set)g
(automatically)g(b)m(y)g(GDB,)h(they)f(b)s(oth)g(default)f(to)i
Fo(on)150 3995 y Fu(whenev)m(er)32 b(the)g(w)m(orking)g(language)g(c)m
(hanges)h(to)g(Mo)s(dula-2.)46 b(This)30 b(happ)s(ens)h(regardless)g
(of)i(whether)150 4105 y(y)m(ou,)e(or)f(GDB,)i(selected)f(the)g(w)m
(orking)e(language.)275 4239 y(If)d(y)m(ou)h(allo)m(w)f(GDB)i(to)g(set)
f(the)g(language)h(automatically)-8 b(,)28 b(then)e(en)m(tering)h(co)s
(de)g(compiled)e(from)i(a)150 4349 y(\014le)h(whose)g(name)h(ends)f
(with)f(`)p Fo(.mod)p Fu(')h(sets)h(the)g(w)m(orking)f(language)h(to)h
(Mo)s(dula-2.)40 b(See)29 b(Section)f(9.1.3)150 4459
y([Ha)m(ving)j(GDB)g(set)g(the)g(language)g(automatically],)f(page)h
(72,)h(for)e(further)f(details.)150 4683 y Fk(9.4.2.5)63
b(Deviations)41 b(from)g(standard)g(Mo)s(dula-2)275 4876
y Fu(A)c(few)h(c)m(hanges)g(ha)m(v)m(e)h(b)s(een)e(made)h(to)g(mak)m(e)
h(Mo)s(dula-2)e(programs)g(easier)h(to)g(debug.)62 b(This)36
b(is)150 4986 y(done)30 b(primarily)d(via)j(lo)s(osening)f(its)h(t)m
(yp)s(e)g(strictness:)225 5121 y Fq(\017)60 b Fu(Unlik)m(e)25
b(in)h(standard)f(Mo)s(dula-2,)i(p)s(oin)m(ter)f(constan)m(ts)h(can)g
(b)s(e)f(formed)g(b)m(y)g(in)m(tegers.)40 b(This)25 b(allo)m(ws)330
5230 y(y)m(ou)32 b(to)h(mo)s(dify)d(p)s(oin)m(ter)h(v)-5
b(ariables)31 b(during)f(debugging.)44 b(\(In)32 b(standard)f(Mo)s
(dula-2,)h(the)h(actual)330 5340 y(address)38 b(con)m(tained)h(in)f(a)h
(p)s(oin)m(ter)f(v)-5 b(ariable)38 b(is)g(hidden)f(from)h(y)m(ou;)44
b(it)38 b(can)i(only)e(b)s(e)g(mo)s(di\014ed)p eop
%%Page: 84 86
84 85 bop 150 -116 a Fu(84)2644 b(Debugging)31 b(with)e(GDB)330
299 y(through)38 b(direct)g(assignmen)m(t)g(to)i(another)e(p)s(oin)m
(ter)g(v)-5 b(ariable)37 b(or)i(expression)e(that)i(returned)f(a)330
408 y(p)s(oin)m(ter.\))225 541 y Fq(\017)60 b Fu(C)37
b(escap)s(e)g(sequences)h(can)f(b)s(e)g(used)f(in)g(strings)g(and)g(c)m
(haracters)j(to)f(represen)m(t)f(non-prin)m(table)330
651 y(c)m(haracters.)76 b(GDB)43 b(prin)m(ts)d(out)i(strings)f(with)f
(these)j(escap)s(e)f(sequences)g(em)m(b)s(edded.)74 b(Single)330
761 y(non-prin)m(table)28 b(c)m(haracters)k(are)f(prin)m(ted)e(using)g
(the)h(`)p Fo(CHR\()p Fn(nnn)p Fo(\))p Fu(')e(format.)225
893 y Fq(\017)60 b Fu(The)30 b(assignmen)m(t)g(op)s(erator)h(\()p
Fo(:=)p Fu(\))f(returns)f(the)i(v)-5 b(alue)30 b(of)g(its)g(righ)m
(t-hand)f(argumen)m(t.)225 1026 y Fq(\017)60 b Fu(All)29
b(built-in)e(pro)s(cedures)i(b)s(oth)h(mo)s(dify)f Fr(and)40
b Fu(return)30 b(their)f(argumen)m(t.)150 1246 y Fk(9.4.2.6)63
b(Mo)s(dula-2)43 b(t)m(yp)s(e)d(and)h(range)g(c)m(hec)m(ks)390
1431 y Fr(Warning:)46 b Fu(in)29 b(this)g(release,)i(GDB)h(do)s(es)e
(not)h(y)m(et)g(p)s(erform)e(t)m(yp)s(e)i(or)f(range)h(c)m(hec)m(king.)
275 1564 y(GDB)g(considers)e(t)m(w)m(o)j(Mo)s(dula-2)e(v)-5
b(ariables)29 b(t)m(yp)s(e)i(equiv)-5 b(alen)m(t)29 b(if:)225
1697 y Fq(\017)60 b Fu(They)30 b(are)h(of)f(t)m(yp)s(es)h(that)g(ha)m
(v)m(e)g(b)s(een)f(declared)g(equiv)-5 b(alen)m(t)29
b(via)h(a)h Fo(TYPE)e Fn(t1)39 b Fo(=)30 b Fn(t2)38 b
Fu(statemen)m(t)225 1830 y Fq(\017)60 b Fu(They)33 b(ha)m(v)m(e)j(b)s
(een)d(declared)g(on)h(the)g(same)g(line.)50 b(\(Note:)g(This)32
b(is)h(true)g(of)h(the)h Ft(gnu)e Fu(Mo)s(dula-2)330
1939 y(compiler,)c(but)h(it)g(ma)m(y)h(not)f(b)s(e)g(true)g(of)h(other)
f(compilers.\))275 2095 y(As)h(long)g(as)h(t)m(yp)s(e)g(c)m(hec)m(king)
g(is)f(enabled,)g(an)m(y)h(attempt)h(to)f(com)m(bine)f(v)-5
b(ariables)31 b(whose)g(t)m(yp)s(es)h(are)150 2205 y(not)f(equiv)-5
b(alen)m(t)29 b(is)h(an)g(error.)275 2338 y(Range)25
b(c)m(hec)m(king)h(is)e(done)h(on)g(all)f(mathematical)h(op)s
(erations,)h(assignmen)m(t,)g(arra)m(y)f(index)f(b)s(ounds,)150
2447 y(and)30 b(all)f(built-in)e(functions)i(and)h(pro)s(cedures.)150
2667 y Fk(9.4.2.7)63 b(The)42 b(scop)s(e)f(op)s(erators)i
Ff(::)e Fk(and)g Ff(.)275 2858 y Fu(There)e(are)i(a)g(few)f(subtle)f
(di\013erences)h(b)s(et)m(w)m(een)h(the)f(Mo)s(dula-2)g(scop)s(e)h(op)s
(erator)f(\()p Fo(.)p Fu(\))h(and)f(the)150 2967 y(GDB)31
b(scop)s(e)g(op)s(erator)g(\()p Fo(::)p Fu(\).)40 b(The)30
b(t)m(w)m(o)i(ha)m(v)m(e)g(similar)27 b(syn)m(tax:)390
3198 y Fn(mo)s(dule)51 b Fo(.)d Fn(id)390 3302 y(scop)s(e)53
b Fo(::)47 b Fn(id)150 3435 y Fu(where)28 b Fn(scop)s(e)33
b Fu(is)27 b(the)h(name)g(of)g(a)h(mo)s(dule)d(or)i(a)h(pro)s(cedure,)e
Fn(mo)s(dule)32 b Fu(the)c(name)g(of)g(a)h(mo)s(dule,)e(and)g
Fn(id)150 3545 y Fu(is)i(an)m(y)i(declared)f(iden)m(ti\014er)f(within)e
(y)m(our)k(program,)f(except)h(another)g(mo)s(dule.)275
3677 y(Using)e(the)h Fo(::)f Fu(op)s(erator)h(mak)m(es)h(GDB)g(searc)m
(h)g(the)f(scop)s(e)g(sp)s(eci\014ed)e(b)m(y)i Fn(scop)s(e)35
b Fu(for)30 b(the)g(iden)m(ti\014er)150 3787 y Fn(id)p
Fu(.)39 b(If)29 b(it)g(is)f(not)i(found)e(in)g(the)i(sp)s(eci\014ed)d
(scop)s(e,)j(then)f(GDB)i(searc)m(hes)f(all)e(scop)s(es)i(enclosing)e
(the)i(one)150 3897 y(sp)s(eci\014ed)f(b)m(y)h Fn(scop)s(e)p
Fu(.)275 4030 y(Using)d(the)i Fo(.)g Fu(op)s(erator)f(mak)m(es)i(GDB)g
(searc)m(h)f(the)g(curren)m(t)f(scop)s(e)h(for)f(the)h(iden)m(ti\014er)
e(sp)s(eci\014ed)g(b)m(y)150 4139 y Fn(id)33 b Fu(that)f(w)m(as)f(imp)s
(orted)e(from)i(the)g(de\014nition)d(mo)s(dule)i(sp)s(eci\014ed)f(b)m
(y)i Fn(mo)s(dule)p Fu(.)40 b(With)31 b(this)e(op)s(erator,)150
4249 y(it)f(is)f(an)h(error)f(if)g(the)h(iden)m(ti\014er)f
Fn(id)j Fu(w)m(as)e(not)h(imp)s(orted)d(from)h(de\014nition)f(mo)s
(dule)h Fn(mo)s(dule)p Fu(,)g(or)h(if)f Fn(id)j Fu(is)150
4358 y(not)h(an)f(iden)m(ti\014er)e(in)i Fn(mo)s(dule)p
Fu(.)150 4578 y Fk(9.4.2.8)63 b(GDB)41 b(and)g(Mo)s(dula-2)275
4769 y Fu(Some)22 b(GDB)h(commands)f(ha)m(v)m(e)h(little)e(use)h(when)f
(debugging)h(Mo)s(dula-2)f(programs.)38 b(Fiv)m(e)23
b(sub)s(com-)150 4878 y(mands)31 b(of)h Fo(set)e(print)h
Fu(and)g Fo(show)e(print)i Fu(apply)g(sp)s(eci\014cally)f(to)j(C)e(and)
h(C)p Fo(++)p Fu(:)43 b(`)p Fo(vtbl)p Fu(',)32 b(`)p
Fo(demangle)p Fu(',)150 4988 y(`)p Fo(asm-demangle)p
Fu(',)d(`)p Fo(object)p Fu(',)i(and)f(`)p Fo(union)p
Fu('.)43 b(The)31 b(\014rst)f(four)h(apply)f(to)i(C)p
Fo(++)p Fu(,)e(and)h(the)h(last)f(to)h(the)f(C)150 5097
y Fo(union)e Fu(t)m(yp)s(e,)i(whic)m(h)e(has)h(no)g(direct)g(analogue)h
(in)e(Mo)s(dula-2.)275 5230 y(The)h Fo(@)g Fu(op)s(erator)h(\(see)h
(Section)e(8.1)i([Expressions],)d(page)j(55\),)g(while)d(a)m(v)-5
b(ailable)30 b(while)e(using)i(an)m(y)150 5340 y(language,)e(is)e(not)h
(useful)e(with)h(Mo)s(dula-2.)39 b(Its)27 b(in)m(ten)m(t)g(is)f(to)i
(aid)e(the)h(debugging)f(of)h Fn(dynamic)e(arra)m(ys)p
Fu(,)p eop
%%Page: 85 87
85 86 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(85)150
299 y(whic)m(h)23 b(cannot)j(b)s(e)e(created)h(in)f(Mo)s(dula-2)g(as)h
(they)g(can)g(in)e(C)h(or)h(C)p Fo(++)p Fu(.)38 b(Ho)m(w)m(ev)m(er,)28
b(b)s(ecause)c(an)h(address)150 408 y(can)35 b(b)s(e)f(sp)s(eci\014ed)f
(b)m(y)i(an)f(in)m(tegral)g(constan)m(t,)k(the)d(construct)g(`)p
Fo({)p Fn(t)m(yp)s(e)5 b Fo(})p Fn(adrexp)s Fu(')34 b(is)g(still)e
(useful.)52 b(\(see)150 518 y(Section)30 b(8.1)i([Expressions],)d(page)
i(55\))275 651 y(In)d(GDB)j(scripts,)d(the)i(Mo)s(dula-2)f(inequalit)m
(y)f(op)s(erator)i Fo(#)f Fu(is)f(in)m(terpreted)h(as)h(the)f(b)s
(eginning)e(of)j(a)150 760 y(commen)m(t.)42 b(Use)31
b Fo(<>)e Fu(instead.)150 978 y Fk(9.4.3)63 b(Chill)275
1169 y Fu(The)43 b(extensions)h(made)g(to)h(GDB)g(to)g(supp)s(ort)d
(Chill)f(only)i(supp)s(ort)g(output)g(from)h(the)g(GNU)150
1278 y(Chill)e(compiler.)85 b(Other)45 b(Chill)e(compilers)g(are)j(not)
g(curren)m(tly)f(supp)s(orted,)i(and)e(attempting)h(to)150
1388 y(debug)34 b(executables)i(pro)s(duced)d(b)m(y)i(them)g(is)f(most)
i(lik)m(ely)e(to)h(giv)m(e)h(an)f(error)g(as)g(GDB)h(reads)f(in)f(the)
150 1497 y(executable's)d(sym)m(b)s(ol)e(table.)275 1630
y(This)37 b(section)j(co)m(v)m(ers)h(the)f(follo)m(wing)e(Chill)f
(related)i(topics)h(and)f(the)h(features)g(of)f(GDB)i(whic)m(h)150
1740 y(supp)s(ort)29 b(these)h(topics.)150 1958 y Fk(9.4.3.1)63
b(Ho)m(w)41 b(mo)s(des)g(are)g(displa)m(y)m(ed)275 2148
y Fu(The)33 b(Chill)e(Datat)m(yp)s(e-)36 b(\(Mo)s(de\))f(supp)s(ort)e
(of)h(GDB)h(is)e(directly)g(related)h(with)f(the)h(functionalit)m(y)150
2258 y(of)e(the)g(GNU)g(Chill)d(compiler,)i(and)g(therefore)i(deviates)
f(sligh)m(tly)e(from)h(the)h(standard)f(sp)s(eci\014cation)150
2367 y(of)g(the)f(Chill)d(language.)41 b(The)30 b(pro)m(vided)f(mo)s
(des)h(are:)150 2523 y Fr(Discr)-5 b(ete)30 b(mo)-5 b(des:)705
2632 y Fq(\017)60 b Fr(Inte)-5 b(ger)41 b(Mo)-5 b(des)48
b Fu(whic)m(h)38 b(are)i(prede\014ned)d(b)m(y)j Fo(BYTE,)29
b(UBYTE,)f(INT,)h(UINT,)g(LONG,)810 2742 y(ULONG)p Fu(,)705
2874 y Fq(\017)60 b Fr(Bo)-5 b(ole)g(an)35 b(Mo)-5 b(de)38
b Fu(whic)m(h)29 b(is)g(prede\014ned)g(b)m(y)h Fo(BOOL)p
Fu(,)705 3007 y Fq(\017)60 b Fr(Char)-5 b(acter)35 b(Mo)-5
b(de)38 b Fu(whic)m(h)29 b(is)g(prede\014ned)g(b)m(y)h
Fo(CHAR)p Fu(,)705 3139 y Fq(\017)60 b Fr(Set)33 b(Mo)-5
b(de)37 b Fu(whic)m(h)30 b(is)f(displa)m(y)m(ed)g(b)m(y)h(the)h(k)m
(eyw)m(ord)g Fo(SET)p Fu(.)1050 3266 y Fo(\(gdb\))46
b(ptype)h(x)1050 3370 y(type)g(=)g(SET)g(\(karli)f(=)i(10,)e(susi)h(=)h
(20,)e(fritzi)h(=)g(100\))810 3502 y Fu(If)30 b(the)g(t)m(yp)s(e)h(is)e
(an)i(unn)m(um)m(b)s(ered)d(set)j(the)f(set)h(elemen)m(t)g(v)-5
b(alues)30 b(are)g(omitted.)705 3634 y Fq(\017)60 b Fr(R)-5
b(ange)46 b(Mo)-5 b(de)52 b Fu(whic)m(h)43 b(is)h(displa)m(y)m(ed)f(b)m
(y)h Fo(type)30 b(=)g(<basemode>)d(\(<lower)i(bound>)810
3744 y(:)h(<upper)f(bound>\))p Fu(,)37 b(where)g Fo(<lower)28
b(bound>,)h(<upper)f(bound>)36 b Fu(can)i(b)s(e)e(of)i(an)m(y)810
3854 y(discrete)30 b(literal)f(expression)g(\(e.g.)42
b(set)31 b(elemen)m(t)g(names\).)150 4009 y Fr(Powerset)g(Mo)-5
b(de:)630 4119 y Fu(A)21 b(P)m(o)m(w)m(erset)j(Mo)s(de)d(is)f(displa)m
(y)m(ed)g(b)m(y)i(the)f(k)m(eyw)m(ord)h Fo(POWERSET)d
Fu(follo)m(w)m(ed)i(b)m(y)g(the)h(mem)m(b)s(er)630 4228
y(mo)s(de)30 b(of)g(the)h(p)s(o)m(w)m(erset.)41 b(The)30
b(mem)m(b)s(er)g(mo)s(de)g(can)h(b)s(e)e(an)m(y)i(discrete)f(mo)s(de.)
870 4355 y Fo(\(gdb\))46 b(ptype)h(x)870 4459 y(type)g(=)g(POWERSET)f
(SET)h(\(egon,)f(hugo,)g(otto\))150 4614 y Fr(R)-5 b(efer)g(enc)g(e)31
b(Mo)-5 b(des:)705 4723 y Fq(\017)60 b Fr(Bound)35 b(R)-5
b(efer)g(enc)g(e)34 b(Mo)-5 b(de)40 b Fu(whic)m(h)30
b(is)h(dipla)m(y)m(ed)g(b)m(y)g(the)h(k)m(eyw)m(ord)h
Fo(REF)e Fu(follo)m(w)m(ed)g(b)m(y)810 4833 y(the)g(mo)s(de)f(name)g
(to)h(whic)m(h)e(the)i(reference)g(is)e(b)s(ound.)705
4965 y Fq(\017)60 b Fr(F)-7 b(r)i(e)g(e)34 b(R)-5 b(efer)g(enc)g(e)33
b(Mo)-5 b(de)38 b Fu(whic)m(h)29 b(is)g(displa)m(y)m(ed)g(b)m(y)h(the)h
(k)m(eyw)m(ord)g Fo(PTR)p Fu(.)150 5121 y Fr(Pr)-5 b(o)g(c)g(e)g(dur)g
(e)33 b(mo)-5 b(de)630 5230 y Fu(The)22 b(pro)s(cedure)g(mo)s(de)h(is)f
(displa)m(y)m(ed)f(b)m(y)i Fo(type)29 b(=)h(PROC\(<parameter)c(list>\))
j(<return)630 5340 y(mode>)g(EXCEPTIONS)f(\(<exception)f(list>\))p
Fu(.)69 b(The)40 b Fo(<parameter)27 b(list>)39 b Fu(is)h(a)h(list)e(of)
p eop
%%Page: 86 88
86 87 bop 150 -116 a Fu(86)2644 b(Debugging)31 b(with)e(GDB)630
299 y(the)35 b(parameter)g(mo)s(des.)53 b Fo(<return)28
b(mode>)33 b Fu(indicates)h(the)h(mo)s(de)f(of)h(the)f(result)g(of)h
(the)630 408 y(pro)s(cedure)g(if)h(an)m(y)-8 b(.)60 b(The)36
b(exceptionlist)g(lists)f(all)g(p)s(ossible)g(exceptions)h(whic)m(h)g
(can)h(b)s(e)630 518 y(raised)29 b(b)m(y)i(the)f(pro)s(cedure.)150
701 y Fr(Synchr)-5 b(onization)33 b(Mo)-5 b(des:)705
811 y Fq(\017)60 b Fr(Event)23 b(Mo)-5 b(de)27 b Fu(whic)m(h)19
b(is)h(displa)m(y)m(ed)f(b)m(y)h Fo(EVENT)29 b(\(<event)f(length>\))p
Fu(,)20 b(where)g Fo(\(<event)810 921 y(length>\))28
b Fu(is)i(optional.)705 1067 y Fq(\017)60 b Fr(Bu\013er)42
b(Mo)-5 b(de)48 b Fu(whic)m(h)39 b(is)g(displa)m(y)m(ed)h(b)m(y)g
Fo(BUFFER)29 b(\(<buffer)f(length>\))g(<buffer)810 1177
y(element)g(mode>)p Fu(,)i(where)f Fo(\(<buffer)g(length>\))f
Fu(is)h(optional.)150 1360 y Fr(Timing)h(Mo)-5 b(des:)705
1470 y Fq(\017)60 b Fr(Dur)-5 b(ation)34 b(Mo)-5 b(de)38
b Fu(whic)m(h)29 b(is)g(prede\014ned)g(b)m(y)h Fo(DURATION)705
1616 y Fq(\017)60 b Fr(A)n(bsolute)32 b(Time)h(Mo)-5
b(de)38 b Fu(whic)m(h)29 b(is)g(prede\014ned)g(b)m(y)h
Fo(TIME)150 1800 y Fr(R)-5 b(e)g(al)32 b(Mo)-5 b(des:)630
1909 y Fu(Real)30 b(Mo)s(des)h(are)f(prede\014ned)f(with)g
Fo(REAL)g Fu(and)h Fo(LONG_REAL)p Fu(.)150 2093 y Fr(String)h(Mo)-5
b(des:)705 2202 y Fq(\017)60 b Fr(Char)-5 b(acter)43
b(String)f(Mo)-5 b(de)47 b Fu(whic)m(h)38 b(is)h(displa)m(y)m(ed)f(b)m
(y)h Fo(CHARS\(<string)27 b(length>\))p Fu(,)810 2312
y(follo)m(w)m(ed)j(b)m(y)g(the)h(k)m(eyw)m(ord)g Fo(VARYING)d
Fu(if)h(the)i(String)e(Mo)s(de)h(is)g(a)h(v)-5 b(arying)29
b(mo)s(de)705 2458 y Fq(\017)60 b Fr(Bit)33 b(String)g(Mo)-5
b(de)37 b Fu(whic)m(h)29 b(is)h(displa)m(y)m(ed)f(b)m(y)h
Fo(BOOLS\(<string)d(length>\))p Fu(.)150 2642 y Fr(A)n(rr)-5
b(ay)31 b(Mo)-5 b(de:)630 2751 y Fu(The)29 b(Arra)m(y)g(Mo)s(de)h(is)e
(displa)m(y)m(ed)g(b)m(y)h(the)h(k)m(eyw)m(ord)f Fo(ARRAY\(<range>\))d
Fu(follo)m(w)m(ed)j(b)m(y)g(the)630 2861 y(elemen)m(t)i(mo)s(de)f
(\(whic)m(h)f(ma)m(y)i(in)e(turn)h(b)s(e)f(an)i(arra)m(y)f(mo)s(de\).)
870 3002 y Fo(\(gdb\))46 b(ptype)h(x)870 3105 y(type)g(=)g(ARRAY)f
(\(1:42\))1347 3209 y(ARRAY)h(\(1:20\))1490 3313 y(SET)g(\(karli)f(=)i
(10,)f(susi)f(=)i(20,)f(fritzi)f(=)h(100\))150 3496 y
Fr(Structur)-5 b(e)31 b(Mo)-5 b(de)630 3606 y Fu(The)29
b(Structure)g(mo)s(de)g(is)g(displa)m(y)m(ed)f(b)m(y)i(the)g(k)m(eyw)m
(ord)g Fo(STRUCT\(<field)d(list>\))p Fu(.)38 b(The)630
3716 y Fo(<field)29 b(list>)j Fu(consists)h(of)h(names)f(and)g(mo)s
(des)h(of)f(\014elds)g(of)g(the)h(structure.)50 b(V)-8
b(arian)m(t)630 3825 y(structures)24 b(ha)m(v)m(e)i(the)f(k)m(eyw)m
(ord)h Fo(CASE)j(<field>)f(OF)i(<variant)e(fields>)h(ESAC)23
b Fu(in)h(their)630 3935 y(\014eld)c(list.)36 b(Since)20
b(the)h(curren)m(t)g(v)m(ersion)g(of)g(the)g(GNU)h(Chill)c(compiler)h
(do)s(esn't)i(implemen)m(t)630 4044 y(tag)30 b(pro)s(cessing)e(\(no)h
(run)m(time)e(c)m(hec)m(ks)j(of)f(v)-5 b(arian)m(t)29
b(\014elds,)f(and)g(therefore)h(no)g(debugging)630 4154
y(info\),)h(the)g(output)g(alw)m(a)m(ys)h(displa)m(ys)e(all)g(v)-5
b(arian)m(t)30 b(\014elds.)870 4295 y Fo(\(gdb\))46 b(ptype)h(str)870
4398 y(type)g(=)g(STRUCT)f(\()1061 4502 y(as)h(x,)1061
4606 y(bs)g(x,)1061 4710 y(CASE)g(bs)g(OF)1061 4814 y(\(karli\):)1252
4917 y(cs)g(a)1061 5021 y(\(ott\):)1252 5125 y(ds)g(x)1061
5229 y(ESAC)870 5332 y(\))p eop
%%Page: 87 89
87 88 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(87)150
299 y Fk(9.4.3.2)63 b(Lo)s(cations)41 b(and)g(their)g(accesses)275
511 y Fu(A)30 b(lo)s(cation)g(in)f(Chill)e(is)j(an)g(ob)5
b(ject)31 b(whic)m(h)e(can)i(con)m(tain)g(v)-5 b(alues.)275
666 y(A)32 b(v)-5 b(alue)31 b(of)h(a)g(lo)s(cation)g(is)f(generally)g
(accessed)i(b)m(y)f(the)g(\(declared\))g(name)g(of)g(the)g(lo)s
(cation.)45 b(The)150 775 y(output)30 b(conforms)g(to)h(the)g(sp)s
(eci\014cation)e(of)h(v)-5 b(alues)30 b(in)f(Chill)e(programs.)41
b(Ho)m(w)31 b(v)-5 b(alues)30 b(are)g(sp)s(eci\014ed,)150
885 y(and)g(whic)m(h)f(op)s(erations)h(are)g(v)-5 b(alid)29
b(is)g(the)i(topic)f(of)h(the)f(next)h(section.)275 1039
y(The)f(pseudo-lo)s(cation)g Fo(RESULT)g Fu(\(or)h Fo(result)p
Fu(\))f(can)i(b)s(e)e(used)h(to)h(displa)m(y)d(or)i(c)m(hange)h(the)g
(result)e(of)150 1149 y(a)h(curren)m(tly-activ)m(e)g(pro)s(cedure:)390
1298 y Fo(set)47 b(result)f(:=)h(EXPR)275 1452 y Fu(-)30
b(do)s(es)g(the)h(same)g(as)f(the)h(Chill)c(action)k
Fo(RESULT)d(EXPR)i Fu(\(whic)m(h)f(is)g(not)i(a)m(v)-5
b(ailable)30 b(in)f(gdb\).)275 1606 y(V)-8 b(alues)36
b(of)h(reference)g(mo)s(de)g(lo)s(cations)f(are)h(prin)m(ted)e(b)m(y)i
Fo(PTR\(<hex)28 b(value>\))35 b Fu(in)g(case)j(of)f(a)g(free)150
1716 y(reference)f(mo)s(de,)h(and)f(b)m(y)g Fo(\(REF)29
b(<reference)e(mode>\))i(\(<hex-value>\))j Fu(in)j(case)i(of)f(a)g(b)s
(ound)e(ref-)150 1826 y(erence.)58 b Fo(<hex)29 b(value>)35
b Fu(represen)m(ts)h(the)g(address)f(where)g(the)h(reference)h(p)s(oin)
m(ts)e(to.)58 b(T)-8 b(o)36 b(access)i(the)150 1935 y(v)-5
b(alue)30 b(of)g(the)h(lo)s(cation)f(referenced)g(b)m(y)g(the)h(p)s
(oin)m(ter,)f(use)g(the)g(dereference)h(op)s(erator)g(`)p
Fo(->)p Fu('.)275 2090 y(V)-8 b(alues)53 b(of)i(pro)s(cedure)d(mo)s(de)
i(lo)s(cations)f(are)h(displa)m(y)m(ed)f(b)m(y)h Fo({)30
b(PROC)f(\(<argument)f(modes>)g(\))150 2199 y(<return)g(mode>)h(})h
(<address>)e(<name)h(of)h(procedure)e(location>)p Fu(.)45
b Fo(<argument)28 b(modes>)j Fu(is)g(a)i(list)150 2309
y(of)h(mo)s(des)e(according)i(to)g(the)f(parameter)h(sp)s
(eci\014cation)e(of)i(the)f(pro)s(cedure)g(and)f Fo(<address>)f
Fu(sho)m(ws)150 2418 y(the)g(address)e(of)i(the)f(en)m(try)h(p)s(oin)m
(t.)275 2573 y(Substructures)f(of)i(string)g(mo)s(de-,)h(arra)m(y)g(mo)
s(de-)f(or)h(structure)f(mo)s(de-v)-5 b(alues)31 b(\(e.g.)49
b(arra)m(y)33 b(slices,)150 2682 y(\014elds)25 b(of)i(structure)f(lo)s
(cations\))g(are)h(accessed)h(using)d(certain)i(op)s(erations)e(whic)m
(h)h(are)h(descib)s(ed)d(in)i(the)150 2792 y(next)31
b(c)m(hapter.)275 2946 y(A)g(lo)s(cation)g(v)-5 b(alue)31
b(ma)m(y)i(b)s(e)d(in)m(terpreted)h(as)h(ha)m(ving)f(a)h(di\013eren)m
(t)f(mo)s(de)g(using)f(the)i(lo)s(cation)f(con-)150 3056
y(v)m(ersion.)54 b(This)34 b(mo)s(de)g(con)m(v)m(ersion)i(is)e(written)
g(as)h Fo(<mode)29 b(name>\(<location>\))p Fu(.)50 b(The)35
b(user)f(has)h(to)150 3166 y(consider)g(that)h(the)g(sizes)f(of)h(the)g
(mo)s(des)f(ha)m(v)m(e)i(to)f(b)s(e)f(equal)g(otherwise)g(an)h(error)f
(message)i(o)s(ccurs.)150 3275 y(F)-8 b(urther)35 b(no)g(range)h(c)m
(hec)m(king)g(of)g(the)g(lo)s(cation)f(against)g(the)h(destination)e
(mo)s(de)h(is)g(p)s(erformed)f(and)150 3385 y(therefore)d(the)f(result)
g(can)g(b)s(e)g(quite)g(confusing.)390 3533 y Fo(\(gdb\))46
b(print)h(int)g(\(s\(3)f(up)h(4\)\))g(XXX)g(TO)g(be)h(filled)e(in)h(!!)
g(XXX)150 3797 y Fk(9.4.3.3)63 b(V)-10 b(alues)41 b(and)g(their)g(Op)s
(erations)275 4010 y Fu(V)-8 b(alues)36 b(are)h(used)f(to)i(alter)f(lo)
s(cations,)h(to)f(in)m(v)m(estigate)h(complex)f(structures)f(in)f(more)
i(detail)f(or)150 4120 y(to)46 b(\014lter)d(relev)-5
b(an)m(t)46 b(information)d(out)i(of)g(a)g(large)g(amoun)m(t)g(of)g
(data.)85 b(There)45 b(are)g(sev)m(eral)g(\(mo)s(de)150
4229 y(dep)s(enden)m(t\))32 b(op)s(erations)g(de\014ned)g(whic)m(h)f
(enable)h(suc)m(h)h(in)m(v)m(estigations.)47 b(These)33
b(op)s(erations)f(are)h(not)150 4339 y(only)40 b(applicable)f(to)j
(constan)m(t)h(v)-5 b(alues)40 b(but)h(also)g(to)h(lo)s(cations,)h
(whic)m(h)d(can)i(b)s(ecome)f(quite)g(useful)150 4448
y(when)29 b(debugging)g(complex)h(structures.)40 b(During)29
b(parsing)g(the)h(command)g(line)e(\(e.g.)42 b(ev)-5
b(aluating)30 b(an)150 4558 y(expression\))f(GDB)j(treats)f(lo)s
(cation)f(names)h(as)f(the)h(v)-5 b(alues)29 b(b)s(ehind)f(these)j(lo)s
(cations.)275 4712 y(This)37 b(sub)s(c)m(hapters)h(describ)s(es)g(ho)m
(w)h(v)-5 b(alues)39 b(ha)m(v)m(e)h(to)g(b)s(e)f(sp)s(eci\014ed)e(and)i
(whic)m(h)f(op)s(erations)h(are)150 4822 y(legal)30 b(to)h(b)s(e)f
(used)g(with)f(suc)m(h)h(v)-5 b(alues.)150 5011 y Fo(Literal)28
b(Values)630 5121 y Fu(Literal)f(v)-5 b(alues)28 b(are)g(sp)s
(eci\014ed)e(in)h(the)h(same)h(manner)e(as)h(in)f(GNU)i(Chill)c
(programs.)39 b(F)-8 b(or)630 5230 y(detailed)35 b(sp)s(eci\014cation)f
(refer)i(to)g(the)g(GNU)g(Chill)c(implemen)m(tation)j(Man)m(ual)g(c)m
(hapter)630 5340 y(1.5.)p eop
%%Page: 88 90
88 89 bop 150 -116 a Fu(88)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fo(Tuple)g(Values)630 408 y Fu(A)21 b(tuple)f(is)g(sp)s
(eci\014ed)g(b)m(y)h Fo(<mode)29 b(name>[<tuple>])p Fu(,)19
b(where)h Fo(<mode)29 b(name>)20 b Fu(can)h(b)s(e)g(omit-)630
518 y(ted)32 b(if)f(the)i(mo)s(de)e(of)i(the)f(tuple)f(is)g(unam)m
(bigous.)45 b(This)30 b(unam)m(biguit)m(y)h(is)g(deriv)m(ed)g(from)630
628 y(the)g(con)m(text)h(of)e(a)h(ev)-5 b(aluated)31
b(expression.)39 b Fo(<tuple>)29 b Fu(can)h(b)s(e)g(one)h(of)f(the)h
(follo)m(wing:)705 760 y Fq(\017)60 b Fr(Powerset)33
b(T)-7 b(uple)705 891 y Fq(\017)60 b Fr(A)n(rr)-5 b(ay)33
b(T)-7 b(uple)705 1023 y Fq(\017)60 b Fr(Structur)-5
b(e)25 b(T)-7 b(uple)30 b Fu(P)m(o)m(w)m(erset)23 b(tuples,)g(arra)m(y)
g(tuples)d(and)i(structure)f(tuples)g(are)h(sp)s(ec-)810
1133 y(i\014ed)29 b(in)g(the)i(same)f(manner)g(as)h(in)e(Chill)e
(programs)j(refer)g(z200/88)j(c)m(hpt)e(5.2.5.)150 1287
y Fo(String)e(Element)f(Value)630 1397 y Fu(A)60 b(string)e(elemen)m(t)
i(v)-5 b(alue)59 b(is)f(sp)s(eci\014ed)g(b)m(y)h Fo(<string)29
b(value>\(<index>\))p Fu(,)62 b(where)630 1506 y Fo(<index>)22
b Fu(is)h(a)h(in)m(teger)g(expression.)38 b(It)23 b(deliv)m(ers)g(a)h
(c)m(haracter)i(v)-5 b(alue)23 b(whic)m(h)g(is)f(equiv)-5
b(alen)m(t)630 1616 y(to)31 b(the)g(c)m(haracter)h(indexed)d(b)m(y)h
Fo(<index>)e Fu(in)h(the)i(string.)150 1770 y Fo(String)e(Slice)g
(Value)630 1880 y Fu(A)49 b(string)g(slice)f(v)-5 b(alue)49
b(is)g(sp)s(eci\014ed)e(b)m(y)j Fo(<string)28 b(value>\(<slice)f
(spec>\))p Fu(,)52 b(where)630 1989 y Fo(<slice)29 b(spec>)20
b Fu(can)i(b)s(e)e(either)h(a)h(range)g(of)g(in)m(teger)g(expressions)e
(or)h(sp)s(eci\014ed)f(b)m(y)i Fo(<start)630 2099 y(expr>)29
b(up)h(<size>)p Fu(.)38 b Fo(<size>)27 b Fu(denotes)i(the)g(n)m(um)m(b)
s(er)e(of)i(elemen)m(ts)g(whic)m(h)f(the)h(slice)e(con-)630
2208 y(tains.)39 b(The)25 b(deliv)m(ered)g(v)-5 b(alue)25
b(is)g(a)h(string)f(v)-5 b(alue,)27 b(whic)m(h)e(is)f(part)i(of)g(the)g
(sp)s(eci\014ed)f(string.)150 2362 y Fo(Array)k(Element)f(Values)630
2472 y Fu(An)j(arra)m(y)h(elemen)m(t)g(v)-5 b(alue)31
b(is)g(sp)s(eci\014ed)f(b)m(y)h Fo(<array)e(value>\(<expr>\))e
Fu(and)k(deliv)m(ers)g(a)630 2582 y(arra)m(y)g(elemen)m(t)g(v)-5
b(alue)30 b(of)g(the)h(mo)s(de)f(of)g(the)h(sp)s(eci\014ed)d(arra)m(y)
-8 b(.)150 2736 y Fo(Array)29 b(Slice)g(Values)630 2845
y Fu(An)41 b(arra)m(y)h(slice)f(is)g(sp)s(eci\014ed)f(b)m(y)h
Fo(<array)29 b(value>\(<slice)e(spec>\))p Fu(,)43 b(where)e
Fo(<slice)630 2955 y(spec>)c Fu(can)j(b)s(e)e(either)g(a)i(range)f(sp)s
(eci\014ed)e(b)m(y)i(expressions)e(or)i(b)m(y)g Fo(<start)29
b(expr>)g(up)630 3065 y(<size>)p Fu(.)50 b Fo(<size>)33
b Fu(denotes)h(the)g(n)m(um)m(b)s(er)f(of)h(arra)m(y)m(elemen)m(ts)i
(the)e(slice)f(con)m(tains.)52 b(The)630 3174 y(deliv)m(ered)29
b(v)-5 b(alue)30 b(is)f(an)i(arra)m(y)f(v)-5 b(alue)30
b(whic)m(h)f(is)h(part)g(of)h(the)f(sp)s(eci\014ed)f(arra)m(y)-8
b(.)150 3328 y Fo(Structure)28 b(Field)h(Values)630 3438
y Fu(A)f(structure)f(\014eld)f(v)-5 b(alue)27 b(is)g(deriv)m(ed)g(b)m
(y)g Fo(<structure)h(value>.<field)e(name>)p Fu(,)h(where)630
3548 y Fo(<field)i(name>)21 b Fu(indcates)h(the)g(name)h(of)g(a)f
(\014eld)f(sp)s(eci\014ed)g(in)g(the)i(mo)s(de)f(de\014nition)e(of)j
(the)630 3657 y(structure.)40 b(The)27 b(mo)s(de)h(of)g(the)h(deliv)m
(ered)e(v)-5 b(alue)28 b(corresp)s(onds)e(to)j(this)e(mo)s(de)h
(de\014nition)630 3767 y(in)h(the)i(structure)f(de\014nition.)150
3921 y Fo(Procedure)e(Call)h(Value)630 4030 y Fu(The)h(pro)s(cedure)f
(call)h(v)-5 b(alue)30 b(is)f(deriv)m(ed)g(from)h(the)h(return)e(v)-5
b(alue)30 b(of)h(the)f(pro)s(cedure)3588 3997 y Fh(1)3624
4030 y Fu(.)630 4162 y(V)-8 b(alues)30 b(of)h(duration)e(mo)s(de)h(lo)s
(cations)g(are)g(represen)m(ted)h(b)m(y)f(ULONG)h(literals.)630
4294 y(V)-8 b(alues)30 b(of)h(time)f(mo)s(de)g(lo)s(cations)g(are)h
(represen)m(ted)f(b)m(y)g(TIME\()p Fo(<)p Fu(secs)p Fo(>)p
Fu(:)p Fo(<)p Fu(nsecs)p Fo(>)p Fu(\).)150 4448 y Fo(Zero-adic)e
(Operator)g(Value)630 4558 y Fu(The)i(zero-adic)g(op)s(erator)h(v)-5
b(alue)29 b(is)g(deriv)m(ed)g(from)h(the)g(instance)g(v)-5
b(alue)29 b(for)h(the)g(curren)m(t)630 4668 y(activ)m(e)i(pro)s(cess.)
150 4822 y Fo(Expression)c(Values)630 4931 y Fu(The)f(v)-5
b(alue)28 b(deliv)m(ered)e(b)m(y)i(an)g(expression)f(is)f(the)j(result)
d(of)i(the)g(ev)-5 b(aluation)28 b(of)g(the)g(sp)s(ec-)630
5041 y(i\014ed)k(expression.)49 b(If)33 b(there)g(are)h(error)f
(conditions)f(\(mo)s(de)i(incompatibilit)m(y)-8 b(,)31
b(etc.\))52 b(the)p 150 5131 1200 4 v 192 5197 a Fh(1)275
5230 y Fu(If)36 b(a)i(pro)s(cedure)e(call)h(is)g(used)f(for)h(instance)
g(in)f(an)i(expression,)g(then)f(this)f(pro)s(cedure)g(is)h(called)275
5340 y(with)29 b(all)g(its)h(side)f(e\013ects.)42 b(This)29
b(can)h(lead)g(to)h(confusing)e(results)h(if)f(used)g(carelessly)-8
b(.)p eop
%%Page: 89 91
89 90 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(89)630
299 y(ev)-5 b(aluation)35 b(of)h(expressions)e(is)h(ab)s(orted)g(with)f
(a)i(corresp)s(onding)e(error)h(message.)58 b(Ex-)630
408 y(pressions)31 b(ma)m(y)i(b)s(e)f(paran)m(thesised)g(whic)m(h)g
(causes)h(the)g(ev)-5 b(aluation)32 b(of)h(this)e(expression)630
518 y(b)s(efore)h(an)m(y)h(other)g(expression)f(whic)m(h)f(uses)i(the)g
(result)e(of)i(the)g(paran)m(thesised)f(expres-)630 628
y(sion.)40 b(The)30 b(follo)m(wing)e(op)s(erators)j(are)g(supp)s(orted)
d(b)m(y)j(GDB:)630 786 y Fo(OR,)47 b(ORIF,)f(XOR)630
920 y(AND,)h(ANDIF)630 1054 y(NOT)336 b Fu(Logical)30
b(op)s(erators)h(de\014ned)e(o)m(v)m(er)j(op)s(erands)d(of)h(b)s(o)s
(olean)g(mo)s(de.)630 1212 y Fo(=,)47 b(/=)241 b Fu(Equalit)m(y)29
b(and)h(inequalit)m(y)f(op)s(erators)h(de\014ned)g(o)m(v)m(er)h(all)f
(mo)s(des.)630 1370 y Fo(>,)47 b(>=)630 1529 y(<,)g(<=)241
b Fu(Relational)30 b(op)s(erators)g(de\014ned)f(o)m(v)m(er)j
(prede\014ned)d(mo)s(des.)630 1687 y Fo(+,)47 b(-)630
1845 y(*,)g(/,)g(MOD,)g(REM)1110 1955 y Fu(Arithmetic)29
b(op)s(erators)i(de\014ned)e(o)m(v)m(er)j(prede\014ned)c(mo)s(des.)630
2113 y Fo(-)432 b Fu(Change)30 b(sign)g(op)s(erator.)630
2271 y Fo(//)384 b Fu(String)29 b(concatenation)j(op)s(erator.)630
2430 y Fo(\(\))384 b Fu(String)29 b(rep)s(etition)g(op)s(erator.)630
2588 y Fo(->)384 b Fu(Referenced)32 b(lo)s(cation)f(op)s(erator)h(whic)
m(h)f(can)h(b)s(e)f(used)g(either)g(to)h(tak)m(e)i(the)1110
2697 y(address)25 b(of)h(a)h(lo)s(cation)e(\()p Fo(->loc)p
Fu(\),)i(or)f(to)g(dereference)h(a)f(reference)g(lo)s(cation)1110
2807 y(\()p Fo(loc->)p Fu(\).)630 2965 y Fo(OR,)47 b(XOR)630
3123 y(AND)630 3282 y(NOT)336 b Fu(P)m(o)m(w)m(erset)32
b(and)e(bitstring)f(op)s(erators.)630 3440 y Fo(>,)47
b(>=)630 3598 y(<,)g(<=)241 b Fu(P)m(o)m(w)m(erset)32
b(inclusion)c(op)s(erators.)630 3757 y Fo(IN)384 b Fu(Mem)m(b)s(ership)
28 b(op)s(erator.)150 3979 y Fk(9.4.3.4)63 b(Chill)41
b(t)m(yp)s(e)g(and)g(range)g(c)m(hec)m(ks)275 4171 y
Fu(GDB)f(considers)d(t)m(w)m(o)k(Chill)35 b(v)-5 b(ariables)38
b(mo)s(de)h(equiv)-5 b(alen)m(t)38 b(if)g(the)h(sizes)g(of)g(the)g(t)m
(w)m(o)h(mo)s(des)f(are)150 4281 y(equal.)i(This)29 b(rule)h(applies)f
(recursiv)m(ely)g(to)j(more)f(complex)f(datat)m(yp)s(es)i(whic)m(h)d
(means)i(that)g(complex)150 4390 y(mo)s(des)37 b(are)i(treated)f(eqiv)
-5 b(alen)m(t)38 b(if)f(all)g(elemen)m(t)h(mo)s(des)g(\(whic)m(h)f
(also)g(can)i(b)s(e)e(complex)g(mo)s(des)h(lik)m(e)150
4500 y(structures,)30 b(arra)m(ys,)h(etc.\))42 b(ha)m(v)m(e)32
b(the)e(same)h(size.)275 4634 y(Range)d(c)m(hec)m(king)g(is)e(done)h
(on)h(all)e(mathematical)i(op)s(erations,)f(assignmen)m(t,)h(arra)m(y)g
(index)e(b)s(ounds)150 4743 y(and)k(all)f(built)f(in)h(pro)s(cedures.)
275 4877 y(Strong)21 b(t)m(yp)s(e)h(c)m(hec)m(ks)i(are)e(forced)g
(using)e(the)i(GDB)h(command)f Fo(set)29 b(check)g(strong)p
Fu(.)37 b(This)20 b(enforces)150 4987 y(strong)25 b(t)m(yp)s(e)h(and)e
(range)i(c)m(hec)m(ks)g(on)f(all)f(op)s(erations)h(where)f(Chill)e
(constructs)k(are)f(used)g(\(expressions,)150 5096 y(built)k(in)i
(functions,)f(etc.\))46 b(in)30 b(resp)s(ect)i(to)g(the)g(seman)m(tics)
g(as)g(de\014ned)e(in)g(the)i(z.200)i(language)e(sp)s(eci-)150
5206 y(\014cation.)150 5340 y(All)d(c)m(hec)m(ks)j(can)e(b)s(e)g
(disabled)e(b)m(y)j(the)f(GDB)i(command)e Fo(set)f(check)g(off)p
Fu(.)p eop
%%Page: 90 92
90 91 bop 150 -116 a Fu(90)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fk(9.4.3.5)63 b(Chill)41 b(defaults)275 519 y Fu(If)j(t)m(yp)s(e)
h(and)f(range)i(c)m(hec)m(king)g(are)f(set)g(automatically)g(b)m(y)g
(GDB,)h(they)f(b)s(oth)g(default)f(to)i Fo(on)150 629
y Fu(whenev)m(er)31 b(the)h(w)m(orking)e(language)i(c)m(hanges)g(to)g
(Chill.)41 b(This)29 b(happ)s(ens)h(regardless)g(of)i(whether)e(y)m
(ou,)150 739 y(or)g(GDB,)i(selected)f(the)g(w)m(orking)e(language.)275
901 y(If)i(y)m(ou)i(allo)m(w)f(GDB)i(to)f(set)g(the)f(language)h
(automatically)-8 b(,)34 b(then)e(en)m(tering)g(co)s(de)h(compiled)d
(from)150 1010 y(a)39 b(\014le)e(whose)h(name)h(ends)f(with)f(`)p
Fo(.ch)p Fu(')h(sets)g(the)h(w)m(orking)f(language)h(to)g(Chill.)61
b(See)39 b(Section)f(9.1.3)150 1120 y([Ha)m(ving)31 b(GDB)g(set)g(the)g
(language)g(automatically],)f(page)h(72,)h(for)e(further)f(details.)150
1400 y Fk(9.4.4)63 b(Ob)7 b(jectiv)m(e-C/C)p Ff(++)275
1620 y Fu(This)23 b(section)j(pro)m(vides)e(information)g(ab)s(out)h
(some)h(commands)f(and)g(command)h(options)e(that)j(are)150
1730 y(useful)i(for)h(debugging)f(Ob)5 b(jectiv)m(e-C)31
b(and)e(Ob)5 b(jectiv)m(e-C)p Fo(++)30 b Fu(co)s(de.)150
2010 y Fk(9.4.4.1)63 b(Metho)s(d)42 b(Names)e(in)i(Commands)275
2230 y Fu(The)34 b(follo)m(wing)g(commands)g(ha)m(v)m(e)j(b)s(een)d
(extended)h(to)h(accept)h(Ob)5 b(jectiv)m(e-C)35 b(metho)s(d)g(names)g
(as)150 2340 y(line)29 b(sp)s(eci\014cations:)330 2502
y Fo(clear)330 2651 y(break)330 2799 y(info)g(line)330
2948 y(jump)330 3096 y(list)275 3297 y Fu(F)-8 b(or)34
b(example,)i(to)e(set)h(a)g(breakp)s(oin)m(t)e(at)i(the)f
Fo(create)e Fu(instance)i(metho)s(d)g(of)g(class)g Fo(Fruit)f
Fu(in)g(the)150 3407 y(program)d(curren)m(tly)g(b)s(eing)e(debugged,)j
(en)m(ter:)390 3563 y Fo(break)46 b(-[Fruit)g(create])275
3726 y Fu(T)-8 b(o)30 b(list)f(ten)i(program)f(lines)f(around)g(the)i
Fo(initialize)c Fu(class)j(metho)s(d,)g(en)m(ter:)390
3882 y Fo(list)47 b(+[NSText)e(initialize])275 4045 y
Fu(In)30 b(the)i(curren)m(t)f(v)m(ersion)g(of)g(GDB,)i(the)e(plus)f(or)
h(min)m(us)f(sign)g(is)g(required.)42 b(In)31 b(future)f(v)m(ersions)h
(of)150 4154 y(GDB,)j(the)f(plus)d(or)j(min)m(us)e(sign)h(will)e(b)s(e)
h(optional,)i(but)f(y)m(ou)h(can)g(use)f(it)g(to)i(narro)m(w)e(the)h
(searc)m(h.)48 b(It)150 4264 y(is)29 b(also)i(p)s(ossible)d(to)j(sp)s
(ecify)e(just)h(a)g(metho)s(d)g(name:)390 4420 y Fo(break)46
b(create)275 4583 y Fu(Y)-8 b(ou)34 b(m)m(ust)h(sp)s(ecify)d(the)j
(complete)g(metho)s(d)e(name,)j(including)31 b(an)m(y)k(colons.)52
b(If)34 b(y)m(our)g(program's)150 4692 y(source)j(\014les)f(con)m(tain)
h(more)g(than)g(one)g Fo(create)e Fu(metho)s(d,)j(y)m(ou'll)e(b)s(e)h
(presen)m(ted)f(with)g(a)h(n)m(um)m(b)s(ered)150 4802
y(list)30 b(of)h(classes)g(that)h(implemen)m(t)d(that)j(metho)s(d.)42
b(Indicate)31 b(y)m(our)g(c)m(hoice)h(b)m(y)f(n)m(um)m(b)s(er,)f(or)h
(t)m(yp)s(e)g(`)p Fo(0)p Fu(')g(to)150 4911 y(exit)f(if)g(none)g(apply)
-8 b(.)275 5074 y(As)33 b(another)g(example,)h(to)g(clear)f(a)h(breakp)
s(oin)m(t)e(established)f(at)j(the)g Fo(makeKeyAndOrderFront:)150
5183 y Fu(metho)s(d)c(of)g(the)h Fo(NSWindow)d Fu(class,)i(en)m(ter:)
390 5340 y Fo(clear)46 b(-[NSWindow)f(makeKeyAndOrderFront:])p
eop
%%Page: 91 93
91 92 bop 150 -116 a Fu(Chapter)30 b(9:)41 b(Using)29
b(GDB)j(with)d(Di\013eren)m(t)i(Languages)1553 b(91)150
299 y Fk(9.4.4.2)63 b(Command)40 b(Descriptions)275 491
y Fu(This)34 b(section)j(describ)s(es)e(commands)i(and)f(options)g
(that)h(are)g(useful)e(in)h(debugging)f(Ob)5 b(jectiv)m(e-)150
601 y(C/C)p Fo(++)51 b Fu(co)s(de.)107 b(Some)52 b(of)h(these)g(are)f
(commands)g(added)g(sp)s(eci\014cally)e(to)j(supp)s(ort)d(Ob)5
b(jectiv)m(e-)150 711 y(C/C)p Fo(++)p Fu(;)28 b(others)f(are)h
(previously)d(existing)i(GDB)h(commands)f(that)h(ha)m(v)m(e)h(b)s(een)d
(extended)i(to)g(supp)s(ort)150 820 y(Ob)5 b(jectiv)m(e-C/C)p
Fo(++)p Fu(.)150 1029 y Fo(info)29 b(classes)630 1139
y Fu(See)i Fq(h)p Fu(unde\014ned)p Fq(i)d Fu([info)i(classes],)h(page)g
Fq(h)p Fu(unde\014ned)p Fq(i)150 1298 y Fo(info)e(selectors)630
1408 y Fu(See)i Fq(h)p Fu(unde\014ned)p Fq(i)d Fu([info)i(selectors],)h
(page)h Fq(h)p Fu(unde\014ned)p Fq(i)150 1632 y Fk(9.4.4.3)63
b(Ob)7 b(jectiv)m(e-C/C)p Ff(++)39 b Fk(Expressions)150
1914 y(9.4.5)63 b(P)m(ostScript)275 2107 y Fu(This)23
b(section)j(describ)s(es)e(commands)h(that)h(are)g(useful)d(when)i
(debugging)f(P)m(ostScript)h(source)h(\014les.)275 2242
y(These)37 b(commands)h(are)g(not)h(built)d(directly)g(in)m(to)i(GDB;)i
(rather,)g(the)e(Op)s(enStep)e(en)m(vironmen)m(t)150
2351 y(de\014nes)44 b(them)g(in)g(the)h(system-lev)m(el)g(GDB)g
(con\014guration)f(\014le)g(\([No)i(v)-5 b(alue)44 b(for)h
(\\GDBINIT"]v\).)150 2461 y(This)32 b(\014le)h(is)g(read)g(when)g(y)m
(ou)h(start)g(running)d(GDB)k(\(the)f(con)m(ten)m(ts)i(of)e(this)e
(\014le)h(are)h(sho)m(wn)g(later)f(in)150 2570 y(this)c(c)m(hapter\).)
150 2780 y Fo(showps,)f(shownops)630 2889 y Fu(The)d
Fo(showps)e Fu(and)i Fo(shownops)d Fu(commands)j(turn)f(on)h(and)g
(o\013)g(\(resp)s(ectiv)m(ely\))g(the)h(displa)m(y)630
2999 y(of)c(P)m(ostScript)g(co)s(de)g(b)s(eing)e(sen)m(t)j(from)e(y)m
(our)h(application)e(to)j(the)f(Windo)m(w)f(Serv)m(er.)38
b(Y)-8 b(our)630 3108 y(application)29 b(m)m(ust)h(b)s(e)g(running)d(b)
s(efore)j(y)m(ou)h(can)g(issue)e(either)h(of)g(these)h(commands.)150
3268 y Fo(flushps)630 3402 y Fu(The)g Fo(flushps)f Fu(command)h(sends)g
(p)s(ending)e(P)m(ostScript)i(co)s(de)h(to)g(the)g(Windo)m(w)f(Serv)m
(er.)630 3512 y(This)49 b(command)h(lets)g(y)m(ou)h(\015ush)e(the)h
(application's)f(output)h(bu\013er,)55 b(causing)50 b(an)m(y)630
3621 y(P)m(ostScript)29 b(co)s(de)h(w)m(aiting)f(there)h(to)g(b)s(e)f
(in)m(terrupted)f(immediately)-8 b(.)39 b(Y)-8 b(our)30
b(application)630 3731 y(m)m(ust)g(b)s(e)g(running)e(b)s(efore)i(y)m
(ou)g(can)h(issue)e(this)g(command.)150 3890 y Fo(traceevents,)e
(tracenoevents)630 4000 y Fu(The)e Fo(traceevents)e Fu(and)i
Fo(tracenoevents)d Fu(commands)j(turn)g(on)h(\(resp)s(eciv)m(ely\))f
(tracing)630 4110 y(of)34 b(P)m(ostScript)f(ev)m(en)m(ts.)53
b(When)33 b(P)m(ostScript)h(ev)m(en)m(t)h(tracing)f(is)f(enabled,)h
(all)e(ev)m(en)m(ts)k(re-)630 4219 y(ceiv)m(ed)26 b(from)f(the)h(Windo)
m(w)f(Serv)m(er)g(are)h(logged)g(to)g(the)g(standard)f(error)g(output)g
(stream.)150 4379 y Fo(waitps)630 4513 y Fu(The)41 b
Fo(waitps)f Fu(command)i(w)m(aits)f(un)m(til)f(the)i(curren)m(t)g
(Displa)m(y)e(P)m(ostscript)i(Con)m(text)h(is)630 4623
y(ready)30 b(to)h(receiv)m(e)h(more)e(input.)p eop
%%Page: 92 94
92 93 bop 150 -116 a Fu(92)2644 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 93 95
93 94 bop 150 -116 a Fu(Chapter)30 b(10:)41 b(Examining)29
b(the)h(Sym)m(b)s(ol)f(T)-8 b(able)1838 b(93)150 299
y Fp(10)80 b(Examining)55 b(the)e(Sym)l(b)t(ol)g(T)-13
b(able)275 635 y Fu(The)28 b(commands)g(describ)s(ed)f(in)g(this)h
(section)h(allo)m(w)f(y)m(ou)h(to)h(inquire)c(ab)s(out)i(the)h(sym)m(b)
s(ols)f(\(names)150 745 y(of)j(v)-5 b(ariables,)29 b(functions)g(and)g
(t)m(yp)s(es\))i(de\014ned)e(in)g(y)m(our)i(program.)40
b(This)29 b(information)g(is)g(inheren)m(t)g(in)150 854
y(the)k(text)g(of)f(y)m(our)h(program)f(and)f(do)s(es)h(not)h(c)m
(hange)h(as)e(y)m(our)g(program)g(executes.)48 b(GDB)34
b(\014nds)c(it)i(in)150 964 y(y)m(our)27 b(program's)h(sym)m(b)s(ol)e
(table,)i(in)e(the)i(\014le)f(indicated)f(when)g(y)m(ou)i(started)g
(GDB)g(\(see)h(Section)e(2.1.1)150 1073 y([Cho)s(osing)36
b(\014les],)j(page)f(10\),)j(or)c(b)m(y)g(one)h(of)g(the)f
(\014le-managemen)m(t)i(commands)e(\(see)h(Section)f(12.1)150
1183 y([Commands)30 b(to)h(sp)s(ecify)e(\014les],)g(page)j(101\).)275
1351 y(Occasionally)-8 b(,)32 b(y)m(ou)h(ma)m(y)g(need)g(to)g(refer)f
(to)i(sym)m(b)s(ols)d(that)i(con)m(tain)g(un)m(usual)d(c)m(haracters,)
35 b(whic)m(h)150 1461 y(GDB)f(ordinarily)c(treats)35
b(as)e(w)m(ord)g(delimiters.)47 b(The)32 b(most)i(frequen)m(t)f(case)h
(is)f(in)f(referring)f(to)j(static)150 1571 y(v)-5 b(ariables)26
b(in)g(other)h(source)h(\014les)e(\(see)i(Section)f(8.2)h([Program)g(v)
-5 b(ariables],)27 b(page)h(56\).)41 b(File)26 b(names)i(are)150
1680 y(recorded)36 b(in)g(ob)5 b(ject)37 b(\014les)f(as)h(debugging)e
(sym)m(b)s(ols,)i(but)f(GDB)i(w)m(ould)d(ordinarily)f(parse)i(a)h(t)m
(ypical)150 1790 y(\014le)29 b(name,)i(lik)m(e)e(`)p
Fo(foo.c)p Fu(',)h(as)g(the)h(three)f(w)m(ords)g(`)p
Fo(foo)p Fu(')g(`)p Fo(.)p Fu(')g(`)p Fo(c)p Fu('.)41
b(T)-8 b(o)31 b(allo)m(w)f(GDB)h(to)g(recognize)g(`)p
Fo(foo.c)p Fu(')150 1899 y(as)g(a)f(single)f(sym)m(b)s(ol,)h(enclose)g
(it)g(in)f(single)g(quotes;)i(for)g(example,)390 2062
y Fo(p)47 b('foo.c'::x)150 2230 y Fu(lo)s(oks)30 b(up)f(the)i(v)-5
b(alue)30 b(of)g Fo(x)g Fu(in)f(the)i(scop)s(e)f(of)h(the)f(\014le)g(`)
p Fo(foo.c)p Fu('.)150 2542 y Fo(info)f(address)g Fn(sym)m(b)s(ol)630
2651 y Fu(Describ)s(e)h(where)f(the)i(data)g(for)f Fn(sym)m(b)s(ol)j
Fu(is)c(stored.)41 b(F)-8 b(or)31 b(a)g(register)f(v)-5
b(ariable,)29 b(this)g(sa)m(ys)630 2761 y(whic)m(h)37
b(register)i(it)f(is)f(k)m(ept)j(in.)63 b(F)-8 b(or)40
b(a)f(non-register)f(lo)s(cal)g(v)-5 b(ariable,)39 b(this)f(prin)m(ts)f
(the)630 2870 y(stac)m(k-frame)32 b(o\013set)g(at)f(whic)m(h)e(the)h(v)
-5 b(ariable)29 b(is)h(alw)m(a)m(ys)h(stored.)630 3022
y(Note)23 b(the)e(con)m(trast)h(with)e(`)p Fo(print)30
b(&)p Fn(sym)m(b)s(ol)t Fu(',)21 b(whic)m(h)f(do)s(es)h(not)g(w)m(ork)h
(at)f(all)g(for)f(a)i(register)630 3131 y(v)-5 b(ariable,)34
b(and)f(for)g(a)i(stac)m(k)g(lo)s(cal)e(v)-5 b(ariable)33
b(prin)m(ts)f(the)i(exact)h(address)e(of)h(the)g(curren)m(t)630
3241 y(instan)m(tiation)29 b(of)i(the)f(v)-5 b(ariable.)150
3434 y Fo(whatis)29 b Fn(exp)630 3544 y Fu(Prin)m(t)k(the)g(data)i(t)m
(yp)s(e)e(of)h(expression)e Fn(exp)p Fu(.)50 b Fn(exp)36
b Fu(is)d(not)h(actually)f(ev)-5 b(aluated,)35 b(and)e(an)m(y)630
3654 y(side-e\013ecting)27 b(op)s(erations)g(\(suc)m(h)g(as)h
(assignmen)m(ts)f(or)g(function)f(calls\))h(inside)e(it)i(do)g(not)630
3763 y(tak)m(e)32 b(place.)41 b(See)30 b(Section)g(8.1)i
([Expressions],)d(page)i(55.)150 3957 y Fo(whatis)192
b Fu(Prin)m(t)29 b(the)i(data)g(t)m(yp)s(e)g(of)f Fo($)p
Fu(,)g(the)h(last)f(v)-5 b(alue)30 b(in)f(the)i(v)-5
b(alue)29 b(history)-8 b(.)150 4150 y Fo(ptype)29 b Fn(t)m(yp)s(ename)
630 4260 y Fu(Prin)m(t)35 b(a)h(description)e(of)j(data)f(t)m(yp)s(e)h
Fn(t)m(yp)s(ename)p Fu(.)58 b Fn(t)m(yp)s(ename)41 b
Fu(ma)m(y)c(b)s(e)e(the)h(name)g(of)h(a)630 4369 y(t)m(yp)s(e,)g(or)e
(for)g(C)f(co)s(de)i(it)e(ma)m(y)i(ha)m(v)m(e)g(the)g(form)e(`)p
Fo(class)c Fn(class-name)5 b Fu(',)37 b(`)p Fo(struct)29
b Fn(struct-)630 4479 y(tag)8 b Fu(',)32 b(`)p Fo(union)d
Fn(union-tag)8 b Fu(')30 b(or)h(`)p Fo(enum)e Fn(en)m(um-tag)8
b Fu('.)150 4672 y Fo(ptype)29 b Fn(exp)150 4782 y Fo(ptype)240
b Fu(Prin)m(t)26 b(a)i(description)e(of)h(the)h(t)m(yp)s(e)g(of)f
(expression)g Fn(exp)p Fu(.)39 b Fo(ptype)26 b Fu(di\013ers)g(from)h
Fo(whatis)f Fu(b)m(y)630 4891 y(prin)m(ting)i(a)j(detailed)e
(description,)g(instead)h(of)g(just)g(the)h(name)f(of)h(the)f(t)m(yp)s
(e.)630 5043 y(F)-8 b(or)31 b(example,)f(for)h(this)e(v)-5
b(ariable)29 b(declaration:)870 5188 y Fo(struct)46 b(complex)g
({double)g(real;)g(double)g(imag;})g(v;)630 5340 y Fu(the)31
b(t)m(w)m(o)g(commands)f(giv)m(e)h(this)e(output:)p eop
%%Page: 94 96
94 95 bop 150 -116 a Fu(94)2644 b(Debugging)31 b(with)e(GDB)870
299 y Fo(\(gdb\))46 b(whatis)g(v)870 403 y(type)h(=)g(struct)f(complex)
870 506 y(\(gdb\))g(ptype)h(v)870 610 y(type)g(=)g(struct)f(complex)g
({)1061 714 y(double)g(real;)1061 818 y(double)g(imag;)870
922 y(})630 1046 y Fu(As)31 b(with)e Fo(whatis)p Fu(,)h(using)f
Fo(ptype)h Fu(without)g(an)g(argumen)m(t)i(refers)e(to)i(the)f(t)m(yp)s
(e)g(of)g Fo($)p Fu(,)g(the)630 1155 y(last)f(v)-5 b(alue)30
b(in)f(the)i(v)-5 b(alue)30 b(history)-8 b(.)150 1309
y Fo(info)29 b(types)g Fn(regexp)150 1418 y Fo(info)g(types)630
1528 y Fu(Prin)m(t)23 b(a)i(brief)e(description)g(of)i(all)e(t)m(yp)s
(es)h(whose)h(name)f(matc)m(hes)i Fn(regexp)h Fu(\(or)e(all)f(t)m(yp)s
(es)g(in)630 1637 y(y)m(our)e(program,)i(if)e(y)m(ou)h(supply)d(no)i
(argumen)m(t\).)39 b(Eac)m(h)23 b(complete)g(t)m(yp)s(ename)g(is)e
(matc)m(hed)630 1747 y(as)38 b(though)g(it)f(w)m(ere)h(a)h(complete)f
(line;)i(th)m(us,)g(`)p Fo(i)30 b(type)f(value)p Fu(')37
b(giv)m(es)h(information)e(on)630 1857 y(all)d(t)m(yp)s(es)h(in)f(y)m
(our)h(program)g(whose)g(name)g(includes)e(the)i(string)f
Fo(value)p Fu(,)h(but)g(`)p Fo(i)c(type)630 1966 y(^value$)p
Fu(')f(giv)m(es)h(information)f(only)h(on)g(t)m(yp)s(es)g(whose)g
(complete)h(name)g(is)e Fo(value)p Fu(.)630 2098 y(This)k(command)h
(di\013ers)f(from)i Fo(ptype)e Fu(in)g(t)m(w)m(o)j(w)m(a)m(ys:)50
b(\014rst,)35 b(lik)m(e)f Fo(whatis)p Fu(,)g(it)g(do)s(es)h(not)630
2207 y(prin)m(t)43 b(a)i(detailed)f(description;)50 b(second,)f(it)44
b(lists)f(all)g(source)i(\014les)f(where)g(a)h(t)m(yp)s(e)g(is)630
2317 y(de\014ned.)150 2470 y Fo(info)29 b(source)630
2580 y Fu(Sho)m(w)23 b(the)g(name)h(of)f(the)h(curren)m(t)f(source)g
(\014le|that)g(is,)h(the)g(source)f(\014le)g(for)g(the)g(function)630
2689 y(con)m(taining)30 b(the)g(curren)m(t)h(p)s(oin)m(t)e(of)i
(execution|and)e(the)i(language)g(it)f(w)m(as)h(written)e(in.)150
2842 y Fo(info)g(sources)630 2952 y Fu(Prin)m(t)d(the)h(names)g(of)g
(all)f(source)i(\014les)e(in)f(y)m(our)i(program)g(for)g(whic)m(h)f
(there)h(is)f(debugging)630 3062 y(information,)40 b(organized)f(in)m
(to)h(t)m(w)m(o)h(lists:)57 b(\014les)38 b(whose)h(sym)m(b)s(ols)f(ha)m
(v)m(e)j(already)e(b)s(een)630 3171 y(read,)31 b(and)e(\014les)h(whose)
g(sym)m(b)s(ols)f(will)e(b)s(e)j(read)g(when)g(needed.)150
3324 y Fo(info)f(functions)630 3434 y Fu(Prin)m(t)g(the)i(names)f(and)g
(data)h(t)m(yp)s(es)f(of)h(all)e(de\014ned)g(functions.)150
3587 y Fo(info)g(functions)f Fn(regexp)630 3697 y Fu(Prin)m(t)g(the)g
(names)h(and)f(data)h(t)m(yp)s(es)g(of)g(all)e(de\014ned)h(functions)f
(whose)h(names)h(con)m(tain)g(a)630 3806 y(matc)m(h)j(for)e(regular)g
(expression)g Fn(regexp)p Fu(.)42 b(Th)m(us,)31 b(`)p
Fo(info)e(fun)h(step)p Fu(')f(\014nds)h(all)f(functions)630
3916 y(whose)42 b(names)g(include)d Fo(step)p Fu(;)47
b(`)p Fo(info)30 b(fun)f(^step)p Fu(')41 b(\014nds)f(those)j(whose)e
(names)h(start)630 4025 y(with)29 b Fo(step)p Fu(.)150
4179 y Fo(info)g(variables)630 4288 y Fu(Prin)m(t)39
b(the)h(names)g(and)f(data)h(t)m(yp)s(es)g(of)g(all)f(v)-5
b(ariables)39 b(that)h(are)g(declared)g(outside)f(of)630
4398 y(functions)29 b(\(i.e.,)i(excluding)e(lo)s(cal)g(v)-5
b(ariables\).)150 4551 y Fo(info)29 b(variables)f Fn(regexp)630
4661 y Fu(Prin)m(t)21 b(the)h(names)h(and)e(data)i(t)m(yp)s(es)f(of)g
(all)f(v)-5 b(ariables)21 b(\(except)j(for)e(lo)s(cal)f(v)-5
b(ariables\))21 b(whose)630 4770 y(names)30 b(con)m(tain)h(a)g(matc)m
(h)g(for)f(regular)g(expression)f Fn(regexp)p Fu(.)630
4902 y(Some)37 b(systems)g(allo)m(w)f(individual)d(ob)5
b(ject)38 b(\014les)e(that)h(mak)m(e)h(up)e(y)m(our)h(program)g(to)h(b)
s(e)630 5011 y(replaced)d(without)f(stopping)g(and)g(restarting)h(y)m
(our)g(program.)55 b(F)-8 b(or)36 b(example,)g(in)e(Vx-)630
5121 y(W)-8 b(orks)38 b(y)m(ou)g(can)f(simply)e(recompile)h(a)i
(defectiv)m(e)g(ob)5 b(ject)38 b(\014le)f(and)f(k)m(eep)i(on)f
(running.)630 5230 y(If)d(y)m(ou)g(are)g(running)e(on)i(one)g(of)g
(these)h(systems,)g(y)m(ou)f(can)h(allo)m(w)e(GDB)i(to)g(reload)f(the)
630 5340 y(sym)m(b)s(ols)29 b(for)h(automatically)g(relink)m(ed)f(mo)s
(dules:)p eop
%%Page: 95 97
95 96 bop 150 -116 a Fu(Chapter)30 b(10:)41 b(Examining)29
b(the)h(Sym)m(b)s(ol)f(T)-8 b(able)1838 b(95)630 299
y Fo(set)29 b(symbol-reloading)d(on)1110 408 y Fu(Replace)35
b(sym)m(b)s(ol)f(de\014nitions)f(for)h(the)i(corresp)s(onding)d(source)
i(\014le)f(when)1110 518 y(an)c(ob)5 b(ject)32 b(\014le)d(with)g(a)i
(particular)e(name)h(is)f(seen)i(again.)630 677 y Fo(set)e
(symbol-reloading)d(off)1110 787 y Fu(Do)h(not)f(replace)g(sym)m(b)s
(ol)f(de\014nitions)e(when)i(re-encoun)m(tering)h(ob)5
b(ject)27 b(\014les)1110 897 y(of)39 b(the)g(same)g(name.)66
b(This)37 b(is)h(the)h(default)f(state;)44 b(if)38 b(y)m(ou)h(are)g
(not)g(run-)1110 1006 y(ning)j(on)h(a)h(system)g(that)g(p)s(ermits)e
(automatically)h(relinking)d(mo)s(dules,)1110 1116 y(y)m(ou)28
b(should)d(lea)m(v)m(e)k Fo(symbol-reloading)23 b Fu(o\013,)29
b(since)e(otherwise)g(GDB)h(ma)m(y)1110 1225 y(discard)20
b(sym)m(b)s(ols)h(when)f(linking)f(large)j(programs,)i(that)e(ma)m(y)g
(con)m(tain)g(sev-)1110 1335 y(eral)30 b(mo)s(dules)e(\(from)j
(di\013eren)m(t)e(directories)h(or)g(libraries\))e(with)h(the)i(same)
1110 1445 y(name.)630 1604 y Fo(show)e(symbol-reloading)1110
1714 y Fu(Sho)m(w)h(the)g(curren)m(t)h Fo(on)e Fu(or)i
Fo(off)e Fu(setting.)150 1923 y Fo(maint)g(print)g(symbols)f
Fn(\014lename)150 2032 y Fo(maint)h(print)g(psymbols)f
Fn(\014lename)150 2142 y Fo(maint)h(print)g(msymbols)f
Fn(\014lename)630 2252 y Fu(W)-8 b(rite)41 b(a)g(dump)d(of)j(debugging)
f(sym)m(b)s(ol)f(data)i(in)m(to)f(the)h(\014le)f Fn(\014lename)p
Fu(.)70 b(These)40 b(com-)630 2361 y(mands)35 b(are)h(used)g(to)g
(debug)g(the)g(GDB)h(sym)m(b)s(ol-reading)d(co)s(de.)58
b(Only)35 b(sym)m(b)s(ols)f(with)630 2471 y(debugging)26
b(data)j(are)e(included.)37 b(If)27 b(y)m(ou)h(use)f(`)p
Fo(maint)i(print)g(symbols)p Fu(',)e(GDB)h(includes)630
2580 y(all)j(the)g(sym)m(b)s(ols)g(for)g(whic)m(h)g(it)g(has)g(already)
g(collected)h(full)e(details:)42 b(that)32 b(is,)g Fn(\014lename)630
2690 y Fu(re\015ects)40 b(sym)m(b)s(ols)f(for)g(only)g(those)h(\014les)
f(whose)h(sym)m(b)s(ols)e(GDB)j(has)e(read.)69 b(Y)-8
b(ou)41 b(can)630 2800 y(use)c(the)g(command)g Fo(info)29
b(sources)35 b Fu(to)j(\014nd)d(out)j(whic)m(h)e(\014les)g(these)h
(are.)61 b(If)37 b(y)m(ou)g(use)630 2909 y(`)p Fo(maint)29
b(print)g(psymbols)p Fu(')k(instead,)k(the)e(dump)f(sho)m(ws)h
(information)e(ab)s(out)i(sym)m(b)s(ols)630 3019 y(that)42
b(GDB)g(only)f(kno)m(ws)g(partially|that)f(is,)j(sym)m(b)s(ols)d
(de\014ned)h(in)f(\014les)g(that)i(GDB)630 3128 y(has)c(skimmed,)i(but)
e(not)h(y)m(et)g(read)g(completely)-8 b(.)65 b(Finally)-8
b(,)40 b(`)p Fo(maint)29 b(print)g(msymbols)p Fu(')630
3238 y(dumps)i(just)h(the)h(minimal)d(sym)m(b)s(ol)h(information)g
(required)g(for)i(eac)m(h)h(ob)5 b(ject)34 b(\014le)d(from)630
3347 y(whic)m(h)36 b(GDB)j(has)f(read)f(some)i(sym)m(b)s(ols.)61
b(See)38 b(Section)g(12.1)h([Commands)e(to)h(sp)s(ecify)630
3457 y(\014les],)30 b(page)g(101,)i(for)e(a)g(discussion)e(of)i(ho)m(w)
g(GDB)h(reads)f(sym)m(b)s(ols)f(\(in)g(the)h(description)630
3567 y(of)h Fo(symbol-file)p Fu(\).)p eop
%%Page: 96 98
96 97 bop 150 -116 a Fu(96)2644 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 97 99
97 98 bop 150 -116 a Fu(Chapter)30 b(11:)41 b(Altering)30
b(Execution)2244 b(97)150 299 y Fp(11)80 b(Altering)54
b(Execution)275 542 y Fu(Once)34 b(y)m(ou)h(think)d(y)m(ou)j(ha)m(v)m
(e)h(found)d(an)h(error)g(in)f(y)m(our)h(program,)i(y)m(ou)e(migh)m(t)h
(w)m(an)m(t)g(to)g(\014nd)e(out)150 652 y(for)h(certain)g(whether)f
(correcting)i(the)f(apparen)m(t)g(error)g(w)m(ould)f(lead)h(to)h
(correct)g(results)e(in)f(the)j(rest)150 761 y(of)i(the)f(run.)58
b(Y)-8 b(ou)37 b(can)g(\014nd)e(the)i(answ)m(er)f(b)m(y)h(exp)s(erimen)
m(t,)g(using)e(the)i(GDB)h(features)e(for)h(altering)150
871 y(execution)31 b(of)f(the)h(program.)275 1008 y(F)-8
b(or)25 b(example,)h(y)m(ou)f(can)g(store)h(new)e(v)-5
b(alues)24 b(in)m(to)h(v)-5 b(ariables)24 b(or)h(memory)f(lo)s
(cations,)i(giv)m(e)f(y)m(our)g(pro-)150 1118 y(gram)k(a)g(signal,)f
(restart)h(it)g(at)g(a)g(di\013eren)m(t)g(address,)f(or)h(ev)m(en)g
(return)f(prematurely)g(from)g(a)h(function.)150 1383
y Fs(11.1)68 b(Assignmen)l(t)46 b(to)f(v)-7 b(ariables)275
1578 y Fu(T)f(o)42 b(alter)f(the)h(v)-5 b(alue)41 b(of)h(a)g(v)-5
b(ariable,)44 b(ev)-5 b(aluate)42 b(an)g(assignmen)m(t)f(expression.)73
b(See)42 b(Section)g(8.1)150 1688 y([Expressions],)29
b(page)i(55.)42 b(F)-8 b(or)31 b(example,)390 1820 y
Fo(print)46 b(x=4)150 1957 y Fu(stores)26 b(the)f(v)-5
b(alue)24 b(4)i(in)m(to)f(the)g(v)-5 b(ariable)24 b Fo(x)p
Fu(,)i(and)f(then)f(prin)m(ts)g(the)h(v)-5 b(alue)25
b(of)g(the)g(assignmen)m(t)g(expression)150 2067 y(\(whic)m(h)41
b(is)f(4\).)75 b(See)41 b(Chapter)g(9)h([Using)f(GDB)i(with)d
(Di\013eren)m(t)i(Languages],)j(page)d(71,)k(for)41 b(more)150
2176 y(information)29 b(on)h(op)s(erators)g(in)g(supp)s(orted)e
(languages.)275 2314 y(If)35 b(y)m(ou)i(are)g(not)g(in)m(terested)f(in)
f(seeing)h(the)h(v)-5 b(alue)36 b(of)g(the)h(assignmen)m(t,)h(use)e
(the)h Fo(set)e Fu(command)150 2423 y(instead)24 b(of)h(the)g
Fo(print)e Fu(command.)39 b Fo(set)24 b Fu(is)g(really)f(the)i(same)h
(as)f Fo(print)e Fu(except)j(that)f(the)g(expression's)150
2533 y(v)-5 b(alue)39 b(is)f(not)i(prin)m(ted)e(and)h(is)f(not)i(put)f
(in)f(the)h(v)-5 b(alue)39 b(history)g(\(see)h(Section)f(8.8)i([V)-8
b(alue)39 b(history],)150 2643 y(page)31 b(66\).)42 b(The)30
b(expression)f(is)g(ev)-5 b(aluated)31 b(only)f(for)g(its)f(e\013ects.)
275 2780 y(If)42 b(the)i(b)s(eginning)c(of)j(the)h(argumen)m(t)f
(string)f(of)i(the)f Fo(set)f Fu(command)h(app)s(ears)g(iden)m(tical)f
(to)i(a)150 2890 y Fo(set)33 b Fu(sub)s(command,)f(use)i(the)g
Fo(set)29 b(variable)i Fu(command)j(instead)f(of)g(just)g
Fo(set)p Fu(.)50 b(This)32 b(command)h(is)150 2999 y(iden)m(tical)h(to)
h Fo(set)f Fu(except)i(for)e(its)g(lac)m(k)i(of)f(sub)s(commands.)52
b(F)-8 b(or)35 b(example,)h(if)e(y)m(our)g(program)h(has)g(a)150
3109 y(v)-5 b(ariable)37 b Fo(width)p Fu(,)h(y)m(ou)g(get)h(an)e(error)
h(if)e(y)m(ou)j(try)e(to)i(set)f(a)g(new)f(v)-5 b(alue)37
b(with)g(just)g(`)p Fo(set)30 b(width=13)p Fu(',)150
3218 y(b)s(ecause)g(GDB)i(has)e(the)h(command)f Fo(set)f(width)p
Fu(:)390 3350 y Fo(\(gdb\))46 b(whatis)g(width)390 3454
y(type)h(=)g(double)390 3558 y(\(gdb\))f(p)i(width)390
3661 y($4)f(=)h(13)390 3765 y(\(gdb\))e(set)h(width=47)390
3869 y(Invalid)f(syntax)g(in)h(expression.)150 4007 y
Fu(The)33 b(in)m(v)-5 b(alid)32 b(expression,)h(of)h(course,)h(is)e(`)p
Fo(=47)p Fu('.)50 b(In)33 b(order)g(to)i(actually)e(set)i(the)f
(program's)f(v)-5 b(ariable)150 4116 y Fo(width)p Fu(,)29
b(use)390 4248 y Fo(\(gdb\))46 b(set)h(var)g(width=47)275
4385 y Fu(GDB)37 b(allo)m(ws)f(more)h(implicit)d(con)m(v)m(ersions)i
(in)g(assignmen)m(ts)g(than)g(C;)h(y)m(ou)g(can)g(freely)f(store)h(an)
150 4495 y(in)m(teger)27 b(v)-5 b(alue)27 b(in)m(to)g(a)g(p)s(oin)m
(ter)f(v)-5 b(ariable)26 b(or)g(vice)h(v)m(ersa,)i(and)d(y)m(ou)h(can)h
(con)m(v)m(ert)g(an)m(y)f(structure)g(to)h(an)m(y)150
4605 y(other)j(structure)f(that)g(is)g(the)g(same)h(length)f(or)g
(shorter.)275 4742 y(T)-8 b(o)29 b(store)g(v)-5 b(alues)29
b(in)m(to)g(arbitrary)e(places)i(in)f(memory)-8 b(,)29
b(use)g(the)g(`)p Fo({...)o(})p Fu(')g(construct)g(to)h(generate)h(a)
150 4852 y(v)-5 b(alue)33 b(of)h(sp)s(eci\014ed)f(t)m(yp)s(e)h(at)g(a)h
(sp)s(eci\014ed)d(address)h(\(see)i(Section)e(8.1)i([Expressions],)f
(page)h(55\).)52 b(F)-8 b(or)150 4961 y(example,)31 b
Fo({int}0x83040)d Fu(refers)j(to)g(memory)g(lo)s(cation)g
Fo(0x83040)e Fu(as)j(an)f(in)m(teger)g(\(whic)m(h)f(implies)f(a)150
5071 y(certain)h(size)h(and)e(represen)m(tation)i(in)e(memory\),)i(and)
390 5202 y Fo(set)47 b({int}0x83040)d(=)k(4)150 5340
y Fu(stores)31 b(the)f(v)-5 b(alue)30 b(4)h(in)m(to)f(that)h(memory)g
(lo)s(cation.)p eop
%%Page: 98 100
98 99 bop 150 -116 a Fu(98)2644 b(Debugging)31 b(with)e(GDB)150
299 y Fs(11.2)68 b(Con)l(tin)l(uing)46 b(at)g(a)f(di\013eren)l(t)h
(address)275 495 y Fu(Ordinarily)-8 b(,)31 b(when)h(y)m(ou)i(con)m(tin)
m(ue)g(y)m(our)f(program,)i(y)m(ou)f(do)f(so)h(at)g(the)g(place)f
(where)h(it)f(stopp)s(ed,)150 605 y(with)23 b(the)h Fo(continue)e
Fu(command.)39 b(Y)-8 b(ou)24 b(can)h(instead)e(con)m(tin)m(ue)i(at)g
(an)f(address)f(of)h(y)m(our)h(o)m(wn)f(c)m(ho)s(osing,)150
714 y(with)29 b(the)i(follo)m(wing)d(commands:)150 935
y Fo(jump)h Fn(linesp)s(ec)630 1045 y Fu(Resume)i(execution)g(at)g
(line)f Fn(linesp)s(ec)p Fu(.)40 b(Execution)31 b(stops)g(again)g
(immediately)e(if)h(there)630 1154 y(is)38 b(a)i(breakp)s(oin)m(t)e
(there.)68 b(See)40 b(Section)f(7.1)h([Prin)m(ting)e(source)h(lines],)i
(page)f(51,)i(for)e(a)630 1264 y(description)h(of)h(the)h(di\013eren)m
(t)f(forms)g(of)g Fn(linesp)s(ec)p Fu(.)75 b(It)43 b(is)e(common)i
(practice)g(to)g(use)630 1373 y(the)h Fo(tbreak)f Fu(command)h(in)f
(conjunction)g(with)g Fo(jump)p Fu(.)81 b(See)44 b(Section)g(5.1.1)i
([Setting)630 1483 y(breakp)s(oin)m(ts],)30 b(page)h(28.)630
1619 y(The)44 b Fo(jump)f Fu(command)i(do)s(es)f(not)h(c)m(hange)h(the)
e(curren)m(t)h(stac)m(k)h(frame,)i(or)d(the)f(stac)m(k)630
1729 y(p)s(oin)m(ter,)30 b(or)g(the)g(con)m(ten)m(ts)i(of)f(an)m(y)f
(memory)g(lo)s(cation)g(or)g(an)m(y)h(register)f(other)h(than)f(the)630
1839 y(program)37 b(coun)m(ter.)62 b(If)36 b(line)g Fn(linesp)s(ec)41
b Fu(is)36 b(in)g(a)h(di\013eren)m(t)g(function)f(from)g(the)i(one)f
(cur-)630 1948 y(ren)m(tly)24 b(executing,)j(the)e(results)f(ma)m(y)h
(b)s(e)f(bizarre)g(if)g(the)h(t)m(w)m(o)i(functions)c(exp)s(ect)i
(di\013eren)m(t)630 2058 y(patterns)i(of)g(argumen)m(ts)g(or)g(of)g(lo)
s(cal)f(v)-5 b(ariables.)39 b(F)-8 b(or)27 b(this)f(reason,)i(the)f
Fo(jump)f Fu(command)630 2167 y(requests)33 b(con\014rmation)g(if)g
(the)h(sp)s(eci\014ed)e(line)f(is)i(not)h(in)e(the)i(function)e(curren)
m(tly)h(exe-)630 2277 y(cuting.)39 b(Ho)m(w)m(ev)m(er,)31
b(ev)m(en)d(bizarre)f(results)g(are)h(predictable)e(if)h(y)m(ou)h(are)g
(w)m(ell)f(acquain)m(ted)630 2386 y(with)i(the)i(mac)m(hine-language)f
(co)s(de)h(of)g(y)m(our)f(program.)150 2550 y Fo(jump)f(*)p
Fn(address)630 2659 y Fu(Resume)h(execution)h(at)g(the)f(instruction)f
(at)i(address)e Fn(address)p Fu(.)275 2824 y(Y)-8 b(ou)38
b(can)g(get)h(m)m(uc)m(h)f(the)g(same)g(e\013ect)h(as)f(the)g
Fo(jump)f Fu(command)g(b)m(y)h(storing)f(a)h(new)g(v)-5
b(alue)37 b(in)m(to)150 2934 y(the)e(register)f Fo($pc)p
Fu(.)52 b(The)34 b(di\013erence)g(is)f(that)i(this)f(do)s(es)g(not)g
(start)h(y)m(our)g(program)f(running;)g(it)g(only)150
3044 y(c)m(hanges)d(the)g(address)e(of)i(where)f(it)g
Fr(wil)5 b(l)40 b Fu(run)29 b(when)g(y)m(ou)i(con)m(tin)m(ue.)41
b(F)-8 b(or)31 b(example,)390 3176 y Fo(set)47 b($pc)g(=)g(0x485)150
3314 y Fu(mak)m(es)27 b(the)g(next)f Fo(continue)e Fu(command)i(or)g
(stepping)f(command)h(execute)i(at)f(address)e Fo(0x485)p
Fu(,)h(rather)150 3424 y(than)c(at)h(the)g(address)f(where)g(y)m(our)g
(program)g(stopp)s(ed.)37 b(See)23 b(Section)f(5.2)i([Con)m(tin)m(uing)
d(and)h(stepping],)150 3533 y(page)31 b(38.)275 3672
y(The)24 b(most)i(common)f(o)s(ccasion)h(to)g(use)f(the)g
Fo(jump)f Fu(command)h(is)f(to)i(bac)m(k)g(up|p)s(erhaps)d(with)h(more)
150 3781 y(breakp)s(oin)m(ts)e(set|o)m(v)m(er)k(a)e(p)s(ortion)e(of)i
(a)g(program)f(that)i(has)e(already)g(executed,)j(in)d(order)g(to)h
(examine)150 3891 y(its)30 b(execution)g(in)f(more)i(detail.)150
4158 y Fs(11.3)68 b(Giving)46 b(y)l(our)f(program)g(a)g(signal)150
4436 y Fo(signal)29 b Fn(signal)630 4546 y Fu(Resume)38
b(execution)h(where)f(y)m(our)h(program)f(stopp)s(ed,)i(but)e
(immediately)f(giv)m(e)i(it)f(the)630 4656 y(signal)31
b Fn(signal)p Fu(.)45 b Fn(signal)34 b Fu(can)e(b)s(e)g(the)g(name)g
(or)g(the)h(n)m(um)m(b)s(er)e(of)h(a)g(signal.)45 b(F)-8
b(or)33 b(example,)630 4765 y(on)38 b(man)m(y)h(systems)f
Fo(signal)29 b(2)38 b Fu(and)g Fo(signal)29 b(SIGINT)37
b Fu(are)h(b)s(oth)g(w)m(a)m(ys)h(of)g(sending)e(an)630
4875 y(in)m(terrupt)29 b(signal.)630 5011 y(Alternativ)m(ely)-8
b(,)28 b(if)f Fn(signal)j Fu(is)c(zero,)k(con)m(tin)m(ue)d(execution)h
(without)f(giving)f(a)i(signal.)39 b(This)630 5121 y(is)25
b(useful)f(when)h(y)m(our)g(program)h(stopp)s(ed)f(on)g(accoun)m(t)i
(of)f(a)g(signal)f(and)g(w)m(ould)g(ordinary)630 5230
y(see)i(the)g(signal)f(when)g(resumed)f(with)h(the)h
Fo(continue)e Fu(command;)j(`)p Fo(signal)g(0)p Fu(')f(causes)g(it)630
5340 y(to)k(resume)f(without)f(a)i(signal.)p eop
%%Page: 99 101
99 100 bop 150 -116 a Fu(Chapter)30 b(11:)41 b(Altering)30
b(Execution)2244 b(99)630 299 y Fo(signal)26 b Fu(do)s(es)h(not)h(rep)s
(eat)g(when)e(y)m(ou)i(press)2212 296 y Fj(h)p 2236 243
151 4 v 2236 299 a Fi(RET)p 2236 314 V 2383 296 a Fj(i)2440
299 y Fu(a)g(second)g(time)f(after)h(executing)g(the)630
408 y(command.)275 564 y(In)m(v)m(oking)22 b(the)g Fo(signal)f
Fu(command)h(is)f(not)i(the)g(same)f(as)h(in)m(v)m(oking)f(the)g
Fo(kill)f Fu(utilit)m(y)g(from)h(the)g(shell.)150 673
y(Sending)27 b(a)i(signal)e(with)g Fo(kill)h Fu(causes)h(GDB)h(to)f
(decide)f(what)h(to)g(do)f(with)g(the)h(signal)e(dep)s(ending)f(on)150
783 y(the)h(signal)e(handling)e(tables)k(\(see)g(Section)f(5.3)i
([Signals],)e(page)h(40\).)40 b(The)26 b Fo(signal)f
Fu(command)h(passes)150 892 y(the)31 b(signal)e(directly)g(to)i(y)m
(our)f(program.)150 1143 y Fs(11.4)68 b(Returning)46
b(from)f(a)g(function)150 1402 y Fo(return)150 1512 y(return)29
b Fn(expression)630 1622 y Fu(Y)-8 b(ou)32 b(can)h(cancel)f(execution)g
(of)g(a)g(function)f(call)g(with)g(the)h Fo(return)e
Fu(command.)45 b(If)32 b(y)m(ou)630 1731 y(giv)m(e)f(an)f
Fn(expression)f Fu(argumen)m(t,)i(its)f(v)-5 b(alue)30
b(is)f(used)h(as)h(the)f(function's)f(return)h(v)-5 b(alue.)275
1886 y(When)36 b(y)m(ou)i(use)f Fo(return)p Fu(,)g(GDB)h(discards)d
(the)j(selected)f(stac)m(k)i(frame)e(\(and)g(all)f(frames)g(within)150
1996 y(it\).)49 b(Y)-8 b(ou)34 b(can)g(think)e(of)h(this)f(as)i(making)
f(the)g(discarded)f(frame)h(return)f(prematurely)-8 b(.)49
b(If)33 b(y)m(ou)h(wish)150 2106 y(to)d(sp)s(ecify)e(a)i(v)-5
b(alue)30 b(to)h(b)s(e)f(returned,)f(giv)m(e)i(that)g(v)-5
b(alue)30 b(as)g(the)h(argumen)m(t)g(to)g Fo(return)p
Fu(.)275 2238 y(This)23 b(p)s(ops)g(the)i(selected)h(stac)m(k)g(frame)f
(\(see)h(Section)e(6.3)i([Selecting)f(a)g(frame],)h(page)g(47\),)h(and)
e(an)m(y)150 2347 y(other)34 b(frames)g(inside)d(of)j(it,)g(lea)m(ving)
g(its)f(caller)g(as)h(the)g(innermost)f(remaining)e(frame.)51
b(That)34 b(frame)150 2457 y(b)s(ecomes)c(selected.)42
b(The)29 b(sp)s(eci\014ed)g(v)-5 b(alue)30 b(is)f(stored)h(in)f(the)i
(registers)e(used)h(for)g(returning)e(v)-5 b(alues)30
b(of)150 2567 y(functions.)275 2699 y(The)g Fo(return)f
Fu(command)h(do)s(es)h(not)g(resume)f(execution;)h(it)f(lea)m(v)m(es)i
(the)f(program)g(stopp)s(ed)e(in)h(the)150 2809 y(state)h(that)g(w)m
(ould)e(exist)h(if)f(the)h(function)e(had)i(just)f(returned.)40
b(In)29 b(con)m(trast,)j(the)e Fo(finish)e Fu(command)150
2918 y(\(see)37 b(Section)e(5.2)i([Con)m(tin)m(uing)e(and)g(stepping],)
h(page)h(38\))g(resumes)e(execution)h(un)m(til)e(the)i(selected)150
3028 y(stac)m(k)c(frame)e(returns)f(naturally)-8 b(.)150
3279 y Fs(11.5)68 b(Calling)47 b(program)e(functions)150
3492 y Fo(call)29 b Fn(expr)84 b Fu(Ev)-5 b(aluate)31
b(the)f(expression)f Fn(expr)37 b Fu(without)29 b(displa)m(ying)f
Fo(void)h Fu(returned)g(v)-5 b(alues.)275 3647 y(Y)d(ou)31
b(can)g(use)f(this)g(v)-5 b(arian)m(t)30 b(of)h(the)g
Fo(print)f Fu(command)g(if)g(y)m(ou)h(w)m(an)m(t)g(to)h(execute)g(a)f
(function)e(from)150 3757 y(y)m(our)34 b(program,)h(but)e(without)g
(cluttering)g(the)h(output)g(with)f Fo(void)g Fu(returned)f(v)-5
b(alues.)51 b(If)34 b(the)g(result)150 3867 y(is)29 b(not)i(v)m(oid,)f
(it)g(is)g(prin)m(ted)e(and)i(sa)m(v)m(ed)i(in)d(the)h(v)-5
b(alue)30 b(history)-8 b(.)275 3999 y(F)g(or)31 b(the)g(A29K,)h(a)f
(user-con)m(trolled)f(v)-5 b(ariable)30 b Fo(call_scratch_address)p
Fu(,)c(sp)s(eci\014es)j(the)i(lo)s(cation)150 4109 y(of)37
b(a)g(scratc)m(h)h(area)g(to)g(b)s(e)e(used)g(when)g(GDB)i(calls)f(a)g
(function)f(in)f(the)i(target.)62 b(This)36 b(is)g(necessary)150
4218 y(b)s(ecause)26 b(the)g(usual)e(metho)s(d)i(of)g(putting)f(the)h
(scratc)m(h)h(area)f(on)g(the)g(stac)m(k)i(do)s(es)d(not)h(w)m(ork)g
(in)f(systems)150 4328 y(that)31 b(ha)m(v)m(e)h(separate)f(instruction)
d(and)i(data)h(spaces.)150 4579 y Fs(11.6)68 b(P)l(atc)l(hing)46
b(programs)275 4769 y Fu(By)29 b(default,)f(GDB)i(op)s(ens)f(the)g
(\014le)f(con)m(taining)g(y)m(our)h(program's)g(executable)g(co)s(de)g
(\(or)h(the)f(core-)150 4879 y(\014le\))35 b(read-only)-8
b(.)54 b(This)34 b(prev)m(en)m(ts)h(acciden)m(tal)h(alterations)f(to)h
(mac)m(hine)e(co)s(de;)k(but)d(it)f(also)h(prev)m(en)m(ts)150
4988 y(y)m(ou)c(from)f(in)m(ten)m(tionally)e(patc)m(hing)j(y)m(our)f
(program's)g(binary)-8 b(.)275 5121 y(If)29 b(y)m(ou'd)g(lik)m(e)g(to)h
(b)s(e)f(able)g(to)h(patc)m(h)h(the)e(binary)-8 b(,)29
b(y)m(ou)h(can)g(sp)s(ecify)e(that)i(explicitly)d(with)h(the)i
Fo(set)150 5230 y(write)25 b Fu(command.)39 b(F)-8 b(or)28
b(example,)f(y)m(ou)g(migh)m(t)g(w)m(an)m(t)g(to)h(turn)d(on)i(in)m
(ternal)e(debugging)h(\015ags,)i(or)e(ev)m(en)150 5340
y(to)31 b(mak)m(e)g(emergency)h(repairs.)p eop
%%Page: 100 102
100 101 bop 150 -116 a Fu(100)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(set)g(write)g(on)150 408 y(set)g(write)g(off)630
518 y Fu(If)39 b(y)m(ou)g(sp)s(ecify)f(`)p Fo(set)30
b(write)f(on)p Fu(',)41 b(GDB)g(op)s(ens)d(executable)i(and)e(core)i
(\014les)f(for)g(b)s(oth)630 628 y(reading)33 b(and)h(writing;)g(if)f
(y)m(ou)h(sp)s(ecify)f(`)p Fo(set)d(write)f(off)p Fu(')k(\(the)i
(default\),)g(GDB)g(op)s(ens)630 737 y(them)30 b(read-only)-8
b(.)630 872 y(If)30 b(y)m(ou)h(ha)m(v)m(e)h(already)f(loaded)f(a)h
(\014le,)f(y)m(ou)h(m)m(ust)g(load)f(it)g(again)h(\(using)f(the)g
Fo(exec-file)630 981 y Fu(or)23 b Fo(core-file)e Fu(command\))j(after)g
(c)m(hanging)g Fo(set)29 b(write)p Fu(,)24 b(for)f(y)m(our)g(new)g
(setting)h(to)g(tak)m(e)630 1091 y(e\013ect.)150 1250
y Fo(show)29 b(write)630 1360 y Fu(Displa)m(y)e(whether)h(executable)h
(\014les)e(and)g(core)i(\014les)e(are)i(op)s(ened)e(for)h(writing)e(as)
j(w)m(ell)e(as)630 1469 y(reading.)p eop
%%Page: 101 103
101 102 bop 150 -116 a Fu(Chapter)30 b(12:)h(GDB)h(Files)2541
b(101)150 299 y Fp(12)80 b(GDB)53 b(Files)275 523 y Fu(GDB)29
b(needs)f(to)h(kno)m(w)g(the)g(\014le)e(name)i(of)f(the)h(program)f(to)
h(b)s(e)f(debugged,)h(b)s(oth)f(in)f(order)h(to)h(read)150
632 y(its)j(sym)m(b)s(ol)f(table)i(and)e(in)h(order)g(to)h(start)g(y)m
(our)f(program.)47 b(T)-8 b(o)33 b(debug)f(a)h(core)g(dump)e(of)i(a)f
(previous)150 742 y(run,)d(y)m(ou)i(m)m(ust)f(also)g(tell)g(GDB)i(the)e
(name)h(of)f(the)h(core)g(dump)d(\014le.)150 993 y Fs(12.1)68
b(Commands)46 b(to)f(sp)t(ecify)g(\014les)275 1184 y
Fu(Y)-8 b(ou)37 b(ma)m(y)g(w)m(an)m(t)h(to)f(sp)s(ecify)e(executable)j
(and)e(core)h(dump)e(\014le)h(names.)60 b(The)36 b(usual)f(w)m(a)m(y)j
(to)f(do)150 1294 y(this)30 b(is)h(at)h(start-up)f(time,)g(using)f(the)
h(argumen)m(ts)h(to)g(GDB's)h(start-up)e(commands)g(\(see)h(Chapter)f
(2)150 1403 y([Getting)g(In)f(and)g(Out)f(of)i(GDB],)h(page)f(9\).)275
1536 y(Occasionally)h(it)g(is)g(necessary)i(to)g(c)m(hange)g(to)g(a)f
(di\013eren)m(t)g(\014le)f(during)f(a)i(GDB)h(session.)48
b(Or)33 b(y)m(ou)150 1645 y(ma)m(y)k(run)d(GDB)j(and)f(forget)h(to)g
(sp)s(ecify)e(a)h(\014le)f(y)m(ou)i(w)m(an)m(t)f(to)h(use.)58
b(In)35 b(these)i(situations)e(the)h(GDB)150 1755 y(commands)30
b(to)h(sp)s(ecify)e(new)h(\014les)f(are)i(useful.)150
1956 y Fo(file)e Fn(\014lename)630 2066 y Fu(Use)h Fn(\014lename)j
Fu(as)d(the)f(program)g(to)h(b)s(e)f(debugged.)40 b(It)29
b(is)g(read)g(for)g(its)g(sym)m(b)s(ols)e(and)i(for)630
2175 y(the)e(con)m(ten)m(ts)i(of)e(pure)e(memory)-8 b(.)40
b(It)27 b(is)f(also)h(the)g(program)f(executed)i(when)e(y)m(ou)h(use)g
(the)630 2285 y Fo(run)g Fu(command.)40 b(If)27 b(y)m(ou)h(do)g(not)h
(sp)s(ecify)d(a)i(directory)g(and)f(the)h(\014le)f(is)g(not)h(found)f
(in)g(the)630 2394 y(GDB)36 b(w)m(orking)e(directory)-8
b(,)36 b(GDB)g(uses)e(the)h(en)m(vironmen)m(t)f(v)-5
b(ariable)34 b Fo(PATH)f Fu(as)i(a)g(list)f(of)630 2504
y(directories)29 b(to)i(searc)m(h,)h(just)d(as)i(the)f(shell)f(do)s(es)
h(when)f(lo)s(oking)g(for)h(a)h(program)f(to)h(run.)630
2613 y(Y)-8 b(ou)38 b(can)g(c)m(hange)h(the)e(v)-5 b(alue)37
b(of)h(this)e(v)-5 b(ariable,)39 b(for)e(b)s(oth)g(GDB)h(and)f(y)m(our)
h(program,)630 2723 y(using)29 b(the)h Fo(path)g Fu(command.)630
2856 y(On)35 b(systems)h(with)f(memory-mapp)s(ed)g(\014les,)i(an)f
(auxiliary)e(\014le)h(`)p Fn(\014lename)p Fo(.syms)p
Fu(')f(ma)m(y)630 2965 y(hold)19 b(sym)m(b)s(ol)h(table)g(information)f
(for)i Fn(\014lename)p Fu(.)36 b(If)20 b(so,)k(GDB)d(maps)f(in)g(the)h
(sym)m(b)s(ol)e(table)630 3075 y(from)30 b(`)p Fn(\014lename)p
Fo(.syms)p Fu(',)e(starting)i(up)f(more)i(quic)m(kly)-8
b(.)40 b(See)30 b(the)g(descriptions)e(of)j(the)f(\014le)630
3184 y(options)39 b(`)p Fo(-mapped)p Fu(')e(and)i(`)p
Fo(-readnow)p Fu(')e(\(a)m(v)-5 b(ailable)39 b(on)g(the)h(command)f
(line,)h(and)e(with)630 3294 y(the)27 b(commands)f Fo(file)p
Fu(,)h Fo(symbol-file)p Fu(,)e(or)i Fo(add-symbol-file)p
Fu(,)c(describ)s(ed)i(b)s(elo)m(w\),)i(for)630 3403 y(more)k
(information.)150 3559 y Fo(file)288 b(file)38 b Fu(with)g(no)i
(argumen)m(t)f(mak)m(es)i(GDB)f(discard)e(an)m(y)i(information)d(it)i
(has)g(on)h(b)s(oth)630 3668 y(executable)31 b(\014le)e(and)h(the)h
(sym)m(b)s(ol)e(table.)150 3824 y Fo(exec-file)f Fu([)i
Fn(\014lename)35 b Fu(])630 3933 y(Sp)s(ecify)28 b(that)j(the)f
(program)f(to)i(b)s(e)e(run)f(\(but)i(not)g(the)g(sym)m(b)s(ol)f
(table\))h(is)e(found)h(in)g Fn(\014le-)630 4043 y(name)p
Fu(.)40 b(GDB)29 b(searc)m(hes)f(the)g(en)m(vironmen)m(t)g(v)-5
b(ariable)26 b Fo(PATH)h Fu(if)g(necessary)h(to)g(lo)s(cate)h(y)m(our)
630 4153 y(program.)59 b(Omitting)35 b Fn(\014lename)41
b Fu(means)36 b(to)h(discard)e(information)g(on)i(the)f(executable)630
4262 y(\014le.)150 4417 y Fo(symbol-file)27 b Fu([)k
Fn(\014lename)k Fu(])630 4527 y(Read)d(sym)m(b)s(ol)f(table)h
(information)e(from)i(\014le)f Fn(\014lename)p Fu(.)45
b Fo(PATH)31 b Fu(is)g(searc)m(hed)h(when)f(nec-)630
4637 y(essary)-8 b(.)51 b(Use)34 b(the)g Fo(file)f Fu(command)g(to)i
(get)f(b)s(oth)f(sym)m(b)s(ol)g(table)g(and)g(program)h(to)g(run)630
4746 y(from)c(the)g(same)h(\014le.)630 4879 y Fo(symbol-file)23
b Fu(with)h(no)i(argumen)m(t)g(clears)f(out)h(GDB)h(information)d(on)h
(y)m(our)h(program's)630 4988 y(sym)m(b)s(ol)j(table.)630
5121 y(The)37 b Fo(symbol-file)e Fu(command)j(causes)g(GDB)h(to)f
(forget)h(the)f(con)m(ten)m(ts)i(of)e(its)f(con)m(v)m(e-)630
5230 y(nience)25 b(v)-5 b(ariables,)26 b(the)f(v)-5 b(alue)26
b(history)-8 b(,)26 b(and)f(all)f(breakp)s(oin)m(ts)h(and)g
(auto-displa)m(y)g(expres-)630 5340 y(sions.)39 b(This)26
b(is)h(b)s(ecause)h(they)h(ma)m(y)f(con)m(tain)h(p)s(oin)m(ters)e(to)i
(the)f(in)m(ternal)f(data)i(recording)p eop
%%Page: 102 104
102 103 bop 150 -116 a Fu(102)2599 b(Debugging)31 b(with)e(GDB)630
299 y(sym)m(b)s(ols)40 b(and)g(data)i(t)m(yp)s(es,)i(whic)m(h)c(are)i
(part)f(of)g(the)g(old)g(sym)m(b)s(ol)e(table)j(data)f(b)s(eing)630
408 y(discarded)29 b(inside)f(GDB.)630 548 y Fo(symbol-file)f
Fu(do)s(es)j(not)h(rep)s(eat)g(if)e(y)m(ou)i(press)2316
545 y Fj(h)p 2340 492 151 4 v 2340 548 a Fi(RET)p 2340
563 V 2487 545 a Fj(i)2547 548 y Fu(again)g(after)f(executing)h(it)f
(once.)630 687 y(When)k(GDB)h(is)d(con\014gured)i(for)f(a)h(particular)
f(en)m(vironmen)m(t,)h(it)f(understands)f(debug-)630
797 y(ging)k(information)f(in)h(whatev)m(er)h(format)g(is)f(the)h
(standard)f(generated)h(for)g(that)g(en)m(vi-)630 907
y(ronmen)m(t;)h(y)m(ou)e(ma)m(y)g(use)g(either)f(a)h
Ft(gnu)f Fu(compiler,)h(or)f(other)h(compilers)e(that)i(adhere)630
1016 y(to)28 b(the)f(lo)s(cal)f(con)m(v)m(en)m(tions.)41
b(Best)28 b(results)e(are)h(usually)e(obtained)h(from)h
Ft(gnu)f Fu(compilers;)630 1126 y(for)33 b(example,)h(using)e
Fo(gcc)h Fu(y)m(ou)g(can)h(generate)h(debugging)d(information)g(for)h
(optimized)630 1235 y(co)s(de.)630 1375 y(F)-8 b(or)37
b(most)f(kinds)e(of)j(ob)5 b(ject)37 b(\014les,)f(with)f(the)h
(exception)h(of)f(old)f(SVR3)h(systems)g(using)630 1484
y(COFF,)27 b(the)g Fo(symbol-file)d Fu(command)j(do)s(es)f(not)i
(normally)d(read)i(the)g(sym)m(b)s(ol)e(table)i(in)630
1594 y(full)h(righ)m(t)i(a)m(w)m(a)m(y)-8 b(.)43 b(Instead,)31
b(it)f(scans)g(the)h(sym)m(b)s(ol)e(table)h(quic)m(kly)g(to)h(\014nd)e
(whic)m(h)g(source)630 1704 y(\014les)i(and)g(whic)m(h)g(sym)m(b)s(ols)
f(are)i(presen)m(t.)45 b(The)32 b(details)e(are)j(read)e(later,)i(one)f
(source)g(\014le)630 1813 y(at)f(a)g(time,)f(as)h(they)f(are)h(needed.)
630 1953 y(The)c(purp)s(ose)e(of)j(this)e(t)m(w)m(o-stage)31
b(reading)26 b(strategy)j(is)d(to)i(mak)m(e)h(GDB)f(start)g(up)e
(faster.)630 2062 y(F)-8 b(or)31 b(the)f(most)h(part,)f(it)g(is)f(in)m
(visible)e(except)32 b(for)e(o)s(ccasional)g(pauses)g(while)e(the)i
(sym)m(b)s(ol)630 2172 y(table)44 b(details)f(for)h(a)h(particular)e
(source)h(\014le)g(are)g(b)s(eing)f(read.)82 b(\(The)44
b Fo(set)30 b(verbose)630 2281 y Fu(command)44 b(can)g(turn)f(these)h
(pauses)g(in)m(to)g(messages)h(if)d(desired.)80 b(See)45
b(Section)e(14.6)630 2391 y([Optional)29 b(w)m(arnings)g(and)h
(messages],)i(page)f(142.\))630 2531 y(W)-8 b(e)42 b(ha)m(v)m(e)h(not)e
(implemen)m(ted)e(the)j(t)m(w)m(o-stage)i(strategy)e(for)f(COFF)g(y)m
(et.)74 b(When)41 b(the)630 2640 y(sym)m(b)s(ol)33 b(table)i(is)e
(stored)i(in)e(COFF)h(format,)i Fo(symbol-file)c Fu(reads)i(the)h(sym)m
(b)s(ol)e(table)630 2750 y(data)41 b(in)e(full)f(righ)m(t)h(a)m(w)m(a)m
(y)-8 b(.)73 b(Note)41 b(that)g(\\stabs-in-COFF")f(still)f(do)s(es)g
(the)i(t)m(w)m(o-stage)630 2859 y(strategy)-8 b(,)32
b(since)e(the)h(debug)e(info)h(is)f(actually)h(in)f(stabs)h(format.)150
3029 y Fo(symbol-file)d Fn(\014lename)35 b Fu([)c Fo(-readnow)d
Fu(])i([)h Fo(-mapped)d Fu(])150 3138 y Fo(file)h Fn(\014lename)35
b Fu([)30 b Fo(-readnow)f Fu(])h([)h Fo(-mapped)d Fu(])630
3248 y(Y)-8 b(ou)43 b(can)h(o)m(v)m(erride)f(the)g(GDB)h(t)m(w)m
(o-stage)i(strategy)f(for)d(reading)h(sym)m(b)s(ol)e(tables)i(b)m(y)630
3357 y(using)28 b(the)i(`)p Fo(-readnow)p Fu(')d(option)i(with)f(an)m
(y)i(of)g(the)g(commands)f(that)h(load)f(sym)m(b)s(ol)f(table)630
3467 y(information,)g(if)g(y)m(ou)h(w)m(an)m(t)g(to)h(b)s(e)e(sure)g
(GDB)i(has)f(the)g(en)m(tire)g(sym)m(b)s(ol)f(table)g(a)m(v)-5
b(ailable.)630 3606 y(If)30 b(memory-mapp)s(ed)e(\014les)h(are)i(a)m(v)
-5 b(ailable)29 b(on)h(y)m(our)g(system)g(through)g(the)g
Fo(mmap)f Fu(system)630 3716 y(call,)d(y)m(ou)h(can)f(use)f(another)h
(option,)h(`)p Fo(-mapped)p Fu(',)e(to)i(cause)g(GDB)g(to)f(write)f
(the)h(sym)m(b)s(ols)630 3826 y(for)41 b(y)m(our)g(program)g(in)m(to)h
(a)f(reusable)f(\014le.)73 b(F)-8 b(uture)41 b(GDB)i(debugging)d
(sessions)g(map)630 3935 y(in)33 b(sym)m(b)s(ol)g(information)g(from)h
(this)f(auxiliary)f(sym)m(b)s(ol)h(\014le)h(\(if)g(the)g(program)h(has)
f(not)630 4045 y(c)m(hanged\),)41 b(rather)d(than)g(sp)s(ending)d(time)
j(reading)f(the)h(sym)m(b)s(ol)e(table)i(from)g(the)g(exe-)630
4154 y(cutable)f(program.)60 b(Using)36 b(the)h(`)p Fo(-mapped)p
Fu(')f(option)g(has)h(the)g(same)g(e\013ect)i(as)e(starting)630
4264 y(GDB)31 b(with)f(the)g(`)p Fo(-mapped)p Fu(')f(command-line)g
(option.)630 4403 y(Y)-8 b(ou)33 b(can)f(use)g(b)s(oth)g(options)g
(together,)i(to)f(mak)m(e)h(sure)d(the)i(auxiliary)d(sym)m(b)s(ol)h
(\014le)g(has)630 4513 y(all)e(the)i(sym)m(b)s(ol)e(information)g(for)h
(y)m(our)g(program.)630 4653 y(The)c(auxiliary)f(sym)m(b)s(ol)h(\014le)
g(for)g(a)i(program)e(called)g Fn(m)m(yprog)35 b Fu(is)26
b(called)g(`)p Fn(m)m(yprog)p Fo(.syms)p Fu('.)630 4762
y(Once)j(this)f(\014le)g(exists)h(\(so)h(long)f(as)g(it)g(is)f(new)m
(er)h(than)g(the)h(corresp)s(onding)d(executable\),)630
4872 y(GDB)k(alw)m(a)m(ys)f(attempts)g(to)h(use)e(it)g(when)g(y)m(ou)h
(debug)e Fn(m)m(yprog)8 b Fu(;)30 b(no)g(sp)s(ecial)e(options)h(or)630
4981 y(commands)h(are)h(needed.)630 5121 y(The)k(`)p
Fo(.syms)p Fu(')f(\014le)h(is)f(sp)s(eci\014c)g(to)j(the)e(host)h(mac)m
(hine)f(where)g(y)m(ou)g(run)f(GDB.)j(It)e(holds)630
5230 y(an)e(exact)h(image)f(of)h(the)f(in)m(ternal)e(GDB)j(sym)m(b)s
(ol)e(table.)48 b(It)33 b(cannot)h(b)s(e)e(shared)g(across)630
5340 y(m)m(ultiple)c(host)j(platforms.)p eop
%%Page: 103 105
103 104 bop 150 -116 a Fu(Chapter)30 b(12:)41 b(GDB)32
b(Files)2531 b(103)150 299 y Fo(core-file)28 b Fu([)i
Fn(\014lename)35 b Fu(])630 408 y(Sp)s(ecify)40 b(the)h(whereab)s(outs)
g(of)h(a)g(core)g(dump)d(\014le)i(to)h(b)s(e)f(used)g(as)g(the)h(\\con)
m(ten)m(ts)i(of)630 518 y(memory".)c(T)-8 b(raditionally)g(,)26
b(core)j(\014les)d(con)m(tain)i(only)f(some)h(parts)f(of)h(the)g
(address)e(space)630 628 y(of)36 b(the)f(pro)s(cess)g(that)h(generated)
h(them;)h(GDB)e(can)g(access)h(the)f(executable)g(\014le)e(itself)630
737 y(for)c(other)h(parts.)630 881 y Fo(core-file)d Fu(with)h(no)h
(argumen)m(t)h(sp)s(eci\014es)e(that)i(no)f(core)h(\014le)f(is)f(to)i
(b)s(e)f(used.)630 1024 y(Note)g(that)g(the)f(core)h(\014le)e(is)f
(ignored)h(when)g(y)m(our)h(program)g(is)f(actually)g(running)e(under)
630 1133 y(GDB.)41 b(So,)i(if)c(y)m(ou)h(ha)m(v)m(e)i(b)s(een)d
(running)e(y)m(our)j(program)g(and)g(y)m(ou)g(wish)e(to)j(debug)f(a)630
1243 y(core)29 b(\014le)e(instead,)h(y)m(ou)g(m)m(ust)g(kill)e(the)i
(subpro)s(cess)e(in)h(whic)m(h)g(the)h(program)f(is)g(running.)630
1353 y(T)-8 b(o)33 b(do)f(this,)g(use)g(the)g Fo(kill)f
Fu(command)h(\(see)h(Section)f(4.8)i([Killing)29 b(the)j(c)m(hild)f
(pro)s(cess],)630 1462 y(page)g(23\).)150 1639 y Fo(add-symbol-file)26
b Fn(\014lename)35 b(address)150 1749 y Fo(add-symbol-file)26
b Fn(\014lename)35 b(address)e Fu([)e Fo(-readnow)d Fu(])i([)h
Fo(-mapped)d Fu(])630 1858 y(The)45 b Fo(add-symbol-file)c
Fu(command)k(reads)g(additional)e(sym)m(b)s(ol)h(table)i(information)
630 1968 y(from)34 b(the)h(\014le)f Fn(\014lename)p Fu(.)53
b(Y)-8 b(ou)35 b(w)m(ould)e(use)i(this)e(command)i(when)e
Fn(\014lename)39 b Fu(has)c(b)s(een)630 2078 y(dynamically)e(loaded)i
(\(b)m(y)g(some)h(other)g(means\))f(in)m(to)h(the)f(program)g(that)h
(is)e(running.)630 2187 y Fn(address)e Fu(should)26 b(b)s(e)i(the)h
(memory)g(address)e(at)j(whic)m(h)d(the)i(\014le)f(has)g(b)s(een)g
(loaded;)h(GDB)630 2297 y(cannot)i(\014gure)f(this)f(out)i(for)f
(itself.)39 b(Y)-8 b(ou)31 b(can)g(sp)s(ecify)e Fn(address)k
Fu(as)e(an)f(expression.)630 2440 y(The)22 b(sym)m(b)s(ol)f(table)h(of)
g(the)h(\014le)e Fn(\014lename)26 b Fu(is)c(added)f(to)i(the)f(sym)m(b)
s(ol)f(table)h(originally)e(read)630 2550 y(with)k(the)h
Fo(symbol-file)d Fu(command.)38 b(Y)-8 b(ou)26 b(can)f(use)f(the)h
Fo(add-symbol-file)c Fu(command)630 2659 y(an)m(y)33
b(n)m(um)m(b)s(er)d(of)j(times;)g(the)f(new)g(sym)m(b)s(ol)f(data)i(th)
m(us)f(read)g(k)m(eeps)g(adding)f(to)i(the)g(old.)630
2769 y(T)-8 b(o)31 b(discard)e(all)g(old)h(sym)m(b)s(ol)f(data)i
(instead,)f(use)g(the)g Fo(symbol-file)e Fu(command.)630
2912 y Fo(add-symbol-file)e Fu(do)s(es)k(not)h(rep)s(eat)f(if)g(y)m(ou)
g(press)2507 2909 y Fj(h)p 2531 2856 151 4 v 2531 2912
a Fi(RET)p 2531 2928 V 2678 2909 a Fj(i)2738 2912 y Fu(after)h(using)e
(it.)630 3055 y(Y)-8 b(ou)38 b(can)h(use)e(the)h(`)p
Fo(-mapped)p Fu(')f(and)g(`)p Fo(-readnow)p Fu(')f(options)i(just)f(as)
h(with)f(the)h Fo(symbol-)630 3165 y(file)25 b Fu(command,)i(to)h(c)m
(hange)f(ho)m(w)g(GDB)g(manages)g(the)g(sym)m(b)s(ol)e(table)h
(information)f(for)630 3275 y Fn(\014lename)p Fu(.)150
3452 y Fo(add-shared-symbol-file)630 3561 y Fu(The)20
b Fo(add-shared-symbol-file)15 b Fu(command)20 b(can)h(b)s(e)f(used)f
(only)h(under)f(Harris')h(CXUX)630 3671 y(op)s(erating)37
b(system)g(for)g(the)g(Motorola)h(88k.)62 b(GDB)38 b(automatically)f
(lo)s(oks)g(for)g(shared)630 3780 y(libraries,)20 b(ho)m(w)m(ev)m(er)i
(if)d(GDB)j(do)s(es)e(not)h(\014nd)e(y)m(ours,)k(y)m(ou)e(can)g(run)e
Fo(add-shared-symbol-)630 3890 y(file)p Fu(.)40 b(It)30
b(tak)m(es)i(no)e(argumen)m(ts.)150 4067 y Fo(section)144
b Fu(The)35 b Fo(section)e Fu(command)i(c)m(hanges)h(the)f(base)g
(address)f(of)i(section)f(SECTION)e(of)j(the)630 4177
y(exec)h(\014le)e(to)h(ADDR.)h(This)d(can)i(b)s(e)g(used)f(if)f(the)i
(exec)h(\014le)e(do)s(es)h(not)g(con)m(tain)g(section)630
4286 y(addresses,)29 b(\(suc)m(h)g(as)h(in)e(the)h(a.out)h(format\),)h
(or)e(when)f(the)i(addresses)e(sp)s(eci\014ed)g(in)g(the)630
4396 y(\014le)h(itself)g(are)h(wrong.)40 b(Eac)m(h)30
b(section)g(m)m(ust)g(b)s(e)f(c)m(hanged)i(separately)-8
b(.)41 b(The)29 b(\\info)h(\014les")630 4505 y(command)g(lists)f(all)g
(the)i(sections)f(and)g(their)f(addresses.)150 4682 y
Fo(info)g(files)150 4792 y(info)g(target)630 4902 y(info)g(files)37
b Fu(and)h Fo(info)29 b(target)36 b Fu(are)j(synon)m(ymous;)j(b)s(oth)
37 b(prin)m(t)g(the)h(curren)m(t)g(target)630 5011 y(\(see)48
b(Chapter)e(13)h([Sp)s(ecifying)d(a)k(Debugging)e(T)-8
b(arget],)53 b(page)47 b(107\),)53 b(including)43 b(the)630
5121 y(names)e(of)g(the)h(executable)f(and)g(core)h(dump)d(\014les)h
(curren)m(tly)g(in)g(use)h(b)m(y)g(GDB,)i(and)630 5230
y(the)31 b(\014les)e(from)i(whic)m(h)e(sym)m(b)s(ols)g(w)m(ere)i
(loaded.)41 b(The)30 b(command)h Fo(help)e(target)g Fu(lists)g(all)630
5340 y(p)s(ossible)f(targets)k(rather)e(than)g(curren)m(t)g(ones.)p
eop
%%Page: 104 106
104 105 bop 150 -116 a Fu(104)2599 b(Debugging)31 b(with)e(GDB)275
299 y(All)i(\014le-sp)s(ecifying)f(commands)i(allo)m(w)g(b)s(oth)g
(absolute)g(and)g(relativ)m(e)h(\014le)f(names)g(as)h(argumen)m(ts.)150
408 y(GDB)e(alw)m(a)m(ys)g(con)m(v)m(erts)h(the)f(\014le)e(name)i(to)g
(an)f(absolute)g(\014le)g(name)g(and)g(remem)m(b)s(ers)f(it)h(that)h(w)
m(a)m(y)-8 b(.)275 557 y(GDB)33 b(supp)s(orts)d(HP-UX,)j(SunOS,)d(SV)-8
b(r4,)33 b(Irix)d(5,)k(and)d(IBM)i(RS/6000)g(shared)f(libraries.)43
b(GDB)150 667 y(automatically)21 b(loads)f(sym)m(b)s(ol)f
(de\014nitions)g(from)h(shared)g(libraries)e(when)i(y)m(ou)h(use)f(the)
h Fo(run)f Fu(command,)150 777 y(or)43 b(when)g(y)m(ou)g(examine)g(a)h
(core)g(\014le.)79 b(\(Before)44 b(y)m(ou)g(issue)e(the)h
Fo(run)g Fu(command,)j(GDB)f(do)s(es)e(not)150 886 y(understand)26
b(references)j(to)g(a)f(function)f(in)g(a)i(shared)e(library)-8
b(,)27 b(ho)m(w)m(ev)m(er|unless)h(y)m(ou)g(are)h(debugging)150
996 y(a)i(core)g(\014le\).)150 1248 y Fo(info)e(share)150
1358 y(info)g(sharedlibrary)630 1467 y Fu(Prin)m(t)g(the)i(names)f(of)h
(the)f(shared)g(libraries)d(whic)m(h)j(are)g(curren)m(tly)g(loaded.)150
1641 y Fo(sharedlibrary)d Fn(regex)150 1751 y Fo(share)i
Fn(regex)630 1860 y Fu(Load)24 b(shared)f(ob)5 b(ject)25
b(library)c(sym)m(b)s(ols)h(for)i(\014les)e(matc)m(hing)i(a)g(Unix)f
(regular)g(expression.)630 1970 y(As)f(with)e(\014les)g(loaded)h
(automatically)-8 b(,)24 b(it)d(only)g(loads)g(shared)g(libraries)e
(required)h(b)m(y)h(y)m(our)630 2080 y(program)h(for)g(a)h(core)g
(\014le)e(or)h(after)h(t)m(yping)f Fo(run)p Fu(.)37 b(If)21
b Fn(regex)30 b Fu(is)21 b(omitted)h(all)f(shared)h(libraries)630
2189 y(required)29 b(b)m(y)h(y)m(our)g(program)g(are)h(loaded.)150
2483 y Fs(12.2)68 b(Errors)46 b(reading)f(sym)l(b)t(ol)g(\014les)275
2690 y Fu(While)39 b(reading)h(a)i(sym)m(b)s(ol)d(\014le,)k(GDB)g(o)s
(ccasionally)d(encoun)m(ters)h(problems,)h(suc)m(h)f(as)g(sym)m(b)s(ol)
150 2799 y(t)m(yp)s(es)31 b(it)g(do)s(es)g(not)h(recognize,)h(or)e(kno)
m(wn)g(bugs)f(in)g(compiler)g(output.)44 b(By)31 b(default,)g(GDB)i(do)
s(es)e(not)150 2909 y(notify)g(y)m(ou)h(of)g(suc)m(h)f(problems,)g
(since)g(they)g(are)h(relativ)m(ely)f(common)h(and)f(primarily)e(of)i
(in)m(terest)h(to)150 3018 y(p)s(eople)21 b(debugging)g(compilers.)37
b(If)21 b(y)m(ou)i(are)f(in)m(terested)h(in)d(seeing)i(information)f
(ab)s(out)h(ill-constructed)150 3128 y(sym)m(b)s(ol)30
b(tables,)h(y)m(ou)g(can)g(either)g(ask)g(GDB)h(to)g(prin)m(t)e(only)g
(one)h(message)h(ab)s(out)f(eac)m(h)h(suc)m(h)f(t)m(yp)s(e)g(of)150
3238 y(problem,)25 b(no)g(matter)h(ho)m(w)g(man)m(y)f(times)g(the)h
(problem)d(o)s(ccurs;)k(or)f(y)m(ou)f(can)h(ask)f(GDB)i(to)f(prin)m(t)e
(more)150 3347 y(messages,)32 b(to)g(see)f(ho)m(w)g(man)m(y)g(times)g
(the)g(problems)e(o)s(ccur,)i(with)f(the)h Fo(set)e(complaints)f
Fu(command)150 3457 y(\(see)j(Section)g(14.6)g([Optional)e(w)m(arnings)
h(and)f(messages],)j(page)f(142\).)275 3606 y(The)e(messages)j(curren)m
(tly)d(prin)m(ted,)g(and)h(their)g(meanings,)f(include:)150
3787 y Fo(inner)g(block)g(not)g(inside)g(outer)g(block)g(in)h
Fn(sym)m(b)s(ol)630 3896 y Fu(The)f(sym)m(b)s(ol)f(information)f(sho)m
(ws)i(where)g(sym)m(b)s(ol)f(scop)s(es)h(b)s(egin)f(and)h(end)f(\(suc)m
(h)i(as)f(at)630 4006 y(the)34 b(start)g(of)f(a)h(function)e(or)h(a)h
(blo)s(c)m(k)f(of)g(statemen)m(ts\).)52 b(This)32 b(error)h(indicates)f
(that)i(an)630 4116 y(inner)29 b(scop)s(e)h(blo)s(c)m(k)g(is)f(not)i
(fully)d(con)m(tained)j(in)e(its)g(outer)i(scop)s(e)g(blo)s(c)m(ks.)630
4257 y(GDB)46 b(circum)m(v)m(en)m(ts)f(the)g(problem)e(b)m(y)h
(treating)h(the)g(inner)e(blo)s(c)m(k)h(as)h(if)f(it)g(had)g(the)630
4367 y(same)31 b(scop)s(e)g(as)g(the)g(outer)g(blo)s(c)m(k.)41
b(In)30 b(the)h(error)f(message,)i Fn(sym)m(b)s(ol)h
Fu(ma)m(y)f(b)s(e)e(sho)m(wn)g(as)630 4476 y(\\)p Fo(\(don't)f(know\))p
Fu(")h(if)f(the)h(outer)h(blo)s(c)m(k)f(is)f(not)i(a)g(function.)150
4650 y Fo(block)e(at)h Fn(address)j Fo(out)c(of)h(order)630
4760 y Fu(The)36 b(sym)m(b)s(ol)f(information)f(for)i(sym)m(b)s(ol)f
(scop)s(e)i(blo)s(c)m(ks)e(should)g(o)s(ccur)h(in)f(order)h(of)g(in-)
630 4869 y(creasing)30 b(addresses.)40 b(This)29 b(error)h(indicates)f
(that)i(it)f(do)s(es)g(not)h(do)f(so.)630 5011 y(GDB)38
b(do)s(es)f(not)g(circum)m(v)m(en)m(t)h(this)e(problem,)h(and)g(has)g
(trouble)f(lo)s(cating)h(sym)m(b)s(ols)e(in)630 5121
y(the)41 b(source)f(\014le)g(whose)g(sym)m(b)s(ols)f(it)h(is)g
(reading.)70 b(\(Y)-8 b(ou)42 b(can)e(often)h(determine)f(what)630
5230 y(source)28 b(\014le)f(is)f(a\013ected)j(b)m(y)f(sp)s(ecifying)e
Fo(set)j(verbose)f(on)p Fu(.)40 b(See)28 b(Section)f(14.6)i([Optional)
630 5340 y(w)m(arnings)g(and)h(messages],)i(page)f(142.\))p
eop
%%Page: 105 107
105 106 bop 150 -116 a Fu(Chapter)30 b(12:)41 b(GDB)32
b(Files)2531 b(105)150 299 y Fo(bad)29 b(block)g(start)g(address)g
(patched)630 408 y Fu(The)34 b(sym)m(b)s(ol)g(information)f(for)i(a)g
(sym)m(b)s(ol)f(scop)s(e)h(blo)s(c)m(k)f(has)h(a)g(start)g(address)f
(smaller)630 518 y(than)i(the)h(address)e(of)i(the)f(preceding)g
(source)g(line.)57 b(This)35 b(is)g(kno)m(wn)h(to)h(o)s(ccur)g(in)e
(the)630 628 y(SunOS)28 b(4.1.1)k(\(and)e(earlier\))g(C)g(compiler.)630
762 y(GDB)k(circum)m(v)m(en)m(ts)g(the)f(problem)e(b)m(y)i(treating)h
(the)f(sym)m(b)s(ol)f(scop)s(e)h(blo)s(c)m(k)g(as)g(starting)630
872 y(on)d(the)h(previous)e(source)h(line.)150 1031 y
Fo(bad)f(string)g(table)g(offset)g(in)h(symbol)e Fn(n)630
1141 y Fu(Sym)m(b)s(ol)i(n)m(um)m(b)s(er)h Fn(n)g Fu(con)m(tains)h(a)g
(p)s(oin)m(ter)f(in)m(to)h(the)g(string)f(table)g(whic)m(h)g(is)g
(larger)g(than)630 1250 y(the)g(size)f(of)g(the)h(string)e(table.)630
1385 y(GDB)42 b(circum)m(v)m(en)m(ts)f(the)g(problem)e(b)m(y)i
(considering)e(the)i(sym)m(b)s(ol)e(to)j(ha)m(v)m(e)g(the)f(name)630
1494 y Fo(foo)p Fu(,)29 b(whic)m(h)g(ma)m(y)h(cause)g(other)g(problems)
e(if)h(man)m(y)h(sym)m(b)s(ols)e(end)h(up)g(with)f(this)h(name.)150
1654 y Fo(unknown)f(symbol)h(type)g(0x)p Fn(nn)630 1763
y Fu(The)f(sym)m(b)s(ol)g(information)f(con)m(tains)i(new)f(data)i(t)m
(yp)s(es)e(that)i(GDB)g(do)s(es)e(not)h(y)m(et)h(kno)m(w)630
1873 y(ho)m(w)39 b(to)h(read.)67 b Fo(0x)p Fn(nn)38 b
Fu(is)g(the)h(sym)m(b)s(ol)f(t)m(yp)s(e)h(of)h(the)f(misundersto)s(o)s
(d)d(information,)k(in)630 1983 y(hexadecimal.)630 2117
y(GDB)33 b(circum)m(v)m(en)m(ts)f(the)h(error)e(b)m(y)h(ignoring)f
(this)f(sym)m(b)s(ol)h(information.)44 b(This)30 b(usually)630
2227 y(allo)m(ws)23 b(y)m(ou)h(to)g(debug)f(y)m(our)h(program,)g
(though)g(certain)f(sym)m(b)s(ols)f(are)i(not)g(accessible.)38
b(If)630 2336 y(y)m(ou)22 b(encoun)m(ter)h(suc)m(h)e(a)h(problem)f(and)
g(feel)g(lik)m(e)h(debugging)e(it,)k(y)m(ou)e(can)g(debug)f
Fo(gdb)g Fu(with)630 2446 y(itself,)36 b(breakp)s(oin)m(t)e(on)i
Fo(complain)p Fu(,)f(then)g(go)h(up)f(to)h(the)g(function)e
Fo(read_dbx_symtab)630 2555 y Fu(and)c(examine)g Fo(*bufp)f
Fu(to)i(see)g(the)f(sym)m(b)s(ol.)150 2715 y Fo(stub)f(type)g(has)h
(NULL)f(name)630 2824 y Fu(GDB)i(could)f(not)h(\014nd)d(the)j(full)d
(de\014nition)g(for)i(a)h(struct)f(or)h(class.)150 2984
y Fo(const/volatile)26 b(indicator)i(missing)h(\(ok)g(if)h(using)f(g++)
g(v1.x\),)g(got...)630 3093 y Fu(The)22 b(sym)m(b)s(ol)f(information)g
(for)h(a)h(C)p Fo(++)e Fu(mem)m(b)s(er)h(function)f(is)h(missing)e
(some)j(information)630 3203 y(that)31 b(recen)m(t)g(v)m(ersions)f(of)h
(the)f(compiler)f(should)g(ha)m(v)m(e)i(output)f(for)g(it.)150
3362 y Fo(info)f(mismatch)f(between)h(compiler)f(and)h(debugger)630
3472 y Fu(GDB)i(could)f(not)h(parse)f(a)g(t)m(yp)s(e)h(sp)s
(eci\014cation)e(output)h(b)m(y)g(the)h(compiler.)p eop
%%Page: 106 108
106 107 bop 150 -116 a Fu(106)2599 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 107 109
107 108 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(107)150 299 y Fp(13)80
b(Sp)t(ecifying)55 b(a)f(Debugging)e(T)-13 b(arget)275
529 y Fu(A)32 b Fn(target)j Fu(is)c(the)i(execution)f(en)m(vironmen)m
(t)g(o)s(ccupied)f(b)m(y)h(y)m(our)g(program.)45 b(Often,)33
b(GDB)g(runs)d(in)150 638 y(the)f(same)g(host)g(en)m(vironmen)m(t)g(as)
g(y)m(our)g(program;)g(in)f(that)h(case,)h(the)g(debugging)d(target)k
(is)d(sp)s(eci\014ed)150 748 y(as)23 b(a)h(side)e(e\013ect)j(when)d(y)m
(ou)i(use)e(the)i Fo(file)e Fu(or)h Fo(core)f Fu(commands.)38
b(When)23 b(y)m(ou)h(need)f(more)g(\015exibilit)m(y|)150
857 y(for)i(example,)h(running)c(GDB)k(on)f(a)h(ph)m(ysically)d
(separate)j(host,)g(or)g(con)m(trolling)e(a)h(standalone)g(system)150
967 y(o)m(v)m(er)32 b(a)e(serial)g(p)s(ort)f(or)i(a)f(realtime)g
(system)h(o)m(v)m(er)g(a)g(TCP/IP)f(connection|y)m(ou)150
1222 y Fs(13.1)68 b(Activ)l(e)46 b(targets)275 1414 y
Fu(There)33 b(are)i(three)g(classes)f(of)g(targets:)50
b(pro)s(cesses,)36 b(core)f(\014les,)f(and)g(executable)h(\014les.)51
b(GDB)36 b(can)150 1523 y(w)m(ork)c(concurren)m(tly)f(on)h(up)f(to)i
(three)f(activ)m(e)h(targets,)h(one)e(in)e(eac)m(h)k(class.)45
b(This)30 b(allo)m(ws)h(y)m(ou)h(to)h(\(for)150 1633
y(example\))g(start)g(a)g(pro)s(cess)f(and)g(insp)s(ect)f(its)h
(activit)m(y)h(without)f(abandoning)f(y)m(our)h(w)m(ork)h(on)f(a)h
(core)150 1742 y(\014le.)275 1876 y(F)-8 b(or)25 b(example,)h(if)e(y)m
(ou)h(execute)i(`)p Fo(gdb)i(a.out)p Fu(',)d(then)e(the)h(executable)h
(\014le)e Fo(a.out)f Fu(is)h(the)i(only)e(activ)m(e)150
1985 y(target.)46 b(If)32 b(y)m(ou)g(designate)f(a)i(core)f(\014le)f
(as)h(w)m(ell|presumably)c(from)j(a)i(prior)d(run)g(that)i(crashed)g
(and)150 2095 y(coredump)s(ed|then)g(GDB)i(has)f(t)m(w)m(o)i(activ)m(e)
g(targets)g(and)d(uses)h(them)h(in)e(tandem,)i(lo)s(oking)f(\014rst)f
(in)150 2205 y(the)39 b(core\014le)h(target,)j(then)c(in)f(the)h
(executable)h(\014le,)h(to)f(satisfy)f(requests)g(for)g(memory)g
(addresses.)150 2314 y(\(T)m(ypically)-8 b(,)40 b(these)f(t)m(w)m(o)h
(classes)e(of)h(target)h(are)f(complemen)m(tary)-8 b(,)42
b(since)c(core)h(\014les)f(con)m(tain)h(only)f(a)150
2424 y(program's)28 b(read-write)f(memory|v)-5 b(ariables)27
b(and)g(so)i(on|plus)d(mac)m(hine)h(status,)i(while)d(executable)150
2533 y(\014les)j(con)m(tain)i(only)f(the)g(program)g(text)i(and)d
(initialized)f(data.\))275 2667 y(When)d(y)m(ou)g(t)m(yp)s(e)h
Fo(run)p Fu(,)f(y)m(our)h(executable)f(\014le)g(b)s(ecomes)g(an)g
(activ)m(e)i(pro)s(cess)e(target)i(as)e(w)m(ell.)38 b(When)150
2777 y(a)e(pro)s(cess)f(target)j(is)c(activ)m(e,)39 b(all)c(GDB)h
(commands)g(requesting)f(memory)g(addresses)g(refer)h(to)g(that)150
2886 y(target;)27 b(addresses)22 b(in)g(an)g(activ)m(e)i(core)g(\014le)
e(or)g(executable)i(\014le)d(target)k(are)e(obscured)f(while)e(the)j
(pro)s(cess)150 2996 y(target)32 b(is)d(activ)m(e.)275
3129 y(Use)39 b(the)g Fo(core-file)d Fu(and)i Fo(exec-file)e
Fu(commands)j(to)g(select)h(a)f(new)f(core)i(\014le)e(or)g(executable)
150 3239 y(target)g(\(see)g(Section)e(12.1)j([Commands)c(to)j(sp)s
(ecify)d(\014les],)j(page)f(101\).)62 b(T)-8 b(o)37 b(sp)s(ecify)e(as)i
(a)g(target)i(a)150 3349 y(pro)s(cess)33 b(that)i(is)d(already)i
(running,)e(use)h(the)h Fo(attach)e Fu(command)h(\(see)i(Section)e(4.7)
i([Debugging)f(an)150 3458 y(already-running)28 b(pro)s(cess],)i(page)h
(23\).)150 3713 y Fs(13.2)68 b(Commands)46 b(for)f(managing)h(targets)
150 3929 y Fo(target)29 b Fn(t)m(yp)s(e)35 b(parameters)630
4038 y Fu(Connects)c(the)f(GDB)i(host)f(en)m(vironmen)m(t)f(to)h(a)g
(target)h(mac)m(hine)e(or)h(pro)s(cess.)41 b(A)30 b(target)630
4148 y(is)c(t)m(ypically)h(a)g(proto)s(col)h(for)f(talking)g(to)h
(debugging)e(facilities.)38 b(Y)-8 b(ou)28 b(use)f(the)g(argumen)m(t)
630 4258 y Fn(t)m(yp)s(e)36 b Fu(to)31 b(sp)s(ecify)e(the)h(t)m(yp)s(e)
h(or)f(proto)s(col)h(of)f(the)h(target)h(mac)m(hine.)630
4391 y(F)-8 b(urther)24 b Fn(parameters)29 b Fu(are)c(in)m(terpreted)f
(b)m(y)g(the)h(target)h(proto)s(col,)g(but)e(t)m(ypically)f(include)630
4501 y(things)30 b(lik)m(e)g(device)h(names)g(or)g(host)g(names)g(to)g
(connect)h(with,)e(pro)s(cess)h(n)m(um)m(b)s(ers,)f(and)630
4610 y(baud)f(rates.)630 4744 y(The)h Fo(target)g Fu(command)g(do)s(es)
h(not)g(rep)s(eat)g(if)f(y)m(ou)i(press)2684 4741 y Fj(h)p
2708 4688 151 4 v 2708 4744 a Fi(RET)p 2708 4759 V 2855
4741 a Fj(i)2915 4744 y Fu(again)f(after)h(executing)630
4854 y(the)f(command.)150 5011 y Fo(help)e(target)630
5121 y Fu(Displa)m(ys)21 b(the)g(names)h(of)g(all)e(targets)j(a)m(v)-5
b(ailable.)38 b(T)-8 b(o)22 b(displa)m(y)d(targets)24
b(curren)m(tly)c(selected,)630 5230 y(use)29 b(either)g
Fo(info)g(target)f Fu(or)i Fo(info)f(files)f Fu(\(see)i(Section)f(12.1)
i([Commands)e(to)h(sp)s(ecify)630 5340 y(\014les],)g(page)h(101\).)p
eop
%%Page: 108 110
108 109 bop 150 -116 a Fu(108)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(help)g(target)g Fn(name)630 408 y Fu(Describ)s(e)h(a)g
(particular)f(target,)j(including)27 b(an)m(y)k(parameters)g(necessary)
f(to)i(select)f(it.)150 562 y Fo(set)e(gnutarget)f Fn(args)630
671 y Fu(GDB)38 b(uses)f(its)f(o)m(wn)i(library)c(BFD)39
b(to)e(read)g(y)m(our)h(\014les.)59 b(GDB)39 b(kno)m(ws)e(whether)f(it)
h(is)630 781 y(reading)j(an)g Fn(executable)p Fu(,)k(a)d
Fn(core)p Fu(,)j(or)c(a)h Fn(.o)46 b Fu(\014le;)f(ho)m(w)m(ev)m(er,)f
(y)m(ou)d(can)g(sp)s(ecify)e(the)i(\014le)630 891 y(format)h(with)d
(the)j Fo(set)29 b(gnutarget)39 b Fu(command.)73 b(Unlik)m(e)40
b(most)i Fo(target)d Fu(commands,)630 1000 y(with)29
b Fo(gnutarget)f Fu(the)i Fo(target)f Fu(refers)h(to)h(a)g(program,)f
(not)h(a)g(mac)m(hine.)630 1132 y Fr(Warning:)66 b Fu(T)-8
b(o)40 b(sp)s(ecify)f(a)i(\014le)e(format)h(with)f Fo(set)30
b(gnutarget)p Fu(,)40 b(y)m(ou)h(m)m(ust)f(kno)m(w)g(the)630
1241 y(actual)31 b(BFD)g(name.)630 1373 y(See)g(Section)f(12.1)i
([Commands)d(to)i(sp)s(ecify)e(\014les],)h(page)h(101.)150
1526 y Fo(show)e(gnutarget)630 1636 y Fu(Use)c(the)h
Fo(show)j(gnutarget)22 b Fu(command)j(to)h(displa)m(y)d(what)i(\014le)f
(format)i Fo(gnutarget)c Fu(is)i(set)630 1745 y(to)29
b(read.)40 b(If)28 b(y)m(ou)g(ha)m(v)m(e)h(not)g(set)g
Fo(gnutarget)p Fu(,)d(GDB)j(will)d(determine)h(the)h(\014le)g(format)g
(for)630 1855 y(eac)m(h)23 b(\014le)f(automatically)-8
b(,)24 b(and)e Fo(show)29 b(gnutarget)20 b Fu(displa)m(ys)g(`)p
Fo(The)30 b(current)e(BDF)i(target)630 1965 y(is)g("auto")p
Fu('.)275 2118 y(Here)c(are)g(some)g(common)g(targets)h(\(a)m(v)-5
b(ailable,)26 b(or)g(not,)h(dep)s(ending)c(on)i(the)h(GDB)h
(con\014guration\):)150 2315 y Fo(target)i(exec)g Fn(program)630
2425 y Fu(An)21 b(executable)h(\014le.)36 b(`)p Fo(target)29
b(exec)h Fn(program)p Fu(')21 b(is)f(the)h(same)h(as)g(`)p
Fo(exec-file)28 b Fn(program)p Fu('.)150 2578 y Fo(target)h(core)g
Fn(\014lename)630 2688 y Fu(A)f(core)h(dump)e(\014le.)39
b(`)p Fo(target)29 b(core)g Fn(\014lename)5 b Fu(')28
b(is)f(the)h(same)h(as)f(`)p Fo(core-file)g Fn(\014lename)5
b Fu('.)150 2841 y Fo(target)29 b(remote)f Fn(dev)630
2951 y Fu(Remote)22 b(serial)e(target)i(in)d(GDB-sp)s(eci\014c)i(proto)
s(col.)38 b(The)20 b(argumen)m(t)h Fn(dev)29 b Fu(sp)s(eci\014es)19
b(what)630 3061 y(serial)25 b(device)i(to)g(use)g(for)f(the)h
(connection)g(\(e.g.)41 b(`)p Fo(/dev/ttya)p Fu('\).)d(See)26
b(Section)h(13.4)h([Re-)630 3170 y(mote)k(debugging],)f(page)i(111.)45
b Fo(target)28 b(remote)i Fu(no)m(w)i(supp)s(orts)d(the)j
Fo(load)e Fu(command.)630 3280 y(This)d(is)g(only)h(useful)f(if)g(y)m
(ou)i(ha)m(v)m(e)h(some)f(other)g(w)m(a)m(y)g(of)g(getting)g(the)g
(stub)e(to)j(the)e(target)630 3389 y(system,)h(and)e(y)m(ou)h(can)g
(put)f(it)g(somewhere)h(in)e(memory)i(where)f(it)g(w)m(on't)i(get)f
(clobb)s(ered)630 3499 y(b)m(y)i(the)h(do)m(wnload.)150
3652 y Fo(target)e(sim)630 3762 y Fu(CPU)h(sim)m(ulator.)40
b(See)30 b(Section)g(13.4.10)k([Sim)m(ulated)29 b(CPU)h(T)-8
b(arget],)32 b(page)f(137.)275 3915 y(The)26 b(follo)m(wing)g(targets)j
(are)f(all)f(CPU-sp)s(eci\014c,)g(and)g(only)f(a)m(v)-5
b(ailable)27 b(for)g(sp)s(eci\014c)f(con\014gurations.)150
4113 y Fo(target)j(abug)g Fn(dev)630 4222 y Fu(ABug)i(R)m(OM)g(monitor)
e(for)h(M68K.)150 4376 y Fo(target)f(adapt)g Fn(dev)630
4485 y Fu(Adapt)h(monitor)g(for)g(A29K.)150 4639 y Fo(target)f(amd-eb)f
Fn(dev)38 b(sp)s(eed)33 b(PR)m(OG)630 4748 y Fu(Remote)e(PC-residen)m
(t)d(AMD)i(EB29K)g(b)s(oard,)f(attac)m(hed)i(o)m(v)m(er)g(serial)d
(lines.)38 b Fn(dev)f Fu(is)29 b(the)630 4858 y(serial)i(device,)h(as)h
(for)f Fo(target)c(remote)p Fu(;)k Fn(sp)s(eed)j Fu(allo)m(ws)c(y)m(ou)
h(to)h(sp)s(ecify)e(the)h(linesp)s(eed;)630 4967 y(and)f
Fn(PR)m(OG)k Fu(is)30 b(the)i(name)g(of)g(the)g(program)g(to)h(b)s(e)e
(debugged,)h(as)g(it)g(app)s(ears)f(to)h(DOS)630 5077
y(on)d(the)h(PC.)f(See)h(Section)f(13.4.4)i([The)f(EBMON)f(proto)s(col)
h(for)f(AMD29K],)i(page)f(127.)150 5230 y Fo(target)f(array)g
Fn(dev)630 5340 y Fu(Arra)m(y)i(T)-8 b(ec)m(h)31 b(LSI33K)f(RAID)h(con)
m(troller)f(b)s(oard.)p eop
%%Page: 109 111
109 110 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(109)150 299 y Fo(target)29
b(bug)g Fn(dev)630 408 y Fu(BUG)i(monitor,)f(running)e(on)i(a)h
(MVME187)h(\(m88k\))g(b)s(oard.)150 563 y Fo(target)d(cpu32bug)f
Fn(dev)630 673 y Fu(CPU32BUG)k(monitor,)e(running)d(on)k(a)f(CPU32)h
(\(M68K\))h(b)s(oard.)150 828 y Fo(target)d(dbug)g Fn(dev)630
937 y Fu(dBUG)i(R)m(OM)f(monitor)g(for)g(Motorola)i(ColdFire.)150
1092 y Fo(target)d(ddb)g Fn(dev)630 1202 y Fu(NEC's)h(DDB)i(monitor)d
(for)i(Mips)e(V)-8 b(r4300.)150 1357 y Fo(target)29 b(dink32)f
Fn(dev)630 1466 y Fu(DINK32)j(R)m(OM)g(monitor)f(for)g(P)m(o)m(w)m
(erPC.)150 1621 y Fo(target)f(e7000)g Fn(dev)630 1731
y Fu(E7000)j(em)m(ulator)f(for)f(Hitac)m(hi)g(H8)h(and)f(SH.)150
1886 y Fo(target)f(es1800)f Fn(dev)630 1995 y Fu(ES-1800)k(em)m(ulator)
e(for)h(M68K.)150 2150 y Fo(target)e(est)g Fn(dev)630
2260 y Fu(EST-300)i(ICE)f(monitor,)g(running)d(on)j(a)h(CPU32)g
(\(M68K\))h(b)s(oard.)150 2414 y Fo(target)d(hms)g Fn(dev)630
2524 y Fu(A)j(Hitac)m(hi)f(SH,)g(H8/300,)j(or)e(H8/500)i(b)s(oard,)d
(attac)m(hed)i(via)e(serial)f(line)g(to)i(y)m(our)g(host.)630
2634 y(Use)25 b(sp)s(ecial)f(commands)g Fo(device)f Fu(and)i
Fo(speed)e Fu(to)j(con)m(trol)f(the)g(serial)f(line)f(and)h(the)h(com-)
630 2743 y(m)m(unications)c(sp)s(eed)h(used.)38 b(See)23
b(Section)f(13.4.8)j([GDB)f(and)e(Hitac)m(hi)h(Micropro)s(cessors],)630
2853 y(page)31 b(133.)150 3008 y Fo(target)e(lsi)g Fn(dev)630
3117 y Fu(LSI)g(R)m(OM)i(monitor)f(for)g(Mips.)150 3272
y Fo(target)f(m32r)g Fn(dev)630 3382 y Fu(Mitsubishi)e(M32R/D)32
b(R)m(OM)f(monitor.)150 3537 y Fo(target)e(mips)g Fn(dev)630
3646 y Fu(IDT/SIM)h(R)m(OM)h(monitor)f(for)g(Mips.)150
3801 y Fo(target)f(mon960)f Fn(dev)630 3911 y Fu(MON960)k(monitor)e
(for)g(In)m(tel)g(i960.)150 4065 y Fo(target)f(nindy)g
Fn(devicename)630 4175 y Fu(An)g(In)m(tel)h(960)h(b)s(oard)e(con)m
(trolled)g(b)m(y)h(a)g(Nindy)e(Monitor.)40 b Fn(devicename)35
b Fu(is)29 b(the)h(name)g(of)630 4285 y(the)e(serial)e(device)i(to)g
(use)g(for)f(the)h(connection,)h(e.g.)40 b(`)p Fo(/dev/ttya)p
Fu('.)e(See)28 b(Section)g(13.4.2)630 4394 y([GDB)k(with)d(a)i(remote)g
(i960)g(\(Nindy\)],)f(page)h(126.)150 4549 y Fo(target)e(nrom)g
Fn(dev)630 4659 y Fu(NetR)m(OM)j(R)m(OM)e(em)m(ulator.)41
b(This)29 b(target)j(only)d(supp)s(orts)g(do)m(wnloading.)150
4814 y Fo(target)g(op50n)g Fn(dev)630 4923 y Fu(OP50N)i(monitor,)f
(running)e(on)i(an)g(OKI)g(HPP)-8 b(A)30 b(b)s(oard.)150
5078 y Fo(target)f(pmon)g Fn(dev)630 5188 y Fu(PMON)h(R)m(OM)h(monitor)
f(for)g(Mips.)150 5342 y Fo(target)f(ppcbug)f Fn(dev)p
eop
%%Page: 110 112
110 111 bop 150 -116 a Fu(110)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(target)g(ppcbug1)f Fn(dev)630 408 y Fu(PPCBUG)j(R)m(OM)f
(monitor)g(for)g(P)m(o)m(w)m(erPC.)150 565 y Fo(target)f(r3900)g
Fn(dev)630 675 y Fu(Densan)h(D)m(VE-R3900)k(R)m(OM)d(monitor)e(for)h(T)
-8 b(oshiba)30 b(R3900)i(Mips.)150 831 y Fo(target)d(rdi)g
Fn(dev)630 941 y Fu(ARM)i(Angel)f(monitor,)g(via)g(RDI)g(library)e(in)m
(terface.)150 1097 y Fo(target)h(rdp)g Fn(dev)630 1207
y Fu(ARM)i(Demon)g(monitor.)150 1363 y Fo(target)e(rom68k)f
Fn(dev)630 1473 y Fu(R)m(OM)j(68K)g(monitor,)f(running)d(on)j(an)h
(M68K)g(IDP)f(b)s(oard.)150 1630 y Fo(target)f(rombug)f
Fn(dev)630 1739 y Fu(R)m(OMBUG)k(R)m(OM)e(monitor)g(for)g(OS/9000.)150
1896 y Fo(target)f(sds)g Fn(dev)630 2005 y Fu(SDS)h(monitor,)g(running)
d(on)k(a)f(P)m(o)m(w)m(erPC)i(b)s(oard)d(\(suc)m(h)h(as)h(Motorola's)h
(ADS\).)150 2162 y Fo(target)d(sparclite)f Fn(dev)630
2271 y Fu(F)-8 b(ujitsu)26 b(sparclite)g(b)s(oards,)h(used)f(only)g
(for)h(the)h(purp)s(ose)d(of)i(loading.)39 b(Y)-8 b(ou)27
b(m)m(ust)g(use)g(an)630 2381 y(additional)34 b(command)i(to)h(debug)f
(the)g(program.)59 b(F)-8 b(or)37 b(example:)52 b(target)38
b(remote)f Fn(dev)630 2491 y Fu(using)29 b(GDB)i(standard)f(remote)h
(proto)s(col.)150 2647 y Fo(target)e(sh3)g Fn(dev)150
2780 y Fo(target)g(sh3e)g Fn(dev)630 2890 y Fu(Hitac)m(hi)h(SH-3)h(and)
f(SH-3E)g(target)i(systems.)150 3046 y Fo(target)d(st2000)f
Fn(dev)38 b(sp)s(eed)630 3156 y Fu(A)e(T)-8 b(andem)36
b(ST2000)i(phone)d(switc)m(h,)j(running)c(T)-8 b(andem's)36
b(STDBUG)g(proto)s(col.)59 b Fn(dev)630 3266 y Fu(is)45
b(the)g(name)h(of)g(the)f(device)h(attac)m(hed)h(to)g(the)e(ST2000)i
(serial)d(line;)52 b Fn(sp)s(eed)c Fu(is)d(the)630 3375
y(comm)m(unication)34 b(line)g(sp)s(eed.)53 b(The)34
b(argumen)m(ts)h(are)h(not)f(used)f(if)g(GDB)i(is)e(con\014gured)630
3485 y(to)e(connect)g(to)g(the)f(ST2000)h(using)e(TCP)g(or)h(T)-8
b(elnet.)43 b(See)31 b(Section)g(13.4.5)j([GDB)e(with)630
3594 y(a)f(T)-8 b(andem)30 b(ST2000],)i(page)f(129.)150
3751 y Fo(target)e(udi)g Fn(k)m(eyw)m(ord)630 3861 y
Fu(Remote)22 b(AMD29K)h(target,)i(using)19 b(the)j(AMD)g(UDI)f(proto)s
(col.)38 b(The)20 b Fn(k)m(eyw)m(ord)25 b Fu(argumen)m(t)630
3970 y(sp)s(eci\014es)37 b(whic)m(h)g(29K)i(b)s(oard)f(or)g(sim)m
(ulator)g(to)h(use.)65 b(See)38 b(Section)h(13.4.3)h([The)f(UDI)630
4080 y(proto)s(col)30 b(for)g(AMD29K],)j(page)e(127.)150
4236 y Fo(target)e(vxworks)f Fn(mac)m(hinename)630 4346
y Fu(A)k(VxW)-8 b(orks)32 b(system,)g(attac)m(hed)h(via)f(TCP/IP)-8
b(.)31 b(The)g(argumen)m(t)h Fn(mac)m(hinename)k Fu(is)31
b(the)630 4455 y(target)43 b(system's)f(mac)m(hine)f(name)h(or)f(IP)g
(address.)74 b(See)42 b(Section)f(13.4.6)j([GDB)f(and)630
4565 y(VxW)-8 b(orks],)32 b(page)f(130.)150 4722 y Fo(target)e(w89k)g
Fn(dev)630 4831 y Fu(W89K)i(monitor,)f(running)e(on)i(a)h(Win)m(b)s
(ond)d(HPP)-8 b(A)31 b(b)s(oard.)275 4988 y(Di\013eren)m(t)41
b(targets)h(are)f(a)m(v)-5 b(ailable)40 b(on)h(di\013eren)m(t)f
(con\014gurations)h(of)g(GDB;)h(y)m(our)f(con\014guration)150
5097 y(ma)m(y)31 b(ha)m(v)m(e)h(more)e(or)g(few)m(er)h(targets.)275
5230 y(Man)m(y)26 b(remote)h(targets)g(require)d(y)m(ou)i(to)h(do)m
(wnload)e(the)g(executable's)i(co)s(de)f(once)g(y)m(ou'v)m(e)h
(success-)150 5340 y(fully)h(established)h(a)h(connection.)p
eop
%%Page: 111 113
111 112 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(111)150 299 y Fo(load)29
b Fn(\014lename)630 408 y Fu(Dep)s(ending)34 b(on)i(what)f(remote)i
(debugging)e(facilities)f(are)i(con\014gured)f(in)m(to)h(GDB,)h(the)630
518 y Fo(load)26 b Fu(command)h(ma)m(y)h(b)s(e)f(a)m(v)-5
b(ailable.)39 b(Where)27 b(it)g(exists,)h(it)f(is)f(mean)m(t)i(to)g
(mak)m(e)h Fn(\014lename)630 628 y Fu(\(an)23 b(executable\))h(a)m(v)-5
b(ailable)22 b(for)g(debugging)g(on)h(the)g(remote)g(system|b)m(y)g(do)
m(wnloading,)630 737 y(or)33 b(dynamic)g(linking,)e(for)i(example.)50
b Fo(load)32 b Fu(also)h(records)h(the)f Fn(\014lename)38
b Fu(sym)m(b)s(ol)32 b(table)630 847 y(in)d(GDB,)j(lik)m(e)d(the)i
Fo(add-symbol-file)26 b Fu(command.)630 980 y(If)h(y)m(our)h(GDB)h(do)s
(es)e(not)h(ha)m(v)m(e)h(a)f Fo(load)e Fu(command,)i(attempting)g(to)h
(execute)g(it)e(gets)i(the)630 1090 y(error)h(message)h(\\)p
Fo(You)f(can't)f(do)h(that)f(when)h(your)f(target)f(is)i(...)o
Fu(")630 1223 y(The)h(\014le)g(is)g(loaded)g(at)h(whatev)m(er)g
(address)f(is)g(sp)s(eci\014ed)f(in)g(the)i(executable.)45
b(F)-8 b(or)33 b(some)630 1332 y(ob)5 b(ject)25 b(\014le)e(formats,)j
(y)m(ou)f(can)f(sp)s(ecify)f(the)h(load)g(address)f(when)g(y)m(ou)i
(link)d(the)i(program;)630 1442 y(for)30 b(other)h(formats,)g(lik)m(e)e
(a.out,)j(the)e(ob)5 b(ject)32 b(\014le)d(format)i(sp)s(eci\014es)e(a)i
(\014xed)e(address.)630 1575 y(On)f(VxW)-8 b(orks,)31
b Fo(load)d Fu(links)e Fn(\014lename)34 b Fu(dynamically)27
b(on)i(the)g(curren)m(t)g(target)h(system)g(as)630 1685
y(w)m(ell)f(as)i(adding)e(its)h(sym)m(b)s(ols)f(in)g(GDB.)630
1818 y(With)36 b(the)h(Nindy)e(in)m(terface)i(to)h(an)e(In)m(tel)h(960)
h(b)s(oard,)f Fo(load)f Fu(do)m(wnloads)f Fn(\014lename)41
b Fu(to)630 1928 y(the)31 b(960)g(as)g(w)m(ell)e(as)i(adding)e(its)h
(sym)m(b)s(ols)f(in)g(GDB.)630 2061 y(When)h(y)m(ou)h(select)g(remote)g
(debugging)e(to)j(a)e(Hitac)m(hi)h(SH,)f(H8/300,)j(or)d(H8/500)j(b)s
(oard)630 2170 y(\(see)41 b(Section)f(13.4.8)i([GDB)f(and)e(Hitac)m(hi)
h(Micropro)s(cessors],)i(page)f(133\),)j(the)c Fo(load)630
2280 y Fu(command)35 b(do)m(wnloads)f(y)m(our)i(program)f(to)h(the)f
(Hitac)m(hi)g(b)s(oard)g(and)f(also)h(op)s(ens)g(it)g(as)630
2390 y(the)c(curren)m(t)f(executable)h(target)h(for)e(GDB)h(on)g(y)m
(our)f(host)g(\(lik)m(e)g(the)h Fo(file)e Fu(command\).)630
2523 y Fo(load)g Fu(do)s(es)h(not)h(rep)s(eat)f(if)g(y)m(ou)g(press)
1982 2520 y Fj(h)p 2006 2467 151 4 v 2006 2523 a Fi(RET)p
2006 2538 V 2153 2520 a Fj(i)2213 2523 y Fu(again)g(after)h(using)e
(it.)150 2776 y Fs(13.3)68 b(Cho)t(osing)46 b(target)g(b)l(yte)f(order)
275 2968 y Fu(Some)27 b(t)m(yp)s(es)h(of)g(pro)s(cessors,)g(suc)m(h)g
(as)g(the)g(MIPS,)g(P)m(o)m(w)m(erPC,)h(and)e(Hitac)m(hi)g(SH,)h
(o\013er)g(the)g(abilit)m(y)150 3077 y(to)i(run)f(either)g(big-endian)e
(or)j(little-endian)d(b)m(yte)k(orders.)39 b(Usually)29
b(the)g(executable)i(or)e(sym)m(b)s(ol)g(will)150 3187
y(include)h(a)i(bit)f(to)i(designate)f(the)h(endian-ness,)e(and)g(y)m
(ou)i(will)c(not)j(need)g(to)h(w)m(orry)f(ab)s(out)f(whic)m(h)g(to)150
3296 y(use.)60 b(Ho)m(w)m(ev)m(er,)40 b(y)m(ou)d(ma)m(y)h(still)d
(\014nd)g(it)h(useful)f(to)j(adjust)e(GDB's)i(idea)e(of)h(pro)s(cessor)
f(endian-ness)150 3406 y(man)m(ually)-8 b(.)150 3610
y Fo(set)29 b(endian)g(big)630 3720 y Fu(Instruct)h(GDB)h(to)g(assume)f
(the)h(target)h(is)d(big-endian.)150 3877 y Fo(set)g(endian)g(little)
630 3986 y Fu(Instruct)h(GDB)h(to)g(assume)f(the)h(target)h(is)d
(little-endian.)150 4143 y Fo(set)g(endian)g(auto)630
4253 y Fu(Instruct)h(GDB)h(to)g(use)f(the)h(b)m(yte)g(order)f(asso)s
(ciated)h(with)e(the)h(executable.)150 4409 y Fo(show)f(endian)630
4519 y Fu(Displa)m(y)h(GDB's)h(curren)m(t)f(idea)g(of)h(the)f(target)i
(b)m(yte)f(order.)275 4676 y(Note)36 b(that)h(these)f(commands)f
(merely)g(adjust)g(in)m(terpretation)g(of)h(sym)m(b)s(olic)e(data)i(on)
g(the)g(host,)150 4786 y(and)30 b(that)h(they)f(ha)m(v)m(e)i
(absolutely)d(no)h(e\013ect)i(on)f(the)f(target)i(system.)150
5039 y Fs(13.4)68 b(Remote)47 b(debugging)275 5230 y
Fu(If)36 b(y)m(ou)h(are)g(trying)f(to)h(debug)f(a)i(program)e(running)e
(on)j(a)g(mac)m(hine)f(that)i(cannot)f(run)e(GDB)j(in)150
5340 y(the)j(usual)f(w)m(a)m(y)-8 b(,)45 b(it)c(is)f(often)h(useful)f
(to)h(use)g(remote)h(debugging.)72 b(F)-8 b(or)41 b(example,)j(y)m(ou)d
(migh)m(t)g(use)p eop
%%Page: 112 114
112 113 bop 150 -116 a Fu(112)2599 b(Debugging)31 b(with)e(GDB)150
299 y(remote)f(debugging)e(on)h(an)g(op)s(erating)f(system)h(k)m
(ernel,)g(or)g(on)g(a)h(small)d(system)i(whic)m(h)f(do)s(es)h(not)g(ha)
m(v)m(e)150 408 y(a)k(general)f(purp)s(ose)f(op)s(erating)h(system)g(p)
s(o)m(w)m(erful)f(enough)h(to)h(run)e(a)i(full-featured)d(debugger.)275
552 y(Some)f(con\014gurations)g(of)h(GDB)h(ha)m(v)m(e)g(sp)s(ecial)d
(serial)h(or)h(TCP/IP)f(in)m(terfaces)h(to)g(mak)m(e)h(this)e(w)m(ork)
150 662 y(with)32 b(particular)g(debugging)g(targets.)51
b(In)33 b(addition,)g(GDB)h(comes)h(with)d(a)h(generic)h(serial)e
(proto)s(col)150 772 y(\(sp)s(eci\014c)37 b(to)i(GDB,)h(but)d(not)h(sp)
s(eci\014c)f(to)i(an)m(y)g(particular)d(target)k(system\))e(whic)m(h)f
(y)m(ou)i(can)f(use)g(if)150 881 y(y)m(ou)27 b(write)e(the)i(remote)g
(stubs|the)e(co)s(de)i(that)f(runs)f(on)h(the)h(remote)g(system)f(to)h
(comm)m(unicate)g(with)150 991 y(GDB.)275 1135 y(Other)k(remote)i
(targets)g(ma)m(y)f(b)s(e)g(a)m(v)-5 b(ailable)31 b(in)g(y)m(our)g
(con\014guration)h(of)g(GDB;)h(use)e Fo(help)f(target)150
1244 y Fu(to)h(list)e(them.)150 1487 y Fk(13.4.1)63 b(The)41
b(GDB)g(remote)g(serial)g(proto)s(col)275 1689 y Fu(T)-8
b(o)32 b(debug)g(a)h(program)f(running)e(on)i(another)h(mac)m(hine)f
(\(the)h(debugging)e Fn(target)36 b Fu(mac)m(hine\),)e(y)m(ou)150
1799 y(m)m(ust)43 b(\014rst)f(arrange)i(for)f(all)f(the)h(usual)f
(prerequisites)f(for)i(the)g(program)g(to)h(run)d(b)m(y)i(itself.)78
b(F)-8 b(or)150 1908 y(example,)30 b(for)g(a)h(C)f(program,)h(y)m(ou)f
(need:)199 2052 y(1.)61 b(A)27 b(startup)g(routine)g(to)h(set)f(up)g
(the)g(C)g(run)m(time)f(en)m(vironmen)m(t;)i(these)g(usually)d(ha)m(v)m
(e)k(a)e(name)h(lik)m(e)330 2162 y(`)p Fo(crt0)p Fu('.)53
b(The)34 b(startup)g(routine)g(ma)m(y)h(b)s(e)f(supplied)d(b)m(y)j(y)m
(our)h(hardw)m(are)f(supplier,)f(or)h(y)m(ou)h(ma)m(y)330
2272 y(ha)m(v)m(e)d(to)f(write)e(y)m(our)i(o)m(wn.)199
2411 y(2.)61 b(Y)-8 b(ou)30 b(probably)e(need)i(a)g(C)g(subroutine)d
(library)h(to)i(supp)s(ort)e(y)m(our)i(program's)g(subroutine)e(calls,)
330 2520 y(notably)i(managing)g(input)e(and)i(output.)199
2660 y(3.)61 b(A)36 b(w)m(a)m(y)g(of)g(getting)g(y)m(our)f(program)g
(to)i(the)e(other)h(mac)m(hine|for)f(example,)i(a)e(do)m(wnload)g(pro-)
330 2769 y(gram.)52 b(These)34 b(are)g(often)h(supplied)c(b)m(y)j(the)g
(hardw)m(are)f(man)m(ufacturer,)i(but)f(y)m(ou)g(ma)m(y)h(ha)m(v)m(e)g
(to)330 2879 y(write)30 b(y)m(our)g(o)m(wn)g(from)g(hardw)m(are)g(do)s
(cumen)m(tation.)275 3052 y(The)h(next)h(step)g(is)g(to)g(arrange)h
(for)f(y)m(our)g(program)f(to)i(use)f(a)g(serial)f(p)s(ort)h(to)h(comm)
m(unicate)f(with)150 3162 y(the)c(mac)m(hine)f(where)h(GDB)g(is)f
(running)e(\(the)j Fn(host)i Fu(mac)m(hine\).)40 b(In)27
b(general)h(terms,)g(the)g(sc)m(heme)g(lo)s(oks)150 3271
y(lik)m(e)i(this:)150 3445 y Fr(On)i(the)h(host,)630
3555 y Fu(GDB)42 b(already)e(understands)f(ho)m(w)h(to)i(use)e(this)f
(proto)s(col;)46 b(when)40 b(ev)m(erything)g(else)h(is)630
3664 y(set)k(up,)h(y)m(ou)f(can)f(simply)d(use)j(the)g(`)p
Fo(target)29 b(remote)p Fu(')43 b(command)h(\(see)h(Chapter)e(13)630
3774 y([Sp)s(ecifying)28 b(a)j(Debugging)f(T)-8 b(arget],)32
b(page)f(107\).)150 3943 y Fr(On)h(the)h(tar)-5 b(get,)630
4052 y Fu(y)m(ou)27 b(m)m(ust)f(link)f(with)g(y)m(our)h(program)g(a)h
(few)g(sp)s(ecial-purp)s(ose)c(subroutines)h(that)k(imple-)630
4162 y(men)m(t)k(the)f(GDB)h(remote)g(serial)e(proto)s(col.)43
b(The)31 b(\014le)f(con)m(taining)g(these)i(subroutines)d(is)630
4271 y(called)h(a)g Fn(debugging)g(stub)p Fu(.)630 4411
y(On)23 b(certain)g(remote)h(targets,)j(y)m(ou)c(can)h(use)f(an)h
(auxiliary)d(program)i Fo(gdbserver)e Fu(instead)630
4520 y(of)28 b(linking)c(a)k(stub)e(in)m(to)i(y)m(our)f(program.)40
b(See)27 b(Section)h(13.4.1.5)i([Using)d(the)g Fo(gdbserver)630
4630 y Fu(program],)k(page)g(124,)h(for)e(details.)275
4803 y(The)i(debugging)g(stub)h(is)f(sp)s(eci\014c)g(to)i(the)g(arc)m
(hitecture)f(of)h(the)f(remote)h(mac)m(hine;)h(for)e(example,)150
4913 y(use)d(`)p Fo(sparc-stub.c)p Fu(')e(to)j(debug)e(programs)h(on)h
Ft(sp)-6 b(ar)n(c)28 b Fu(b)s(oards.)275 5057 y(These)i(w)m(orking)f
(remote)j(stubs)d(are)i(distributed)c(with)i(GDB:)150
5230 y Fo(i386-stub.c)630 5340 y Fu(F)-8 b(or)31 b(In)m(tel)f(386)i
(and)e(compatible)f(arc)m(hitectures.)p eop
%%Page: 113 115
113 114 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(113)150 299 y Fo(m68k-stub.c)630
408 y Fu(F)-8 b(or)31 b(Motorola)h(680x0)g(arc)m(hitectures.)150
555 y Fo(sh-stub.c)630 665 y Fu(F)-8 b(or)31 b(Hitac)m(hi)f(SH)g(arc)m
(hitectures.)150 811 y Fo(sparc-stub.c)630 921 y Fu(F)-8
b(or)31 b Ft(sp)-6 b(ar)n(c)29 b Fu(arc)m(hitectures.)150
1067 y Fo(sparcl-stub.c)630 1177 y Fu(F)-8 b(or)31 b(F)-8
b(ujitsu)29 b Ft(sp)-6 b(ar)n(clite)29 b Fu(arc)m(hitectures.)275
1323 y(The)g(`)p Fo(README)p Fu(')h(\014le)f(in)g(the)i(GDB)g
(distribution)c(ma)m(y)k(list)e(other)h(recen)m(tly)h(added)f(stubs.)
150 1528 y Fk(13.4.1.1)63 b(What)41 b(the)g(stub)g(can)f(do)i(for)f(y)m
(ou)275 1714 y Fu(The)29 b(debugging)h(stub)f(for)h(y)m(our)h(arc)m
(hitecture)g(supplies)c(these)k(three)g(subroutines:)150
1861 y Fo(set_debug_traps)630 1970 y Fu(This)c(routine)h(arranges)h
(for)g Fo(handle_exception)c Fu(to)k(run)f(when)g(y)m(our)h(program)g
(stops.)630 2080 y(Y)-8 b(ou)31 b(m)m(ust)f(call)g(this)f(subroutine)f
(explicitly)g(near)j(the)f(b)s(eginning)e(of)i(y)m(our)h(program.)150
2227 y Fo(handle_exception)630 2336 y Fu(This)i(is)h(the)i(cen)m(tral)f
(w)m(orkhorse,)i(but)d(y)m(our)h(program)g(nev)m(er)g(calls)g(it)f
(explicitly|the)630 2446 y(setup)c(co)s(de)h(arranges)f(for)g
Fo(handle_exception)c Fu(to)31 b(run)e(when)h(a)g(trap)h(is)e
(triggered.)630 2574 y Fo(handle_exception)36 b Fu(tak)m(es)42
b(con)m(trol)f(when)e(y)m(our)i(program)f(stops)g(during)f(execution)
630 2683 y(\(for)f(example,)i(on)e(a)g(breakp)s(oin)m(t\),)i(and)d
(mediates)h(comm)m(unications)f(with)g(GDB)i(on)630 2793
y(the)31 b(host)g(mac)m(hine.)42 b(This)29 b(is)h(where)g(the)h(comm)m
(unications)f(proto)s(col)h(is)f(implemen)m(ted;)630
2903 y Fo(handle_exception)h Fu(acts)37 b(as)f(the)h(GDB)g(represen)m
(tativ)m(e)f(on)g(the)g(target)i(mac)m(hine;)g(it)630
3012 y(b)s(egins)22 b(b)m(y)h(sending)e(summary)h(information)g(on)h
(the)g(state)h(of)g(y)m(our)f(program,)h(then)f(con-)630
3122 y(tin)m(ues)e(to)i(execute,)i(retrieving)c(and)h(transmitting)e
(an)m(y)j(information)d(GDB)j(needs,)h(un)m(til)630 3231
y(y)m(ou)29 b(execute)h(a)f(GDB)h(command)f(that)g(mak)m(es)h(y)m(our)e
(program)h(resume;)g(at)g(that)h(p)s(oin)m(t,)630 3341
y Fo(handle_exception)c Fu(returns)j(con)m(trol)i(to)g(y)m(our)f(o)m
(wn)h(co)s(de)f(on)h(the)f(target)i(mac)m(hine.)150 3487
y Fo(breakpoint)630 3597 y Fu(Use)e(this)e(auxiliary)f(subroutine)g(to)
j(mak)m(e)h(y)m(our)e(program)g(con)m(tain)h(a)g(breakp)s(oin)m(t.)39
b(De-)630 3707 y(p)s(ending)29 b(on)j(the)g(particular)f(situation,)g
(this)g(ma)m(y)h(b)s(e)g(the)g(only)f(w)m(a)m(y)i(for)e(GDB)i(to)g(get)
630 3816 y(con)m(trol.)40 b(F)-8 b(or)28 b(instance,)g(if)e(y)m(our)i
(target)g(mac)m(hine)f(has)h(some)f(sort)h(of)f(in)m(terrupt)f(button,)
630 3926 y(y)m(ou)35 b(w)m(on't)h(need)e(to)i(call)e(this;)i(pressing)d
(the)i(in)m(terrupt)e(button)i(transfers)f(con)m(trol)h(to)630
4035 y Fo(handle_exception)p Fu(|in)f(e\013ect,)45 b(to)c(GDB.)g(On)f
(some)g(mac)m(hines,)j(simply)38 b(receiving)630 4145
y(c)m(haracters)e(on)d(the)i(serial)d(p)s(ort)i(ma)m(y)h(also)f
(trigger)g(a)g(trap;)i(again,)f(in)e(that)i(situation,)630
4255 y(y)m(ou)k(don't)f(need)g(to)g(call)g Fo(breakpoint)d
Fu(from)j(y)m(our)g(o)m(wn)g(program|simply)e(running)630
4364 y(`)p Fo(target)29 b(remote)p Fu(')g(from)h(the)g(host)h(GDB)g
(session)f(gets)h(con)m(trol.)630 4492 y(Call)c Fo(breakpoint)f
Fu(if)i(none)g(of)h(these)g(is)e(true,)i(or)g(if)f(y)m(ou)g(simply)f(w)
m(an)m(t)i(to)g(mak)m(e)h(certain)630 4602 y(y)m(our)35
b(program)h(stops)f(at)h(a)g(predetermined)e(p)s(oin)m(t)g(for)h(the)h
(start)g(of)g(y)m(our)f(debugging)630 4711 y(session.)150
4916 y Fk(13.4.1.2)63 b(What)41 b(y)m(ou)g(m)m(ust)f(do)h(for)g(the)g
(stub)275 5102 y Fu(The)29 b(debugging)g(stubs)f(that)j(come)g(with)d
(GDB)j(are)f(set)h(up)d(for)i(a)g(particular)e(c)m(hip)h(arc)m
(hitecture,)150 5212 y(but)h(they)g(ha)m(v)m(e)i(no)e(information)f(ab)
s(out)h(the)g(rest)h(of)f(y)m(our)h(debugging)e(target)j(mac)m(hine.)
275 5340 y(First)d(of)i(all)e(y)m(ou)i(need)f(to)h(tell)f(the)g(stub)g
(ho)m(w)g(to)h(comm)m(unicate)g(with)e(the)i(serial)e(p)s(ort.)p
eop
%%Page: 114 116
114 115 bop 150 -116 a Fu(114)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(int)g(getDebugChar\(\))630 408 y Fu(W)-8 b(rite)28
b(this)f(subroutine)f(to)j(read)e(a)i(single)d(c)m(haracter)k(from)d
(the)h(serial)f(p)s(ort.)39 b(It)28 b(ma)m(y)h(b)s(e)630
518 y(iden)m(tical)k(to)h Fo(getchar)e Fu(for)h(y)m(our)h(target)h
(system;)h(a)e(di\013eren)m(t)f(name)h(is)f(used)g(to)h(allo)m(w)630
628 y(y)m(ou)d(to)g(distinguish)26 b(the)31 b(t)m(w)m(o)h(if)d(y)m(ou)i
(wish.)150 776 y Fo(void)e(putDebugChar\(int\))630 886
y Fu(W)-8 b(rite)33 b(this)f(subroutine)f(to)j(write)e(a)h(single)e(c)m
(haracter)k(to)f(the)f(serial)e(p)s(ort.)48 b(It)33 b(ma)m(y)h(b)s(e)
630 995 y(iden)m(tical)f(to)h Fo(putchar)e Fu(for)h(y)m(our)h(target)h
(system;)h(a)e(di\013eren)m(t)f(name)h(is)f(used)g(to)h(allo)m(w)630
1105 y(y)m(ou)d(to)g(distinguish)26 b(the)31 b(t)m(w)m(o)h(if)d(y)m(ou)
i(wish.)275 1272 y(If)h(y)m(ou)h(w)m(an)m(t)g(GDB)h(to)g(b)s(e)e(able)g
(to)i(stop)e(y)m(our)h(program)g(while)d(it)j(is)e(running,)g(y)m(ou)i
(need)g(to)g(use)150 1382 y(an)i(in)m(terrupt-driv)m(en)e(serial)h
(driv)m(er,)h(and)f(arrange)i(for)f(it)f(to)i(stop)f(when)g(it)f
(receiv)m(es)i(a)f Fo(^C)g Fu(\(`)p Fo(\\003)p Fu(',)150
1491 y(the)c(con)m(trol-C)h(c)m(haracter\).)46 b(That)31
b(is)f(the)i(c)m(haracter)g(whic)m(h)e(GDB)j(uses)e(to)h(tell)e(the)i
(remote)g(system)150 1601 y(to)f(stop.)275 1730 y(Getting)42
b(the)g(debugging)f(target)i(to)g(return)d(the)i(prop)s(er)f(status)h
(to)g(GDB)h(probably)d(requires)150 1840 y(c)m(hanges)j(to)h(the)e
(standard)g(stub;)48 b(one)43 b(quic)m(k)f(and)g(dirt)m(y)f(w)m(a)m(y)j
(is)d(to)i(just)f(execute)i(a)f(breakp)s(oin)m(t)150
1949 y(instruction)28 b(\(the)j(\\dirt)m(y")g(part)f(is)f(that)i(GDB)h
(rep)s(orts)d(a)i Fo(SIGTRAP)e Fu(instead)g(of)i(a)f
Fo(SIGINT)p Fu(\).)275 2078 y(Other)f(routines)h(y)m(ou)g(need)g(to)i
(supply)c(are:)150 2226 y Fo(void)h(exceptionHandler)d(\(int)j
Fn(exception)p 1767 2226 28 4 v 33 w(n)m(um)m(b)s(er)p
Fo(,)g(void)g(*)p Fn(exception)p 2824 2226 V 33 w(address)t
Fo(\))630 2336 y Fu(W)-8 b(rite)37 b(this)e(function)g(to)i(install)d
Fn(exception)p 2211 2336 V 33 w(address)39 b Fu(in)c(the)h(exception)g
(handling)e(ta-)630 2446 y(bles.)45 b(Y)-8 b(ou)32 b(need)g(to)h(do)f
(this)f(b)s(ecause)h(the)g(stub)g(do)s(es)f(not)i(ha)m(v)m(e)g(an)m(y)f
(w)m(a)m(y)h(of)g(kno)m(wing)630 2555 y(what)26 b(the)g(exception)g
(handling)d(tables)j(on)f(y)m(our)h(target)i(system)e(are)g(lik)m(e)f
(\(for)h(example,)630 2665 y(the)g(pro)s(cessor's)f(table)h(migh)m(t)f
(b)s(e)g(in)f Ft(r)n(om)p Fu(,)i(con)m(taining)f(en)m(tries)h(whic)m(h)
e(p)s(oin)m(t)h(to)h(a)g(table)630 2774 y(in)h Ft(ram)p
Fu(\).)40 b Fn(exception)p 1394 2774 V 33 w(n)m(um)m(b)s(er)34
b Fu(is)28 b(the)h(exception)g(n)m(um)m(b)s(er)e(whic)m(h)g(should)g(b)
s(e)h(c)m(hanged;)630 2884 y(its)40 b(meaning)g(is)g(arc)m
(hitecture-dep)s(enden)m(t)g(\(for)h(example,)i(di\013eren)m(t)d(n)m
(um)m(b)s(ers)f(migh)m(t)630 2993 y(represen)m(t)33 b(divide)d(b)m(y)j
(zero,)h(misaligned)c(access,)35 b(etc\).)48 b(When)33
b(this)e(exception)i(o)s(ccurs,)630 3103 y(con)m(trol)i(should)d(b)s(e)
i(transferred)f(directly)g(to)i Fn(exception)p 2658 3103
V 33 w(address)p Fu(,)g(and)f(the)g(pro)s(cessor)630
3213 y(state)26 b(\(stac)m(k,)i(registers,)f(and)d(so)h(on\))g(should)e
(b)s(e)i(just)f(as)h(it)g(is)f(when)g(a)h(pro)s(cessor)g(excep-)630
3322 y(tion)c(o)s(ccurs.)38 b(So)22 b(if)e(y)m(ou)i(w)m(an)m(t)h(to)g
(use)e(a)h(jump)f(instruction)e(to)k(reac)m(h)g Fn(exception)p
3403 3322 V 33 w(address)p Fu(,)630 3432 y(it)30 b(should)e(b)s(e)i(a)h
(simple)d(jump,)h(not)i(a)g(jump)d(to)k(subroutine.)630
3561 y(F)-8 b(or)31 b(the)f(386,)h Fn(exception)p 1521
3561 V 33 w(address)i Fu(should)28 b(b)s(e)h(installed)f(as)i(an)g(in)m
(terrupt)f(gate)i(so)f(that)630 3670 y(in)m(terrupts)g(are)i(mask)m(ed)
g(while)e(the)i(handler)d(runs.)43 b(The)32 b(gate)h(should)c(b)s(e)i
(at)i(privilege)630 3780 y(lev)m(el)e(0)h(\(the)g(most)g(privileged)d
(lev)m(el\).)44 b(The)31 b Ft(sp)-6 b(ar)n(c)30 b Fu(and)h(68k)h(stubs)
f(are)h(able)f(to)h(mask)630 3890 y(in)m(terrupts)d(themselv)m(es)h
(without)g(help)f(from)h Fo(exceptionHandler)p Fu(.)150
4038 y Fo(void)f(flush_i_cache\(\))630 4147 y Fu(\(sparc)i(and)f
(sparclite)g(only\))g(W)-8 b(rite)31 b(this)f(subroutine)f(to)i
(\015ush)e(the)i(instruction)e(cac)m(he,)630 4257 y(if)f(an)m(y)-8
b(,)31 b(on)e(y)m(our)g(target)h(mac)m(hine.)40 b(If)29
b(there)g(is)g(no)g(instruction)e(cac)m(he,)k(this)d(subroutine)630
4367 y(ma)m(y)j(b)s(e)f(a)g(no-op.)630 4495 y(On)35 b(target)i(mac)m
(hines)f(that)g(ha)m(v)m(e)h(instruction)d(cac)m(hes,)k(GDB)f(requires)
e(this)f(function)630 4605 y(to)d(mak)m(e)g(certain)g(that)g(the)f
(state)i(of)f(y)m(our)f(program)g(is)f(stable.)150 4753
y(Y)-8 b(ou)31 b(m)m(ust)f(also)g(mak)m(e)i(sure)d(this)h(library)e
(routine)h(is)h(a)m(v)-5 b(ailable:)150 4902 y Fo(void)29
b(*memset\(void)e(*,)j(int,)f(int\))630 5011 y Fu(This)g(is)h(the)h
(standard)f(library)e(function)i Fo(memset)f Fu(that)j(sets)f(an)g
(area)g(of)g(memory)g(to)h(a)630 5121 y(kno)m(wn)20 b(v)-5
b(alue.)37 b(If)21 b(y)m(ou)g(ha)m(v)m(e)h(one)g(of)f(the)g(free)g(v)m
(ersions)f(of)h Fo(libc.a)p Fu(,)h Fo(memset)d Fu(can)i(b)s(e)f(found)
630 5230 y(there;)35 b(otherwise,)e(y)m(ou)g(m)m(ust)g(either)g(obtain)
f(it)h(from)f(y)m(our)h(hardw)m(are)g(man)m(ufacturer,)630
5340 y(or)d(write)g(y)m(our)g(o)m(wn.)p eop
%%Page: 115 117
115 116 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(115)275 299 y(If)25
b(y)m(ou)h(do)g(not)g(use)g(the)g(GNU)g(C)g(compiler,)f(y)m(ou)h(ma)m
(y)h(need)f(other)g(standard)f(library)e(subroutines)150
408 y(as)31 b(w)m(ell;)f(this)g(v)-5 b(aries)31 b(from)f(one)h(stub)f
(to)i(another,)f(but)f(in)g(general)h(the)g(stubs)f(are)h(lik)m(ely)e
(to)j(use)f(an)m(y)150 518 y(of)g(the)f(common)h(library)d(subroutines)
g(whic)m(h)h Fo(gcc)g Fu(generates)j(as)f(inline)c(co)s(de.)150
731 y Fk(13.4.1.3)63 b(Putting)41 b(it)g(all)g(together)275
921 y Fu(In)29 b(summary)-8 b(,)30 b(when)f(y)m(our)i(program)f(is)f
(ready)i(to)g(debug,)f(y)m(ou)g(m)m(ust)h(follo)m(w)e(these)i(steps.)
199 1051 y(1.)61 b(Mak)m(e)33 b(sure)d(y)m(ou)i(ha)m(v)m(e)g(the)g
(supp)s(orting)d(lo)m(w-lev)m(el)i(routines)f(\(see)i(Section)f
(13.4.1.2)j([What)f(y)m(ou)330 1161 y(m)m(ust)d(do)h(for)f(the)g
(stub],)g(page)h(113\):)570 1286 y Fo(getDebugChar)p
Fu(,)c Fo(putDebugChar)p Fu(,)570 1390 y Fo(flush_i_cache)p
Fu(,)g Fo(memset)p Fu(,)i Fo(exceptionHandler)p Fu(.)199
1521 y(2.)61 b(Insert)30 b(these)h(lines)d(near)j(the)f(top)h(of)f(y)m
(our)h(program:)570 1646 y Fo(set_debug_traps\(\);)570
1750 y(breakpoint\(\);)199 1881 y Fu(3.)61 b(F)-8 b(or)35
b(the)g(680x0)h(stub)e(only)-8 b(,)35 b(y)m(ou)g(need)f(to)h(pro)m
(vide)e(a)i(v)-5 b(ariable)34 b(called)f Fo(exceptionHook)p
Fu(.)49 b(Nor-)330 1990 y(mally)29 b(y)m(ou)i(just)f(use:)570
2115 y Fo(void)47 b(\(*exceptionHook\)\(\))42 b(=)48
b(0;)330 2246 y Fu(but)21 b(if)f(b)s(efore)h(calling)g
Fo(set_debug_traps)p Fu(,)e(y)m(ou)j(set)g(it)f(to)h(p)s(oin)m(t)f(to)h
(a)g(function)e(in)g(y)m(our)i(program,)330 2356 y(that)33
b(function)e(is)h(called)g(when)f Fo(GDB)h Fu(con)m(tin)m(ues)h(after)g
(stopping)e(on)i(a)g(trap)f(\(for)h(example,)g(bus)330
2465 y(error\).)39 b(The)25 b(function)g(indicated)f(b)m(y)i
Fo(exceptionHook)c Fu(is)j(called)g(with)f(one)i(parameter:)39
b(an)26 b Fo(int)330 2575 y Fu(whic)m(h)j(is)h(the)g(exception)h(n)m
(um)m(b)s(er.)199 2706 y(4.)61 b(Compile)36 b(and)i(link)e(together:)57
b(y)m(our)38 b(program,)i(the)e(GDB)h(debugging)e(stub)h(for)f(y)m(our)
h(target)330 2816 y(arc)m(hitecture,)31 b(and)f(the)h(supp)s(orting)c
(subroutines.)199 2946 y(5.)61 b(Mak)m(e)41 b(sure)d(y)m(ou)h(ha)m(v)m
(e)h(a)g(serial)d(connection)j(b)s(et)m(w)m(een)f(y)m(our)g(target)i
(mac)m(hine)d(and)h(the)g(GDB)330 3056 y(host,)31 b(and)e(iden)m(tify)g
(the)i(serial)e(p)s(ort)h(on)g(the)h(host.)199 3187 y(6.)61
b(Do)m(wnload)26 b(y)m(our)g(program)g(to)h(y)m(our)f(target)h(mac)m
(hine)f(\(or)g(get)h(it)f(there)g(b)m(y)g(whatev)m(er)h(means)f(the)330
3297 y(man)m(ufacturer)k(pro)m(vides\),)g(and)g(start)h(it.)199
3428 y(7.)61 b(T)-8 b(o)24 b(start)g(remote)h(debugging,)f(run)e(GDB)j
(on)f(the)g(host)f(mac)m(hine,)i(and)f(sp)s(ecify)e(as)i(an)f
(executable)330 3537 y(\014le)34 b(the)i(program)e(that)i(is)e(running)
f(in)h(the)h(remote)h(mac)m(hine.)55 b(This)33 b(tells)h(GDB)i(ho)m(w)g
(to)f(\014nd)330 3647 y(y)m(our)30 b(program's)h(sym)m(b)s(ols)e(and)g
(the)i(con)m(ten)m(ts)h(of)f(its)e(pure)h(text.)330 3778
y(Then)24 b(establish)f(comm)m(unication)i(using)f(the)h
Fo(target)j(remote)c Fu(command.)38 b(Its)26 b(argumen)m(t)f(sp)s(ec-)
330 3887 y(i\014es)32 b(ho)m(w)g(to)i(comm)m(unicate)f(with)e(the)i
(target)h(mac)m(hine|either)e(via)g(a)h(devicename)g(attac)m(hed)330
3997 y(to)i(a)g(direct)f(serial)f(line,)h(or)g(a)h(TCP)e(p)s(ort)h
(\(usually)e(to)k(a)e(terminal)f(serv)m(er)i(whic)m(h)e(in)g(turn)g
(has)330 4106 y(a)j(serial)e(line)g(to)i(the)g(target\).)58
b(F)-8 b(or)36 b(example,)h(to)f(use)f(a)h(serial)e(line)g(connected)i
(to)g(the)g(device)330 4216 y(named)30 b(`)p Fo(/dev/ttyb)p
Fu(':)570 4341 y Fo(target)46 b(remote)g(/dev/ttyb)330
4472 y Fu(T)-8 b(o)36 b(use)f(a)h(TCP)f(connection,)i(use)f(an)f
(argumen)m(t)h(of)g(the)g(form)f Fn(host)r Fo(:port)p
Fu(.)55 b(F)-8 b(or)36 b(example,)h(to)330 4582 y(connect)31
b(to)g(p)s(ort)f(2828)i(on)f(a)f(terminal)f(serv)m(er)i(named)f
Fo(manyfarms)p Fu(:)570 4707 y Fo(target)46 b(remote)g(manyfarms:2828)
275 4859 y Fu(No)m(w)32 b(y)m(ou)g(can)g(use)g(all)f(the)h(usual)e
(commands)i(to)g(examine)g(and)f(c)m(hange)i(data)g(and)e(to)i(step)f
(and)150 4969 y(con)m(tin)m(ue)f(the)f(remote)h(program.)275
5099 y(T)-8 b(o)30 b(resume)g(the)h(remote)g(program)f(and)g(stop)g
(debugging)g(it,)g(use)g(the)h Fo(detach)d Fu(command.)275
5230 y(Whenev)m(er)34 b(GDB)g(is)f(w)m(aiting)g(for)g(the)h(remote)h
(program,)f(if)f(y)m(ou)h(t)m(yp)s(e)f(the)h(in)m(terrupt)e(c)m
(haracter)150 5340 y(\(often)411 5337 y Fj(h)p 435 5284
126 4 v 435 5340 a Fi(C-C)p 435 5355 V 557 5337 a Fj(i)587
5340 y Fu(\),)27 b(GDB)h(attempts)f(to)g(stop)g(the)g(program.)39
b(This)24 b(ma)m(y)j(or)g(ma)m(y)g(not)g(succeed,)g(dep)s(ending)p
eop
%%Page: 116 118
116 117 bop 150 -116 a Fu(116)2599 b(Debugging)31 b(with)e(GDB)150
299 y(in)38 b(part)h(on)h(the)f(hardw)m(are)g(and)g(the)h(serial)e
(driv)m(ers)g(the)i(remote)g(system)g(uses.)67 b(If)39
b(y)m(ou)h(t)m(yp)s(e)g(the)150 408 y(in)m(terrupt)29
b(c)m(haracter)j(once)f(again,)g(GDB)g(displa)m(ys)e(this)g(prompt:)390
538 y Fo(Interrupted)45 b(while)h(waiting)g(for)h(the)g(program.)390
642 y(Give)g(up)g(\(and)f(stop)h(debugging)e(it\)?)95
b(\(y)47 b(or)g(n\))275 778 y Fu(If)28 b(y)m(ou)i(t)m(yp)s(e)g
Fl(y)p Fu(,)f(GDB)i(abandons)d(the)i(remote)g(debugging)e(session.)40
b(\(If)29 b(y)m(ou)h(decide)e(y)m(ou)i(w)m(an)m(t)g(to)150
888 y(try)k(again)g(later,)g(y)m(ou)h(can)f(use)f(`)p
Fo(target)c(remote)p Fu(')j(again)i(to)h(connect)g(once)f(more.\))52
b(If)33 b(y)m(ou)h(t)m(yp)s(e)g Fl(n)p Fu(,)150 997 y(GDB)d(go)s(es)g
(bac)m(k)h(to)f(w)m(aiting.)150 1224 y Fk(13.4.1.4)63
b(Comm)m(unication)40 b(proto)s(col)275 1418 y Fu(The)k(stub)f(\014les)
h(pro)m(vided)f(with)g(GDB)j(implemen)m(t)d(the)i(target)h(side)d(of)i
(the)f(comm)m(unication)150 1527 y(proto)s(col,)33 b(and)f(the)g(GDB)i
(side)d(is)h(implemen)m(ted)e(in)h(the)i(GDB)g(source)g(\014le)e(`)p
Fo(remote.c)p Fu('.)45 b(Normally)-8 b(,)150 1637 y(y)m(ou)33
b(can)f(simply)e(allo)m(w)i(these)g(subroutines)e(to)j(comm)m(unicate,)
h(and)e(ignore)f(the)i(details.)45 b(\(If)32 b(y)m(ou're)150
1747 y(implemen)m(ting)39 b(y)m(our)h(o)m(wn)h(stub)f(\014le,)j(y)m(ou)
e(can)h(still)c(ignore)j(the)g(details:)61 b(start)41
b(with)f(one)h(of)g(the)150 1856 y(existing)26 b(stub)h(\014les.)39
b(`)p Fo(sparc-stub.c)p Fu(')24 b(is)j(the)h(b)s(est)f(organized,)h
(and)f(therefore)h(the)f(easiest)h(to)g(read.\))275 1992
y(Ho)m(w)m(ev)m(er,)e(there)c(ma)m(y)h(b)s(e)e(o)s(ccasions)i(when)e(y)
m(ou)h(need)g(to)h(kno)m(w)f(something)g(ab)s(out)g(the)g(proto)s(col|)
150 2102 y(for)34 b(example,)i(if)d(there)i(is)f(only)g(one)g(serial)g
(p)s(ort)g(to)h(y)m(our)g(target)h(mac)m(hine,)f(y)m(ou)g(migh)m(t)g(w)
m(an)m(t)g(y)m(our)150 2211 y(program)30 b(to)h(do)g(something)e(sp)s
(ecial)g(if)h(it)g(recognizes)h(a)f(pac)m(k)m(et)j(mean)m(t)e(for)f
(GDB.)275 2347 y(In)e(the)i(examples)f(b)s(elo)m(w,)h(`)p
Fo(<-)p Fu(')f(and)g(`)p Fo(->)p Fu(')h(are)g(used)e(to)j(indicate)d
(transmitted)h(and)g(receiv)m(ed)h(data)150 2457 y(resp)s(ectfully)-8
b(.)275 2592 y(All)30 b(GDB)i(commands)f(and)g(resp)s(onses)g(\(other)h
(than)f(ac)m(kno)m(wledgmen)m(ts\))i(are)f(sen)m(t)g(as)g(a)g
Fn(pac)m(k)m(et)p Fu(.)150 2702 y(A)43 b Fn(pac)m(k)m(et)j
Fu(is)c(in)m(tro)s(duced)f(with)g(the)i(c)m(haracter)h(`)p
Fo($)p Fu(',)i(this)c(is)f(follo)m(w)m(ed)i(b)m(y)f(an)h(optional)e(t)m
(w)m(o-digit)150 2811 y Fn(sequence-id)30 b Fu(and)c(the)h(c)m
(haracter)i(`)p Fo(:)p Fu(',)e(the)g(actual)h Fn(pac)m(k)m(et-data)p
Fu(,)i(and)d(the)g(terminating)e(c)m(haracter)k(`)p Fo(#)p
Fu(')150 2921 y(follo)m(w)m(ed)h(b)m(y)g(a)h(t)m(w)m(o-digit)g
Fn(c)m(hec)m(ksum)p Fu(:)390 3051 y Fo($)p Fn(pac)m(k)m(et-data)p
Fo(#)p Fn(c)m(hec)m(ksum)150 3187 y Fu(or,)g(with)e(the)h(optional)g
Fn(sequence-id)t Fu(:)390 3317 y Fo($)p Fn(sequence-id)t
Fo(:)p Fn(pac)m(k)m(et-data)p Fo(#)p Fn(c)m(hec)m(ksum)150
3453 y Fu(The)h(t)m(w)m(o-digit)h Fn(c)m(hec)m(ksum)h
Fu(is)e(computed)g(as)h(the)g(mo)s(dulo)e(256)j(sum)e(of)h(all)e(c)m
(haracters)j(b)s(et)m(w)m(een)g(the)150 3562 y(leading)g(`)p
Fo($)p Fu(')i(and)f(the)h(trailing)e(`)p Fo(#)p Fu(')i(\(that)g
(consisting)f(of)h(b)s(oth)f(the)g(optional)g Fn(sequence-id)t
Fo(:)g Fu(and)g(the)150 3672 y(actual)d Fn(pac)m(k)m(et-data)p
Fu(\).)150 3808 y(The)38 b(t)m(w)m(o-digit)h Fn(sequence-id)p
Fu(,)i(when)d(presen)m(t,)j(is)c(returned)h(with)f(the)i(ac)m(kno)m
(wledgmen)m(t.)67 b(Bey)m(ond)150 3917 y(that)31 b(its)f(meaning)f(is)h
(p)s(o)s(orly)e(de\014ned.)40 b(GDB)31 b(is)f(not)g(kno)m(wn)g(to)h
(output)f Fn(sequence-id)t Fu(s.)275 4053 y(When)24 b(either)h(the)g
(host)g(or)g(the)g(target)i(mac)m(hine)e(receiv)m(es)g(a)h(pac)m(k)m
(et,)i(the)d(\014rst)f(resp)s(onse)h(exp)s(ected)150
4163 y(is)30 b(an)g(ac)m(kno)m(wledgmen)m(t:)42 b(either)30
b(`)p Fo(+)p Fu(')h(\(to)h(indicate)d(the)i(pac)m(k)-5
b(age)33 b(w)m(as)d(receiv)m(ed)h(correctly\))h(or)e(`)p
Fo(-)p Fu(')h(\(to)150 4272 y(request)f(retransmission\):)390
4402 y Fo(<-)47 b($)p Fn(pac)m(k)m(et-data)p Fo(#)p Fn(c)m(hec)m(ksum)
390 4506 y Fo(->)g(+)150 4642 y Fu(If)31 b(the)g(receiv)m(ed)h(pac)m(k)
m(et)h(included)28 b(a)k Fn(sequence-id)i Fu(than)d(that)h(is)e(app)s
(ended)f(to)j(a)g(p)s(ositiv)m(e)e(ac)m(kno)m(wl-)150
4751 y(edgmen)m(t:)390 4881 y Fo(<-)47 b($)p Fn(sequence-id)t
Fo(:)p Fn(pac)m(k)m(et-data)p Fo(#)p Fn(c)m(hec)m(ksum)390
4985 y Fo(->)g(+)p Fn(sequence-id)275 5121 y Fu(The)31
b(host)i(\(GDB\))h(sends)d Fn(command)t Fu(s,)h(and)g(the)h(target)g
(\(the)g(debugging)f(stub)f(incorp)s(orated)g(in)150
5230 y(y)m(our)f(program\))h(sends)e(a)i Fn(resp)s(onse)p
Fu(.)40 b(In)29 b(the)i(case)g(of)g(step)f(and)g(con)m(tin)m(ue)h
Fn(command)t Fu(s,)e(the)i(resp)s(onse)150 5340 y(is)e(only)h(sen)m(t)h
(when)e(the)i(op)s(eration)f(has)g(completed)g(\(the)h(target)h(has)e
(again)g(stopp)s(ed\).)p eop
%%Page: 117 119
117 118 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(117)275 299 y Fn(pac)m(k)m
(et-data)40 b Fu(consists)d(of)g(a)h(sequence)f(of)h(c)m(haracters)g
(with)e(the)i(exception)f(of)h(`)p Fo(#)p Fu(')f(and)g(`)p
Fo($)p Fu(')g(\(see)150 408 y(`)p Fo(X)p Fu(')c(pac)m(k)m(et)i(for)e
(an)g(exception\).)49 b(`)p Fo(:)p Fu(')34 b(can)f(not)g(app)s(ear)g
(as)g(the)g(third)f(c)m(haracter)i(in)e(a)i(pac)m(k)m(et.)50
b(Fields)150 518 y(within)29 b(the)j(pac)m(k)m(et)h(should)d(b)s(e)h
(separated)h(using)e(`)p Fo(,)p Fu(')i(and)f(`)p Fo(;)p
Fu(')h(\(unfortunately)e(some)i(pac)m(k)m(ets)i(c)m(hose)150
628 y(to)28 b(use)e(`)p Fo(:)p Fu('\).)40 b(Except)27
b(where)g(otherwise)f(noted)h(all)f(n)m(um)m(b)s(ers)f(are)i(represen)m
(ted)g(in)f(HEX)h(with)e(leading)150 737 y(zeros)31 b(suppressed.)275
891 y(Resp)s(onse)40 b Fn(data)h Fu(can)g(b)s(e)f(run-length)f(enco)s
(ded)i(to)g(sa)m(v)m(e)i(space.)72 b(A)41 b(`)p Fo(*)p
Fu(')g(means)f(that)i(the)f(next)150 1000 y(c)m(haracter)24
b(is)e(an)h(ASCI)s(I)e(enco)s(ding)h(giving)g(a)h(rep)s(eat)g(coun)m(t)
h(whic)m(h)d(stands)i(for)f(that)i(man)m(y)f(rep)s(etitions)150
1110 y(of)e(the)g(c)m(haracter)h(preceding)e(the)h(`)p
Fo(*)p Fu('.)38 b(The)20 b(enco)s(ding)g(is)g Fo(n+29)p
Fu(,)h(yielding)e(a)i(prin)m(table)e(c)m(haracter)j(where)150
1220 y Fo(n)30 b(>=3)g Fu(\(whic)m(h)f(is)g(where)h(rle)g(starts)h(to)g
(win\).)39 b(Don't)31 b(use)g(an)f Fo(n)g(>)g(126)p Fu(.)275
1373 y(So:)390 1521 y Fo("0*)47 b(")150 1675 y Fu(means)30
b(the)h(same)g(as)f Fo(")p Fu(0000)p Fo(")p Fu(.)275
1828 y(The)35 b(error)h(resp)s(onse,)h(returned)f(for)g(some)h(pac)m(k)
m(ets)h(includes)c(a)i(t)m(w)m(o)i(c)m(haracter)g(error)e(n)m(um)m(b)s
(er.)150 1938 y(That)30 b(n)m(um)m(b)s(er)f(is)h(not)g(w)m(ell)g
(de\014ned.)275 2092 y(F)-8 b(or)40 b(an)m(y)h Fn(command)i
Fu(not)d(supp)s(orted)e(b)m(y)i(the)g(stub,)i(an)e(empt)m(y)g(resp)s
(onse)g(\(`)p Fo($#00)p Fu('\))g(should)e(b)s(e)150 2201
y(returned.)h(That)29 b(w)m(a)m(y)g(it)f(is)g(p)s(ossible)e(to)k
(extend)e(the)h(proto)s(col.)40 b(A)29 b(new)m(er)g(GDB)g(can)g(tell)f
(if)g(a)h(pac)m(k)m(et)150 2311 y(is)g(supp)s(orted)g(based)h(on)g(the)
h(resp)s(onse.)275 2464 y(Belo)m(w)45 b(is)e(a)i(complete)g(list)e(of)i
(all)e(curren)m(tly)h(de\014ned)f Fn(command)t Fu(s)h(and)f(their)h
(corresp)s(onding)150 2574 y(resp)s(onse)29 b Fn(data)p
Fu(:)150 2728 y(P)m(ac)m(k)m(et)919 b(Request)763 b(Description)150
2898 y(extended)30 b(ops)g Fr(\(optional\))242 b Fo(!)1032
b Fu(Use)50 b(the)f(extended)h(remote)g(proto-)2410 3007
y(col.)d(Stic)m(ky)32 b({)h(only)e(needs)h(to)i(b)s(e)d(set)2410
3117 y(once.)39 b(The)23 b(extended)h(remote)h(proto-)2410
3227 y(col)30 b(supp)s(ort)f(the)h(`)p Fo(R)p Fu(')h(pac)m(k)m(et.)1330
3345 y(reply)e(`')800 b(Stubs)39 b(that)i(supp)s(ort)e(the)i(extended)
2410 3455 y(remote)48 b(proto)s(col)f(return)e(`')j(whic)m(h,)2410
3565 y(unfortunately)-8 b(,)46 b(is)d(iden)m(tical)f(to)j(the)2410
3674 y(resp)s(onse)i(returned)g(b)m(y)i(stubs)e(that)2410
3784 y(do)59 b(not)g(supp)s(ort)e(proto)s(col)i(exten-)2410
3893 y(sions.)150 4064 y(last)30 b(signal)779 b Fo(?)1032
b Fu(Reply)26 b(the)i(curren)m(t)f(reason)h(for)g(stop-)2410
4173 y(ping.)45 b(This)30 b(is)h(the)i(same)f(reply)f(as)i(is)2410
4283 y(generated)j(for)f(step)g(or)g(con)m(t)i(:)50 b
Fo(S)p Fn(AA)2410 4392 y Fu(where)30 b Fn(AA)g Fu(is)g(the)g(signal)f
(n)m(um)m(b)s(er.)150 4562 y(reserv)m(ed)856 b Fo(a)1032
b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150 4733 y(set)d(program)f
(argumen)m(ts)g Fm(\(re-)150 4842 y(serv)m(ed\))31 b
Fr(\(optional\))1330 4733 y Fo(A)p Fn(arglen)p Fo(,)p
Fn(argn)m(um)p Fo(,)p Fn(arg)8 b Fo(,...)66 b Fu(Initialized)44
b(`)p Fo(argv[])p Fu(')i(arra)m(y)h(passed)2410 4842
y(in)m(to)31 b(program.)43 b Fn(arglen)31 b Fu(sp)s(eci\014es)f(the)
2410 4952 y(n)m(um)m(b)s(er)48 b(of)i(b)m(ytes)g(in)e(the)h(hex)h(en-)
2410 5061 y(co)s(ded)30 b(b)m(yte)h(stream)g Fn(arg)p
Fu(.)1330 5180 y(reply)e Fo(OK)1330 5290 y Fu(reply)g
Fo(E)p Fn(NN)p eop
%%Page: 118 120
118 119 bop 150 -116 a Fu(118)2599 b(Debugging)31 b(with)e(GDB)150
299 y(set)i(baud)e Fm(\(deprecated\))304 b Fo(b)p Fn(baud)834
b Fu(Change)53 b(the)g(serial)f(line)g(sp)s(eed)g(to)2410
408 y Fn(baud)p Fu(.)39 b(JTC:)30 b Fr(When)i(do)-5 b(es)34
b(the)f(tr)-5 b(ans-)2410 518 y(p)g(ort)54 b(layer)f(state)g(change?)
102 b(When)2410 628 y(it's)58 b(r)-5 b(e)g(c)g(eive)g(d,)66
b(or)59 b(after)g(the)g(A)n(CK)2410 737 y(is)g(tr)-5
b(ansmitte)g(d.)124 b(In)60 b(either)f(c)-5 b(ase,)2410
847 y(ther)g(e)26 b(ar)-5 b(e)27 b(pr)-5 b(oblems)28
b(if)d(the)i(c)-5 b(ommand)2410 956 y(or)48 b(the)g(acknow)5
b(le)-5 b(dgment)49 b(p)-5 b(acket)48 b(is)2410 1066
y(dr)-5 b(opp)g(e)g(d.)109 b Fu(Stan:)84 b Fr(If)52 b(p)-5
b(e)g(ople)54 b(r)-5 b(e)g(al)5 b(ly)2410 1176 y(wante)-5
b(d)32 b(to)e(add)i(something)f(like)f(this,)2410 1285
y(and)55 b(get)g(it)g(working)g(for)h(the)f(\014rst)2410
1395 y(time,)k(they)54 b(ought)g(to)g(mo)-5 b(dify)55
b(ser-)2410 1504 y(unix.c)23 b(to)h(send)g(some)g(kind)g(of)g(out-of-)
2410 1614 y(b)-5 b(and)39 b(message)f(to)g(a)g(sp)-5
b(e)g(cial)5 b(ly-setup)2410 1724 y(stub)45 b(and)h(have)f(the)h
(switch)g(happ)-5 b(en)2410 1833 y Fo(")p Fr(in)27 b(b)-5
b(etwe)g(en)p Fo(")28 b Fr(p)-5 b(ackets,)29 b(so)f(that)h(fr)-5
b(om)2410 1943 y(r)g(emote)58 b(pr)-5 b(oto)g(c)g(ol's)61
b(p)-5 b(oint)59 b(of)f(view,)2410 2052 y(nothing)33
b(actual)5 b(ly)34 b(happ)-5 b(ene)g(d.)150 2222 y Fu(set)21
b(breakp)s(oin)m(t)e Fm(\(deprecated\))94 b Fo(B)p Fn(addr)p
Fu(,)p Fn(mo)s(de)609 b Fu(Set)41 b(\()p Fn(mo)s(de)46
b Fu(is)40 b(`)p Fo(S)p Fu('\))i(or)f(clear)g(\()p Fn(mo)s(de)2410
2332 y Fu(is)31 b(`)p Fo(C)p Fu('\))i(a)g(breakp)s(oin)m(t)e(at)i
Fn(addr)p Fu(.)46 b Fr(This)2410 2442 y(has)26 b(b)-5
b(e)g(en)25 b(r)-5 b(eplac)g(e)g(d)28 b(by)c(the)i(`)p
Fo(Z)p Fr(')e(and)j(`)p Fo(z)p Fr(')2410 2551 y(p)-5
b(ackets.)150 2721 y Fu(con)m(tin)m(ue)847 b Fo(c)p Fn(addr)i(addr)63
b Fu(is)56 b(address)h(to)h(resume.)121 b(If)2410 2831
y Fn(addr)27 b Fu(is)22 b(omitted,)i(resume)d(at)i(curren)m(t)2410
2941 y(address.)1330 3059 y(reply)879 b(see)31 b(b)s(elo)m(w)150
3230 y(con)m(tin)m(ue)60 b(with)f(signal)f Fr(\(op-)150
3339 y(tional\))1330 3230 y Fo(C)p Fn(sig)8 b Fo(;)p
Fn(addr)686 b Fu(Con)m(tin)m(ue)30 b(with)f(signal)g
Fn(sig)38 b Fu(\(hex)30 b(sig-)2410 3339 y(nal)g(n)m(um)m(b)s(er\).)42
b(If)30 b Fo(;)p Fn(addr)37 b Fu(is)30 b(omitted,)2410
3449 y(resume)f(at)j(same)e(address.)1330 3567 y(reply)879
b(see)31 b(b)s(elo)m(w)150 3738 y(toggle)h(debug)d Fr(\(optional\))255
b Fo(d)1032 b Fu(toggle)39 b(debug)e(\015ag)h(\(see)h(386)g(&)e(68k)
2410 3847 y(stubs\))150 4017 y(detac)m(h)31 b Fr(\(optional\))500
b Fo(D)1032 b Fu(Reply)29 b(OK.)150 4188 y(reserv)m(ed)856
b Fo(e)1032 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150
4358 y(reserv)m(ed)856 b Fo(E)1032 b Fu(Reserv)m(ed)31
b(for)f(future)f(use)150 4528 y(reserv)m(ed)856 b Fo(f)1032
b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150 4698 y(reserv)m(ed)856
b Fo(F)1032 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150
4868 y(read)h(registers)648 b Fo(g)1032 b Fu(Read)30
b(general)h(registers.)p eop
%%Page: 119 121
119 120 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(119)1330 299 y(reply)29
b Fn(XX...)639 b Fu(Eac)m(h)74 b(b)m(yte)g(of)g(register)g(data)g(is)
2410 408 y(describ)s(ed)85 b(b)m(y)i(t)m(w)m(o)i(hex)e(digits.)2410
518 y(The)51 b(b)m(ytes)h(with)e(the)i(register)g(are)2410
628 y(transmitted)69 b(in)f(target)j(b)m(yte)g(or-)2410
737 y(der.)120 b(The)57 b(size)g(of)g(eac)m(h)h(register)2410
847 y(and)42 b(their)g(p)s(osition)f(within)f(the)j(`)p
Fo(g)p Fu(')2410 956 y Fn(pac)m(k)m(et)29 b Fu(is)24
b(determined)f(b)m(y)i(the)h Fn(REG-)2410 1066 y(ISTER)p
2694 1066 28 4 v 31 w(RA)-10 b(W)p 2943 1066 V 33 w(SIZE)61
b Fu(and)55 b Fn(REGIS-)2410 1176 y(TER)p 2610 1176 V
32 w(NAME)36 b Fu(macros.)1330 1294 y Fo(E)p Fn(NN)896
b Fu(for)30 b(an)g(error.)150 1465 y(write)g(regs)790
b Fo(G)p Fn(XX...)821 b Fu(See)54 b(`)p Fo(g)p Fu(')f(for)h(a)g
(description)e(of)i(the)2410 1574 y Fn(XX...)41 b Fu(data.)1330
1693 y(reply)29 b Fo(OK)754 b Fu(for)30 b(success)1330
1802 y(reply)f Fo(E)p Fn(NN)666 b Fu(for)30 b(an)g(error)150
1973 y(reserv)m(ed)856 b Fo(h)1032 b Fu(Reserv)m(ed)31
b(for)f(future)f(use)150 2143 y(set)i(thread)f Fr(\(optional\))360
b Fo(H)p Fn(c)6 b(t...)876 b Fu(Set)40 b(thread)h(for)f(subsequen)m(t)g
(op)s(era-)2410 2252 y(tions.)62 b Fn(c)43 b Fu(=)38
b(`)p Fo(c)p Fu(')f(for)h(thread)f(used)g(in)2410 2362
y(step)h(and)f(con)m(tin)m(ue;)42 b Fn(t...)65 b Fu(can)38
b(b)s(e)f(-1)2410 2472 y(for)31 b(all)g(threads.)45 b
Fn(c)37 b Fu(=)32 b(`)p Fo(g)p Fu(')g(for)f(thread)2410
2581 y(used)j(in)g(other)h(op)s(erations.)54 b(If)35
b(zero,)2410 2691 y(pic)m(k)30 b(a)g(thread,)h(an)m(y)f(thread.)1330
2809 y(reply)f Fo(OK)754 b Fu(for)30 b(success)1330 2919
y(reply)f Fo(E)p Fn(NN)666 b Fu(for)30 b(an)g(error)150
3089 y(cycle)98 b(step)g Fm(\(draft\))g Fr(\(op-)150
3199 y(tional\))1330 3089 y Fo(i)p Fn(addr)7 b Fo(,)p
Fn(nnn)641 b Fu(Step)40 b(the)h(remote)g(target)i(b)m(y)d(a)h(sin-)2410
3199 y(gle)27 b(clo)s(c)m(k)i(cycle.)40 b(If)27 b Fo(,)p
Fn(nnn)f Fu(is)h(presen)m(t,)2410 3308 y(cycle)40 b(step)f
Fn(nnn)g Fu(cycles.)68 b(If)40 b Fn(addr)45 b Fu(is)2410
3418 y(presen)m(t,)24 b(cycle)g(step)f(starting)g(at)g(that)2410
3528 y(address.)150 3698 y(signal)42 b(then)h(cycle)g(step)g
Fm(\(re-)150 3807 y(serv)m(ed\))31 b Fr(\(optional\))1330
3698 y Fo(I)1032 b Fu(See)48 b(`)p Fo(i)p Fu(')g(and)f(`)p
Fo(S)p Fu(')h(for)g(lik)m(ely)e(syn)m(tax)2410 3807 y(and)29
b(seman)m(tics.)150 3978 y(reserv)m(ed)856 b Fo(j)1032
b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150 4148 y(reserv)m(ed)856
b Fo(J)1032 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150
4318 y(kill)f(request)i Fr(\(optional\))320 b Fo(k)150
4488 y Fu(reserv)m(ed)856 b Fo(l)1032 b Fu(Reserv)m(ed)31
b(for)f(future)f(use)150 4658 y(reserv)m(ed)856 b Fo(L)1032
b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150 4829 y(read)h(memory)657
b Fo(m)p Fn(addr)7 b Fo(,)p Fn(length)546 b Fu(Read)72
b Fn(length)f Fu(b)m(ytes)i(of)f(memory)2410 4938 y(starting)30
b(at)h(address)e Fn(addr)p Fu(.)1330 5057 y(reply)g Fn(XX...)639
b(XX...)73 b Fu(is)40 b(mem)g(con)m(ten)m(ts.)74 b(Can)41
b(b)s(e)2410 5166 y(few)m(er)30 b(b)m(ytes)h(than)g(requested)f(if)f
(able)2410 5276 y(to)i(read)f(only)g(part)g(of)g(the)h(data.)p
eop
%%Page: 120 122
120 121 bop 150 -116 a Fu(120)2599 b(Debugging)31 b(with)e(GDB)1330
299 y(reply)g Fo(E)p Fn(NN)666 b(NN)40 b Fu(is)30 b(errno)150
469 y(write)g(mem)755 b Fo(M)p Fn(addr)p Fu(,)p Fn(length)p
Fo(:)p Fn(XX...)317 b Fu(W)-8 b(rite)67 b Fn(length)g
Fu(b)m(ytes)h(of)f(memory)2410 579 y(starting)30 b(at)i(address)e
Fn(addr)p Fu(.)41 b Fn(XX...)i Fu(is)2410 688 y(the)30
b(data.)1330 807 y(reply)f Fo(OK)754 b Fu(for)30 b(success)1330
917 y(reply)f Fo(E)p Fn(NN)666 b Fu(for)25 b(an)h(error)f(\(this)g
(includes)e(the)j(case)2410 1026 y(where)41 b(only)g(part)h(of)g(the)g
(data)h(w)m(as)2410 1136 y(written\).)150 1306 y(reserv)m(ed)856
b Fo(n)1032 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150
1476 y(reserv)m(ed)856 b Fo(N)1032 b Fu(Reserv)m(ed)31
b(for)f(future)f(use)150 1646 y(reserv)m(ed)856 b Fo(o)1032
b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150 1817 y(reserv)m(ed)856
b Fo(O)1032 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150
1987 y(read)h(reg)h Fm(\(reserv)m(ed\))420 b Fo(p)p Fn(n...)906
b Fu(See)30 b(write)g(register.)1330 2096 y(return)f
Fn(r....)666 b Fu(The)27 b(hex)h(enco)s(ded)g(v)-5 b(alue)28
b(of)g(the)g(reg-)2410 2206 y(ister)h(in)g(target)j(b)m(yte)f(order.)
150 2376 y(write)f(reg)g Fr(\(optional\))406 b Fo(P)p
Fn(n...)p Fo(=)p Fn(r...)747 b Fu(W)-8 b(rite)33 b(register)g
Fn(n...)48 b Fu(with)32 b(v)-5 b(alue)32 b Fn(r...)p
Fu(,)2410 2486 y(whic)m(h)i(con)m(tains)i(t)m(w)m(o)h(hex)e(digits)f
(for)2410 2595 y(eac)m(h)46 b(b)m(yte)g(in)e(the)h(register)g(\(target)
2410 2705 y(b)m(yte)31 b(order\).)1330 2824 y(reply)e
Fo(OK)754 b Fu(for)30 b(success)1330 2933 y(reply)f Fo(E)p
Fn(NN)666 b Fu(for)30 b(an)g(error)150 3103 y(general)g(query)g
Fr(\(optional\))224 b Fo(q)p Fn(query)809 b Fu(Request)27
b(info)f(ab)s(out)g Fn(query)p Fu(.)39 b(In)26 b(gen-)2410
3213 y(eral)37 b(GDB)i Fn(query)8 b Fu('s)38 b(ha)m(v)m(e)h(a)f
(leading)2410 3323 y(upp)s(er)45 b(case)k(letter.)93
b(Custom)47 b(v)m(en-)2410 3432 y(dor)c(queries)g(should)f(use)i(a)g
(leading)2410 3542 y(lo)m(w)m(er)f(case)g(letter)g(and)f(a)h(compan)m
(y)2410 3651 y(pre\014x,)23 b(ex:)38 b(`)p Fo(qfsf.var)p
Fu('.)e Fn(query)30 b Fu(ma)m(y)2410 3761 y(optionally)j(b)s(e)h(follo)
m(w)m(ed)h(b)m(y)g(a)g(`)p Fo(,)p Fu(')g(or)2410 3870
y(`)p Fo(;)p Fu(')47 b(separated)i(list.)91 b(Stubs)46
b(should)2410 3980 y(ensure)36 b(that)h(they)g(fully)d(matc)m(h)k(an)m
(y)2410 4090 y Fn(query)f Fu(name.)1330 4208 y(reply)29
b Fo(XX...)610 b Fu(Hex)66 b(enco)s(ded)f(data)h(from)f(query)-8
b(.)2410 4318 y(The)30 b(reply)f(can)h(not)h(b)s(e)f(empt)m(y)-8
b(.)1330 4437 y(reply)29 b Fo(E)p Fn(NN)666 b Fu(error)30
b(reply)1330 4546 y(reply)f(`')800 b(Indicating)25 b(an)h(unrecognized)
g Fn(query)p Fu(.)150 4716 y(curren)m(t)k(thread)606
b Fo(qC)984 b Fu(Return)29 b(the)i(curren)m(t)f(thread)g(id.)1330
4826 y(reply)f Fo(QC)p Fn(pid)626 b Fu(Where)39 b Fn(pid)i
Fu(is)d(a)h(HEX)g(enco)s(ded)g(16)2410 4936 y(bit)29
b(pro)s(cess)h(id.)1330 5054 y(reply)f(*)805 b(An)m(y)48
b(other)h(reply)f(implies)e(the)j(old)2410 5164 y(pid.)p
eop
%%Page: 121 123
121 122 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(121)150 299 y(compute)51
b(CR)m(C)f(of)h(memory)150 408 y(blo)s(c)m(k)1330 299
y Fo(qCRC:)p Fn(addr)7 b Fo(,)p Fn(length)1330 527 y
Fu(reply)29 b Fo(E)p Fn(NN)666 b Fu(An)30 b(error)g(\(suc)m(h)g(as)h
(memory)f(fault\))1330 637 y(reply)f Fo(C)p Fn(CR)m(C32)516
b Fu(A)35 b(32)g(bit)f(cyclic)g(redundancy)f(c)m(hec)m(k)2410
746 y(of)d(the)h(sp)s(eci\014ed)d(memory)j(region.)150
917 y(query)f Fn(LIST)35 b Fu(or)c Fn(threadLIST)108
b Fo(qL)p Fn(start\015ag)8 b(threadcoun)m(t)r(nextthread)-263
b Fu(Obtain)51 b(thread)h(information)f(from)2410 1026
y(R)-8 b(TOS.)37 b Fn(start\015ag)46 b Fu(is)37 b(one)h(hex)g(digit;)
2410 1136 y Fn(threadcoun)m(t)28 b Fu(is)d(t)m(w)m(o)i(hex)e(digits;)i
(and)2410 1245 y Fn(nextthread)34 b Fu(is)29 b(16)i(hex)f(digits.)1330
1364 y(reply)f(*)805 b(See)20 b Fo(remote.c:parse_threadlist)o(_)2410
1474 y(response\(\))p Fu(.)150 1644 y(query)30 b(sect)h(o\013s)611
b Fo(qOffsets)696 b Fu(Get)31 b(section)g(o\013sets.)1330
1753 y(reply)19 b Fo(Text=)p Fn(xxx)6 b Fo(;Data=)p Fn(yyy)i
Fo(;Bss=)p Fn(zzz)150 1924 y Fu(thread)30 b(info)f(request)427
b Fo(qP)p Fn(mo)s(de)5 b(threadid)429 b Fu(Returns)35
b(information)f(on)i Fn(threadid)p Fu(.)2410 2033 y(Where:)j
Fn(mo)s(de)33 b Fu(is)27 b(a)h(hex)g(enco)s(ded)f(32)2410
2143 y(bit)45 b(mo)s(de;)54 b Fn(threadid)49 b Fu(is)c(a)i(hex)f(en-)
2410 2252 y(co)s(ded)30 b(64)h(bit)e(thread)i(ID.)1330
2371 y(reply)e(*)805 b(See)111 b Fo(remote.c:remote_unpack_)2410
2481 y(thread_info_response\(\))p Fu(.)150 2651 y(remote)424
b(command)150 2760 y Fm(\(reserv)m(ed\))1330 2651 y Fo(qRcmd,)p
Fn(COMMAND)284 b(COMMAND)84 b Fu(\(hex)78 b(enco)s(ded\))h(is)2410
2760 y(passed)31 b(to)i(the)f(lo)s(cal)f(in)m(terpreter)g(for)2410
2870 y(execution.)99 b Fr(Implementors)53 b(should)2410
2980 y(note)59 b(that)h(pr)-5 b(oviding)60 b(ac)-5 b(c)g(ess)60
b(to)g(a)2410 3089 y(stubs's)30 b(interpr)-5 b(eter)31
b(may)g(have)g(se)-5 b(cu-)2410 3199 y(rity)33 b(implic)-5
b(ations)p Fu(.)1330 3318 y(reply)29 b Fn(OUTPUT)449
b Fu(The)73 b Fn(OUTPUT)80 b Fu(\(hex)74 b(enco)s(ded\).)2410
3427 y(Must)30 b(b)s(e)g(non-empt)m(y)-8 b(.)1330 3546
y(reply)29 b(`')800 b(When)30 b(`)p Fo(q)p Fu('`)p Fo(Rcmd)p
Fu(')g(is)f(not)i(recognized.)150 3716 y(general)f(set)h
Fr(\(optional\))335 b Fo(Q)p Fn(v)-5 b(ar)7 b Fo(=)p
Fn(v)-5 b(al)739 b Fu(Set)21 b(v)-5 b(alue)20 b(of)h
Fn(v)-5 b(ar)27 b Fu(to)21 b Fn(v)-5 b(al)p Fu(.)37 b(See)21
b(`)p Fo(q)p Fu(')g(for)g(a)2410 3826 y(discussing)27
b(of)k(naming)e(con)m(v)m(en)m(tions.)150 3996 y(reset)i
Fr(\(optional\))572 b Fu(r)1044 b(reset)31 b({)f(see)h(sparc)f(stub.)
150 4166 y(remote)h(restart)g Fr(\(optional\))193 b Fo(R)p
Fn(XX)896 b Fu(Restart)51 b(the)f(remote)i(serv)m(er.)101
b Fn(XX)2410 4276 y Fu(while)37 b(needed)j(has)f(no)h(clear)g
(de\014ni-)2410 4385 y(tion.)150 4555 y(step)30 b Fr(\(optional\))598
b Fo(s)p Fn(addr)849 b(addr)63 b Fu(is)56 b(address)h(to)h(resume.)121
b(If)2410 4665 y Fn(addr)45 b Fu(is)39 b(omitted,)j(resume)d(at)i(same)
2410 4775 y(address.)1330 4893 y(reply)879 b(see)31 b(b)s(elo)m(w)150
5063 y(step)f(with)f(signal)h Fr(\(optional\))132 b Fo(S)p
Fn(sig)8 b Fo(;)p Fn(addr)686 b Fu(Lik)m(e)30 b(`)p Fo(C)p
Fu(')g(but)g(step)h(not)f(con)m(tin)m(ue.)1330 5173 y(reply)879
b(see)31 b(b)s(elo)m(w)p eop
%%Page: 122 124
122 123 bop 150 -116 a Fu(122)2599 b(Debugging)31 b(with)e(GDB)150
299 y(searc)m(h)i Fr(\(optional\))514 b Fo(t)p Fn(addr)7
b Fo(:)p Fn(PP)e Fo(,)p Fn(MM)451 b Fu(Searc)m(h)38 b(bac)m(kw)m(ards)g
(starting)g(at)h(ad-)2410 408 y(dress)c Fn(addr)41 b
Fu(for)36 b(a)h(matc)m(h)g(with)d(pat-)2410 518 y(tern)k
Fn(PP)43 b Fu(and)38 b(mask)h Fn(MM)p Fu(.)g Fn(PP)44
b Fu(and)2410 628 y Fn(MM)38 b Fu(are)28 b(4)g(b)m(ytes.)41
b Fn(addr)33 b Fu(m)m(ust)28 b(b)s(e)f(at)2410 737 y(least)j(3)h
(digits.)150 907 y(thread)f(aliv)m(e)g Fr(\(optional\))290
b Fo(T)p Fn(XX)896 b Fu(Find)24 b(out)j(if)d(the)j(thread)f(XX)g(is)f
(aliv)m(e.)1330 1017 y(reply)k Fo(OK)754 b Fu(thread)30
b(is)f(still)f(aliv)m(e)1330 1127 y(reply)h Fo(E)p Fn(NN)666
b Fu(thread)30 b(is)f(dead)150 1297 y(reserv)m(ed)856
b Fo(u)1032 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150
1467 y(reserv)m(ed)856 b Fo(U)1032 b Fu(Reserv)m(ed)31
b(for)f(future)f(use)150 1637 y(reserv)m(ed)856 b Fo(v)1032
b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150 1807 y(reserv)m(ed)856
b Fo(V)1032 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150
1978 y(reserv)m(ed)856 b Fo(w)1032 b Fu(Reserv)m(ed)31
b(for)f(future)f(use)150 2148 y(reserv)m(ed)856 b Fo(W)1032
b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150 2318 y(reserv)m(ed)856
b Fo(x)1032 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150
2488 y(write)65 b(mem)h(\(binary\))e Fr(\(op-)150 2598
y(tional\))1330 2488 y Fo(X)p Fn(addr)7 b Fo(,)p Fn(length:)q(XX...)309
b(addr)38 b Fu(is)31 b(address,)h Fn(length)g Fu(is)f(n)m(um)m(b)s(er)
2410 2598 y(of)f(b)m(ytes,)h Fn(XX...)42 b Fu(is)29 b(binary)g(data.)
1330 2716 y(reply)g Fo(OK)754 b Fu(for)30 b(success)1330
2826 y(reply)f Fo(E)p Fn(NN)666 b Fu(for)30 b(an)g(error)150
2996 y(reserv)m(ed)856 b Fo(y)1032 b Fu(Reserv)m(ed)31
b(for)f(future)f(use)150 3166 y(reserv)m(ed)856 b Fo(Y)1032
b Fu(Reserv)m(ed)31 b(for)f(future)f(use)150 3337 y(remo)m(v)m(e)80
b(break)f(or)f(w)m(atc)m(h-)150 3446 y(p)s(oin)m(t)29
b Fm(\(draft\))i Fr(\(optional\))1330 3337 y Fo(z)p Fn(t)r
Fo(,)p Fn(addr)7 b Fo(,)p Fn(length)461 b Fu(See)30 b(`)p
Fo(Z)p Fu('.)150 3565 y(insert)38 b(break)h(or)g(w)m(atc)m(hp)s(oin)m
(t)150 3675 y Fm(\(draft\))31 b Fr(\(optional\))1330
3565 y Fo(Z)p Fn(t)r Fo(,)p Fn(addr)7 b Fo(,)p Fn(length)461
b(t)53 b Fu(is)d(t)m(yp)s(e:)83 b(`)p Fo(0)p Fu(')51
b(-)g(soft)m(w)m(are)i(break-)2410 3675 y(p)s(oin)m(t,)41
b(`)p Fo(1)p Fu(')f(-)f(hardw)m(are)h(breakp)s(oin)m(t,)2410
3784 y(`)p Fo(2)p Fu(')g(-)h(write)e(w)m(atc)m(hp)s(oin)m(t,)44
b(`)p Fo(3)p Fu(')c(-)h(read)2410 3894 y(w)m(atc)m(hp)s(oin)m(t,)67
b(`)p Fo(4)p Fu(')60 b(-)g(access)h(w)m(atc)m(h-)2410
4003 y(p)s(oin)m(t;)26 b Fn(addr)31 b Fu(is)24 b(address;)i
Fn(length)f Fu(is)f(in)2410 4113 y(b)m(ytes.)50 b(F)-8
b(or)35 b(a)f(soft)m(w)m(are)h(breakp)s(oin)m(t,)2410
4222 y Fn(length)d Fu(sp)s(eci\014es)g(the)h(size)g(of)g(the)g(in-)2410
4332 y(struction)22 b(to)i(b)s(e)f(patc)m(hed.)39 b(F)-8
b(or)24 b(hard-)2410 4442 y(w)m(are)g(breakp)s(oin)m(ts)f(and)g(w)m
(atc)m(hp)s(oin)m(ts)2410 4551 y Fn(length)c Fu(sp)s(eci\014es)g(the)i
(memory)f(region)2410 4661 y(to)31 b(b)s(e)e(monitored.)1330
4780 y(reply)g Fo(E)p Fn(NN)666 b Fu(for)30 b(an)g(error)1330
4889 y(reply)f Fo(OK)754 b Fu(for)30 b(success)1330 4999
y(`')1030 b(If)30 b(not)g(supp)s(orted.)150 5169 y(reserv)m(ed)856
b Fo(<)p Fu(other)p Fo(>)777 b Fu(Reserv)m(ed)31 b(for)f(future)f(use)p
eop
%%Page: 123 125
123 124 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(123)275 299 y(In)27
b(the)h(case)h(of)f(the)h(`)p Fo(C)p Fu(',)f(`)p Fo(c)p
Fu(',)h(`)p Fo(S)p Fu(')g(and)e(`)p Fo(s)p Fu(')h(pac)m(k)m(ets,)j
(there)d(is)f(no)h(immediate)f(resp)s(onse.)39 b(The)28
b(reply)-8 b(,)150 408 y(describ)s(ed)28 b(b)s(elo)m(w,)i(comes)h(when)
f(the)g(mac)m(hine)g(stops:)150 662 y Fo(S)p Fn(AA)1356
b(AA)30 b Fu(is)g(the)g(signal)f(n)m(um)m(b)s(er)150
832 y Fo(T)p Fn(AAn...)p Fo(:)p Fn(r...)p Fo(;)p Fn(n...)p
Fo(:)p Fn(r...)p Fo(;)p Fn(n...)p Fo(:)p Fn(r...)p Fo(;)357
b Fn(AA)36 b Fu(=)f(t)m(w)m(o)j(hex)d(digit)g(signal)g(n)m(um)m(b)s
(er;)i Fn(n...)58 b Fu(=)35 b(register)1690 942 y(n)m(um)m(b)s(er)42
b(\(hex\),)47 b Fn(r...)79 b Fu(=)43 b(target)i(b)m(yte)e(ordered)g
(register)1690 1051 y(con)m(ten)m(ts,)k(size)c(de\014ned)f(b)m(y)g
Fo(REGISTER_RAW_SIZE)p Fu(;)j Fn(n...)1690 1161 y Fu(=)35
b(`)p Fo(thread)p Fu(',)i Fn(r...)57 b Fu(=)35 b(thread)h(pro)s(cess)g
(ID,)g(this)f(is)g(a)h(hex)1690 1270 y(in)m(teger;)41
b Fn(n...)62 b Fu(=)37 b(other)g(string)g(not)g(starting)h(with)e(v)-5
b(alid)1690 1380 y(hex)44 b(digit.)84 b(GDB)46 b(should)d(ignore)i
(this)e Fn(n...)p Fu(,)50 b Fn(r...)84 b Fu(pair)1690
1489 y(and)30 b(go)j(on)e(to)h(the)g(next.)44 b(This)30
b(w)m(a)m(y)i(w)m(e)g(can)g(extend)g(the)1690 1599 y(proto)s(col.)150
1769 y Fo(W)p Fn(AA)1356 b Fu(The)30 b(pro)s(cess)h(exited,)g(and)g
Fn(AA)h Fu(is)e(the)h(exit)g(status.)44 b(This)1690 1879
y(is)29 b(only)h(applicable)e(for)i(certains)g(sorts)h(of)f(targets.)
150 2049 y Fo(X)p Fn(AA)1356 b Fu(The)29 b(pro)s(cess)h(terminated)g
(with)f(signal)g Fn(AA)p Fu(.)150 2219 y Fo(N)p Fn(AA)p
Fo(;)p Fn(tttttttt)r Fo(;)p Fn(dddddddd)t Fo(;)p Fn(bbbbbbbb)150
2329 y Fm(\(obsolete\))1690 2219 y Fn(AA)47 b Fu(=)g(signal)f(n)m(um)m
(b)s(er;)55 b Fn(tttttttt)d Fu(=)47 b(address)g(of)g(sym-)1690
2329 y(b)s(ol)53 b Fo(")p 1921 2329 28 4 v 33 w Fu(start)p
Fo(")p Fu(;)67 b Fn(dddddddd)55 b Fu(=)g(base)g(of)g(data)h(section;)
1690 2438 y Fn(bbbbbbbb)26 b Fu(=)i(base)g(of)h(bss)e(section.)40
b Fr(Note:)h(only)32 b(use)-5 b(d)31 b(by)1690 2548 y(Cisc)-5
b(o)41 b(Systems)h(tar)-5 b(gets.)67 b(The)41 b(di\013er)-5
b(enc)g(e)41 b(b)-5 b(etwe)g(en)41 b(this)1690 2658 y(r)-5
b(eply)32 b(and)g(the)g Fo(")p Fr(qO\013sets)p Fo(")e
Fr(query)h(is)g(that)i(the)f('N')e(p)-5 b(acket)1690
2767 y(may)32 b(arrive)f(sp)-5 b(ontane)g(ously)34 b(wher)-5
b(e)g(as)34 b(the)d('qO\013sets')f(is)i(a)1690 2877 y(query)g(initiate)
-5 b(d)34 b(by)e(the)h(host)h(debugger.)150 3047 y Fo(O)p
Fn(XX...)1281 b(XX...)41 b Fu(is)27 b(hex)i(enco)s(ding)e(of)i(ASCI)s
(I)e(data.)41 b(This)26 b(can)j(hap-)1690 3157 y(p)s(en)36
b(at)i(an)m(y)f(time)g(while)e(the)j(program)f(is)f(running)f(and)1690
3266 y(the)k(debugger)g(should)f(con)m(tin)m(ue)h(to)h(w)m(ait)g(for)f
('W',)i('T',)1690 3376 y(etc.)275 3566 y(Example)29 b(sequence)h(of)g
(a)g(target)i(b)s(eing)c(re-started.)41 b(Notice)31 b(ho)m(w)f(the)g
(restart)h(do)s(es)e(not)i(get)g(an)m(y)150 3675 y(direct)f(output:)390
3813 y Fo(<-)47 b(R00)390 3917 y(->)g(+)390 4021 y Fr(tar)-5
b(get)34 b(r)-5 b(estarts)390 4124 y Fo(<-)47 b(?)390
4228 y(->)g(+)390 4332 y(->)g(T001:1234123412341234)390
4436 y(<-)g(+)275 4579 y Fu(Example)29 b(sequence)i(of)f(a)h(target)h
(b)s(eing)d(stepp)s(ed)g(b)m(y)i(a)f(single)f(instruction:)390
4717 y Fo(<-)47 b(G1445...)390 4821 y(->)g(+)390 4925
y(<-)g(s)390 5029 y(->)g(+)390 5132 y Fr(time)33 b(p)-5
b(asses)390 5236 y Fo(->)47 b(T001:1234123412341234)390
5340 y(<-)g(+)p eop
%%Page: 124 126
124 125 bop 150 -116 a Fu(124)2599 b(Debugging)31 b(with)e(GDB)390
299 y Fo(<-)47 b(g)390 403 y(->)g(+)390 506 y(->)g(1455...)390
610 y(<-)g(+)275 750 y Fu(If)19 b(y)m(ou)i(ha)m(v)m(e)g(trouble)f(with)
f(the)h(serial)f(connection,)k(y)m(ou)e(can)f(use)g(the)h(command)f
Fo(set)29 b(remotedebug)p Fu(.)150 860 y(This)38 b(mak)m(es)k(GDB)f
(rep)s(ort)e(on)i(all)e(pac)m(k)m(ets)j(sen)m(t)f(bac)m(k)g(and)e
(forth)h(across)h(the)f(serial)f(line)g(to)i(the)150
969 y(remote)25 b(mac)m(hine.)38 b(The)23 b(pac)m(k)m(et-debugging)j
(information)c(is)h(prin)m(ted)f(on)i(the)g(GDB)h(standard)e(output)150
1079 y(stream.)61 b Fo(set)30 b(remotedebug)d(off)36
b Fu(turns)g(it)g(o\013,)k(and)c Fo(show)30 b(remotedebug)k
Fu(sho)m(ws)i(y)m(ou)i(its)e(curren)m(t)150 1188 y(state.)150
1423 y Fk(13.4.1.5)63 b(Using)43 b(the)e Ff(gdbserver)h
Fk(program)275 1621 y Fo(gdbserver)f Fu(is)j(a)g(con)m(trol)h(program)f
(for)g(Unix-lik)m(e)f(systems,)48 b(whic)m(h)c(allo)m(ws)f(y)m(ou)i(to)
g(connect)150 1731 y(y)m(our)38 b(program)f(with)g(a)h(remote)g(GDB)h
(via)f Fo(target)28 b(remote)p Fu(|but)35 b(without)i(linking)e(in)i
(the)g(usual)150 1840 y(debugging)29 b(stub.)275 1980
y Fo(gdbserver)j Fu(is)j(not)h(a)g(complete)g(replacemen)m(t)f(for)h
(the)f(debugging)g(stubs,)h(b)s(ecause)f(it)g(requires)150
2090 y(essen)m(tially)26 b(the)h(same)h(op)s(erating-system)f
(facilities)e(that)j(GDB)g(itself)e(do)s(es.)39 b(In)27
b(fact,)i(a)e(system)g(that)150 2199 y(can)34 b(run)f
Fo(gdbserver)e Fu(to)k(connect)g(to)f(a)g(remote)h(GDB)g(could)e(also)h
(run)f(GDB)i(lo)s(cally!)49 b Fo(gdbserver)150 2309 y
Fu(is)29 b(sometimes)g(useful)f(nev)m(ertheless,)i(b)s(ecause)g(it)f
(is)f(a)i(m)m(uc)m(h)g(smaller)e(program)h(than)h(GDB)h(itself.)39
b(It)150 2419 y(is)32 b(also)i(easier)f(to)h(p)s(ort)e(than)i(all)e(of)
h(GDB,)i(so)e(y)m(ou)h(ma)m(y)g(b)s(e)e(able)h(to)h(get)h(started)f
(more)f(quic)m(kly)f(on)150 2528 y(a)h(new)e(system)h(b)m(y)h(using)d
Fo(gdbserver)p Fu(.)44 b(Finally)-8 b(,)31 b(if)g(y)m(ou)i(dev)m(elop)f
(co)s(de)g(for)g(real-time)g(systems,)h(y)m(ou)150 2638
y(ma)m(y)g(\014nd)e(that)i(the)g(tradeo\013s)g(in)m(v)m(olv)m(ed)f(in)g
(real-time)g(op)s(eration)g(mak)m(e)h(it)f(more)h(con)m(v)m(enien)m(t)h
(to)f(do)150 2747 y(as)e(m)m(uc)m(h)f(dev)m(elopmen)m(t)h(w)m(ork)g(as)
g(p)s(ossible)d(on)i(another)h(system,)g(for)f(example)g(b)m(y)g
(cross-compiling.)150 2857 y(Y)-8 b(ou)31 b(can)g(use)f
Fo(gdbserver)d Fu(to)32 b(mak)m(e)f(a)g(similar)c(c)m(hoice)32
b(for)e(debugging.)275 2997 y(GDB)36 b(and)e Fo(gdbserver)e
Fu(comm)m(unicate)k(via)e(either)h(a)g(serial)f(line)f(or)i(a)g(TCP)f
(connection,)i(using)150 3106 y(the)31 b(standard)e(GDB)j(remote)f
(serial)e(proto)s(col.)150 3274 y Fr(On)j(the)h(tar)-5
b(get)34 b(machine,)630 3383 y Fu(y)m(ou)h(need)e(to)i(ha)m(v)m(e)h(a)e
(cop)m(y)h(of)f(the)h(program)f(y)m(ou)g(w)m(an)m(t)h(to)g(debug.)52
b Fo(gdbserver)31 b Fu(do)s(es)630 3493 y(not)24 b(need)f(y)m(our)g
(program's)g(sym)m(b)s(ol)g(table,)h(so)g(y)m(ou)g(can)g(strip)d(the)j
(program)f(if)g(necessary)630 3603 y(to)31 b(sa)m(v)m(e)h(space.)41
b(GDB)32 b(on)e(the)h(host)f(system)h(do)s(es)f(all)f(the)i(sym)m(b)s
(ol)e(handling.)630 3740 y(T)-8 b(o)34 b(use)g(the)g(serv)m(er,)h(y)m
(ou)f(m)m(ust)g(tell)f(it)g(ho)m(w)h(to)h(comm)m(unicate)f(with)f(GDB;)
i(the)f(name)630 3849 y(of)d(y)m(our)f(program;)g(and)g(the)h(argumen)m
(ts)f(for)g(y)m(our)h(program.)40 b(The)30 b(syn)m(tax)h(is:)870
3981 y Fo(target>)46 b(gdbserver)f Fn(comm)j(program)g
Fo([)f Fn(args)52 b Fo(...)47 b(])630 4118 y Fn(comm)39
b Fu(is)e(either)h(a)g(device)g(name)h(\(to)g(use)f(a)h(serial)e
(line\))g(or)h(a)h(TCP)e(hostname)i(and)630 4227 y(p)s(ortn)m(um)m(b)s
(er.)49 b(F)-8 b(or)34 b(example,)g(to)h(debug)d(Emacs)i(with)f(the)g
(argumen)m(t)h(`)p Fo(foo.txt)p Fu(')f(and)630 4337 y(comm)m(unicate)e
(with)e(GDB)j(o)m(v)m(er)f(the)g(serial)e(p)s(ort)h(`)p
Fo(/dev/com1)p Fu(':)870 4468 y Fo(target>)46 b(gdbserver)f(/dev/com1)g
(emacs)i(foo.txt)630 4606 y(gdbserver)28 b Fu(w)m(aits)i(passiv)m(ely)g
(for)g(the)g(host)h(GDB)g(to)g(comm)m(unicate)g(with)e(it.)630
4743 y(T)-8 b(o)31 b(use)f(a)h(TCP)e(connection)i(instead)e(of)i(a)g
(serial)e(line:)870 4874 y Fo(target>)46 b(gdbserver)f(host:2345)g
(emacs)i(foo.txt)630 5011 y Fu(The)28 b(only)f(di\013erence)h(from)g
(the)g(previous)f(example)h(is)g(the)g(\014rst)g(argumen)m(t,)h(sp)s
(ecifying)630 5121 y(that)41 b(y)m(ou)g(are)g(comm)m(unicating)f(with)f
(the)i(host)g(GDB)g(via)g(TCP)-8 b(.)40 b(The)g(`)p Fo(host:2345)p
Fu(')630 5230 y(argumen)m(t)30 b(means)g(that)g Fo(gdbserver)d
Fu(is)i(to)i(exp)s(ect)f(a)g(TCP)f(connection)h(from)f(mac)m(hine)630
5340 y(`)p Fo(host)p Fu(')37 b(to)h(lo)s(cal)f(TCP)g(p)s(ort)g(2345.)64
b(\(Curren)m(tly)-8 b(,)38 b(the)g(`)p Fo(host)p Fu(')f(part)g(is)g
(ignored.\))61 b(Y)-8 b(ou)p eop
%%Page: 125 127
125 126 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(125)630 299 y(can)37
b(c)m(ho)s(ose)h(an)m(y)f(n)m(um)m(b)s(er)e(y)m(ou)i(w)m(an)m(t)g(for)g
(the)g(p)s(ort)f(n)m(um)m(b)s(er)f(as)i(long)f(as)h(it)f(do)s(es)h(not)
630 408 y(con\015ict)30 b(with)g(an)m(y)g(TCP)g(p)s(orts)g(already)g
(in)f(use)h(on)h(the)g(target)h(system)e(\(for)h(example,)630
518 y Fo(23)c Fu(is)h(reserv)m(ed)g(for)g Fo(telnet)p
Fu(\).)1680 485 y Fh(1)1756 518 y Fu(Y)-8 b(ou)28 b(m)m(ust)g(use)g
(the)g(same)h(p)s(ort)e(n)m(um)m(b)s(er)g(with)g(the)h(host)630
628 y(GDB)j Fo(target)e(remote)g Fu(command.)150 778
y Fr(On)j(the)h(GDB)g(host)h(machine,)630 888 y Fu(y)m(ou)g(need)f(an)h
(unstripp)s(ed)c(cop)m(y)k(of)g(y)m(our)g(program,)g(since)f(GDB)i
(needs)e(sym)m(b)s(ols)g(and)630 998 y(debugging)k(information.)60
b(Start)38 b(up)e(GDB)j(as)f(usual,)g(using)e(the)i(name)f(of)h(the)g
(lo)s(cal)630 1107 y(cop)m(y)33 b(of)f(y)m(our)h(program)f(as)g(the)g
(\014rst)g(argumen)m(t.)47 b(\(Y)-8 b(ou)33 b(ma)m(y)g(also)f(need)g
(the)g(`)p Fo(--baud)p Fu(')630 1217 y(option)25 b(if)g(the)h(serial)e
(line)g(is)h(running)e(at)k(an)m(ything)e(other)h(than)f(9600)j(bps.\))
38 b(After)26 b(that,)630 1326 y(use)f Fo(target)j(remote)c
Fu(to)i(establish)d(comm)m(unications)h(with)g Fo(gdbserver)p
Fu(.)36 b(Its)25 b(argumen)m(t)630 1436 y(is)37 b(either)g(a)h(device)f
(name)h(\(usually)e(a)i(serial)e(device,)k(lik)m(e)d(`)p
Fo(/dev/ttyb)p Fu('\),)h(or)g(a)g(TCP)630 1545 y(p)s(ort)30
b(descriptor)f(in)g(the)i(form)f Fn(host)r Fo(:)p Fn(POR)-8
b(T)7 b Fu(.)39 b(F)-8 b(or)31 b(example:)870 1670 y
Fo(\(gdb\))46 b(target)g(remote)h(/dev/ttyb)630 1800
y Fu(comm)m(unicates)31 b(with)e(the)i(serv)m(er)f(via)g(serial)f(line)
g(`)p Fo(/dev/ttyb)p Fu(',)g(and)870 1924 y Fo(\(gdb\))46
b(target)g(remote)h(the-target:2345)630 2054 y Fu(comm)m(unicates)35
b(via)f(a)h(TCP)f(connection)h(to)g(p)s(ort)f(2345)j(on)d(host)h(`)p
Fo(the-target)p Fu(')n(.)53 b(F)-8 b(or)630 2164 y(TCP)44
b(connections,)k(y)m(ou)d(m)m(ust)g(start)g(up)e Fo(gdbserver)f
Fu(prior)h(to)j(using)d(the)i Fo(target)630 2274 y(remote)28
b Fu(command.)40 b(Otherwise)29 b(y)m(ou)h(ma)m(y)g(get)h(an)f(error)f
(whose)g(text)i(dep)s(ends)d(on)i(the)630 2383 y(host)g(system,)h(but)f
(whic)m(h)f(usually)f(lo)s(oks)i(something)g(lik)m(e)f(`)p
Fo(Connection)f(refused)p Fu('.)150 2594 y Fk(13.4.1.6)63
b(Using)43 b(the)e Ff(gdbserve.nlm)h Fk(program)275 2783
y Fo(gdbserve.nlm)29 b Fu(is)k(a)g(con)m(trol)h(program)f(for)g(NetW)-8
b(are)36 b(systems,)e(whic)m(h)e(allo)m(ws)g(y)m(ou)i(to)g(connect)150
2892 y(y)m(our)c(program)g(with)g(a)g(remote)i(GDB)f(via)f
Fo(target)f(remote)p Fu(.)275 3022 y(GDB)f(and)f Fo(gdbserve.nlm)d
Fu(comm)m(unicate)k(via)f(a)h(serial)e(line,)g(using)g(the)i(standard)f
(GDB)h(remote)150 3132 y(serial)h(proto)s(col.)150 3283
y Fr(On)j(the)h(tar)-5 b(get)34 b(machine,)630 3392 y
Fu(y)m(ou)39 b(need)f(to)h(ha)m(v)m(e)h(a)f(cop)m(y)g(of)g(the)g
(program)f(y)m(ou)h(w)m(an)m(t)g(to)h(debug.)64 b Fo(gdbserve.nlm)630
3502 y Fu(do)s(es)38 b(not)h(need)f(y)m(our)h(program's)f(sym)m(b)s(ol)
g(table,)i(so)f(y)m(ou)g(can)g(strip)e(the)i(program)f(if)630
3611 y(necessary)27 b(to)f(sa)m(v)m(e)i(space.)40 b(GDB)27
b(on)f(the)h(host)f(system)g(do)s(es)g(all)f(the)h(sym)m(b)s(ol)f
(handling.)630 3741 y(T)-8 b(o)34 b(use)g(the)g(serv)m(er,)h(y)m(ou)f
(m)m(ust)g(tell)f(it)g(ho)m(w)h(to)h(comm)m(unicate)f(with)f(GDB;)i
(the)f(name)630 3851 y(of)d(y)m(our)f(program;)g(and)g(the)h(argumen)m
(ts)f(for)g(y)m(our)h(program.)40 b(The)30 b(syn)m(tax)h(is:)870
3975 y Fo(load)47 b(gdbserve)e([)j(BOARD=)p Fn(b)s(oard)g
Fo(])g([)f(PORT=)p Fn(p)s(ort)h Fo(])1538 4079 y([)g(BAUD=)p
Fn(baud)h Fo(])e Fn(program)h Fo([)f Fn(args)52 b Fo(...)47
b(])630 4209 y Fn(b)s(oard)31 b Fu(and)c Fn(p)s(ort)j
Fu(sp)s(ecify)d(the)h(serial)f(line;)h Fn(baud)j Fu(sp)s(eci\014es)c
(the)h(baud)f(rate)i(used)f(b)m(y)g(the)630 4319 y(connection.)41
b Fn(p)s(ort)32 b Fu(and)d Fn(no)s(de)35 b Fu(default)30
b(to)h(0,)g Fn(baud)i Fu(defaults)c(to)i(9600)h(bps.)630
4449 y(F)-8 b(or)37 b(example,)g(to)g(debug)e(Emacs)i(with)d(the)j
(argumen)m(t)f(`)p Fo(foo.txt)p Fu('and)e(comm)m(unicate)630
4559 y(with)29 b(GDB)j(o)m(v)m(er)f(serial)e(p)s(ort)h(n)m(um)m(b)s(er)
f(2)i(or)f(b)s(oard)g(1)g(using)f(a)i(19200)i(bps)c(connection:)870
4683 y Fo(load)47 b(gdbserve)e(BOARD=1)h(PORT=2)g(BAUD=19200)f(emacs)h
(foo.txt)150 4834 y Fr(On)32 b(the)h(GDB)g(host)h(machine,)630
4943 y Fu(y)m(ou)g(need)f(an)h(unstripp)s(ed)c(cop)m(y)k(of)g(y)m(our)g
(program,)g(since)f(GDB)i(needs)e(sym)m(b)s(ols)g(and)630
5053 y(debugging)20 b(information.)36 b(Start)22 b(up)e(GDB)i(as)g
(usual,)g(using)e(the)h(name)h(of)f(the)h(lo)s(cal)e(cop)m(y)p
150 5131 1200 4 v 192 5197 a Fh(1)275 5230 y Fu(If)36
b(y)m(ou)h(c)m(ho)s(ose)h(a)g(p)s(ort)e(n)m(um)m(b)s(er)g(that)i
(con\015icts)e(with)g(another)h(service,)i Fo(gdbserver)c
Fu(prin)m(ts)g(an)275 5340 y(error)30 b(message)h(and)f(exits.)p
eop
%%Page: 126 128
126 127 bop 150 -116 a Fu(126)2599 b(Debugging)31 b(with)e(GDB)630
299 y(of)e(y)m(our)g(program)g(as)g(the)g(\014rst)f(argumen)m(t.)40
b(\(Y)-8 b(ou)28 b(ma)m(y)f(also)g(need)g(the)g(`)p Fo(--baud)p
Fu(')e(option)630 408 y(if)35 b(the)i(serial)e(line)g(is)h(running)d
(at)38 b(an)m(ything)e(other)g(than)h(9600)h(bps.)58
b(After)36 b(that,)j(use)630 518 y Fo(target)29 b(remote)24
b Fu(to)j(establish)e(comm)m(unications)h(with)f Fo(gdbserve.nlm)p
Fu(.)36 b(Its)26 b(argumen)m(t)630 628 y(is)j(a)i(device)f(name)h
(\(usually)d(a)j(serial)e(device,)i(lik)m(e)e(`)p Fo(/dev/ttyb)p
Fu('\).)39 b(F)-8 b(or)32 b(example:)870 757 y Fo(\(gdb\))46
b(target)g(remote)h(/dev/ttyb)630 892 y Fu(comm)m(unications)30
b(with)f(the)h(serv)m(er)h(via)f(serial)f(line)g(`)p
Fo(/dev/ttyb)p Fu('.)150 1120 y Fk(13.4.2)63 b(GDB)41
b(with)f(a)h(remote)f(i960)i(\(Nindy\))275 1314 y Fn(Nindy)29
b Fu(is)22 b(a)i(R)m(OM)f(Monitor)g(program)g(for)g(In)m(tel)g(960)h
(target)h(systems.)38 b(When)23 b(GDB)h(is)f(con\014gured)150
1423 y(to)32 b(con)m(trol)g(a)g(remote)h(In)m(tel)e(960)i(using)d
(Nindy)-8 b(,)31 b(y)m(ou)h(can)g(tell)f(GDB)i(ho)m(w)e(to)i(connect)f
(to)h(the)e(960)i(in)150 1533 y(sev)m(eral)e(w)m(a)m(ys:)225
1669 y Fq(\017)60 b Fu(Through)35 b(command)g(line)g(options)g(sp)s
(ecifying)f(serial)h(p)s(ort,)i(v)m(ersion)e(of)h(the)g(Nindy)f(proto)s
(col,)330 1778 y(and)30 b(comm)m(unications)f(sp)s(eed;)225
1914 y Fq(\017)60 b Fu(By)31 b(resp)s(onding)d(to)j(a)f(prompt)g(on)g
(startup;)225 2049 y Fq(\017)60 b Fu(By)25 b(using)e(the)i
Fo(target)e Fu(command)i(at)g(an)m(y)g(p)s(oin)m(t)f(during)e(y)m(our)j
(GDB)h(session.)38 b(See)25 b(Section)f(13.2)330 2159
y([Commands)30 b(for)g(managing)g(targets],)i(page)f(107.)150
2386 y Fk(13.4.2.1)63 b(Startup)41 b(with)g(Nindy)275
2580 y Fu(If)30 b(y)m(ou)h(simply)d(start)k Fo(gdb)e
Fu(without)g(using)f(an)m(y)i(command-line)e(options,)i(y)m(ou)g(are)g
(prompted)f(for)150 2689 y(what)g(serial)f(p)s(ort)h(to)h(use,)g
Fr(b)-5 b(efor)g(e)38 b Fu(y)m(ou)30 b(reac)m(h)h(the)g(ordinary)e(GDB)
i(prompt:)390 2820 y Fo(Attach)46 b(/dev/ttyNN)f(--)i(specify)f(NN,)h
(or)g("quit")f(to)h(quit:)150 2956 y Fu(Resp)s(ond)38
b(to)i(the)f(prompt)f(with)g(whatev)m(er)i(su\016x)e(\(after)i(`)p
Fo(/dev/tty)p Fu('\))e(iden)m(ti\014es)f(the)j(serial)e(p)s(ort)150
3065 y(y)m(ou)h(w)m(an)m(t)h(to)g(use.)66 b(Y)-8 b(ou)39
b(can,)j(if)c(y)m(ou)h(c)m(ho)s(ose,)j(simply)37 b(start)i(up)f(with)g
(no)h(Nindy)e(connection)i(b)m(y)150 3175 y(resp)s(onding)33
b(to)j(the)f(prompt)g(with)f(an)h(empt)m(y)g(line.)54
b(If)35 b(y)m(ou)g(do)h(this)e(and)g(later)i(wish)d(to)j(attac)m(h)h
(to)150 3284 y(Nindy)-8 b(,)29 b(use)h Fo(target)f Fu(\(see)i(Section)g
(13.2)h([Commands)d(for)h(managing)g(targets],)j(page)e(107\).)150
3512 y Fk(13.4.2.2)63 b(Options)42 b(for)f(Nindy)275
3706 y Fu(These)31 b(are)h(the)g(startup)f(options)g(for)g(b)s
(eginning)e(y)m(our)j(GDB)g(session)f(with)f(a)i(Nindy-960)g(b)s(oard)
150 3815 y(attac)m(hed:)150 3977 y Fo(-r)e Fn(p)s(ort)184
b Fu(Sp)s(ecify)32 b(the)j(serial)e(p)s(ort)g(name)h(of)h(a)f(serial)f
(in)m(terface)i(to)g(b)s(e)e(used)h(to)h(connect)g(to)g(the)630
4087 y(target)j(system.)61 b(This)35 b(option)h(is)g(only)g(a)m(v)-5
b(ailable)36 b(when)g(GDB)i(is)e(con\014gured)g(for)h(the)630
4196 y(In)m(tel)30 b(960)h(target)h(arc)m(hitecture.)41
b(Y)-8 b(ou)31 b(ma)m(y)g(sp)s(ecify)e Fn(p)s(ort)i Fu(as)f(an)m(y)h
(of:)41 b(a)30 b(full)e(pathname)630 4306 y(\(e.g.)50
b(`)p Fo(-r)30 b(/dev/ttya)p Fu('\),)i(a)i(device)e(name)i(in)d(`)p
Fo(/dev)p Fu(')i(\(e.g.)50 b(`)p Fo(-r)30 b(ttya)p Fu('\),)j(or)g
(simply)e(the)630 4415 y(unique)d(su\016x)i(for)g(a)h(sp)s(eci\014c)e
Fo(tty)g Fu(\(e.g.)43 b(`)p Fo(-r)30 b(a)p Fu('\).)150
4576 y Fo(-O)384 b Fu(\(An)30 b(upp)s(ercase)e(letter)i(\\O",)h(not)f
(a)g(zero.\))41 b(Sp)s(ecify)28 b(that)i(GDB)h(should)d(use)h(the)h
(\\old")630 4686 y(Nindy)k(monitor)i(proto)s(col)g(to)h(connect)g(to)f
(the)h(target)g(system.)58 b(This)34 b(option)i(is)f(only)630
4795 y(a)m(v)-5 b(ailable)30 b(when)f(GDB)j(is)d(con\014gured)h(for)g
(the)g(In)m(tel)g(960)i(target)g(arc)m(hitecture.)870
4925 y Fr(Warning:)66 b Fu(if)39 b(y)m(ou)i(sp)s(ecify)e(`)p
Fo(-O)p Fu(',)k(but)d(are)g(actually)g(trying)g(to)h(connect)870
5029 y(to)29 b(a)h(target)g(system)f(that)g(exp)s(ects)g(the)g(new)m
(er)g(proto)s(col,)g(the)g(connection)870 5132 y(fails,)c(app)s(earing)
f(to)i(b)s(e)f(a)h(sp)s(eed)f(mismatc)m(h.)39 b(GDB)26
b(rep)s(eatedly)f(attempts)870 5236 y(to)40 b(reconnect)h(at)f(sev)m
(eral)h(di\013eren)m(t)e(line)f(sp)s(eeds.)67 b(Y)-8
b(ou)41 b(can)f(ab)s(ort)f(this)870 5340 y(pro)s(cess)30
b(with)f(an)h(in)m(terrupt.)p eop
%%Page: 127 129
127 128 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(127)150 299 y Fo(-brk)288
b Fu(Sp)s(ecify)30 b(that)j(GDB)g(should)c(\014rst)j(send)f(a)h
Fo(BREAK)e Fu(signal)h(to)h(the)g(target)i(system,)e(in)f(an)630
408 y(attempt)g(to)h(reset)f(it,)f(b)s(efore)g(connecting)g(to)h(a)g
(Nindy)e(target.)870 543 y Fr(Warning:)44 b Fu(Man)m(y)27
b(target)h(systems)f(do)f(not)h(ha)m(v)m(e)h(the)f(hardw)m(are)f(that)h
(this)870 646 y(requires;)i(it)h(only)g(w)m(orks)g(with)f(a)i(few)f(b)s
(oards.)275 822 y(The)f(standard)h(`)p Fo(-b)p Fu(')g(option)g(con)m
(trols)h(the)f(line)f(sp)s(eed)g(used)h(on)g(the)h(serial)e(p)s(ort.)
150 1068 y Fk(13.4.2.3)63 b(Nindy)42 b(reset)f(command)150
1302 y Fo(reset)240 b Fu(F)-8 b(or)26 b(a)f(Nindy)e(target,)k(this)d
(command)h(sends)e(a)j(\\break")f(to)h(the)f(remote)g(target)i(system;)
630 1412 y(this)33 b(is)g(only)f(useful)g(if)h(the)h(target)i(has)d(b)s
(een)g(equipp)s(ed)e(with)i(a)h(circuit)f(to)h(p)s(erform)f(a)630
1522 y(hard)c(reset)i(\(or)g(some)g(other)f(in)m(teresting)g(action\))h
(when)f(a)g(break)h(is)e(detected.)150 1768 y Fk(13.4.3)63
b(The)41 b(UDI)g(proto)s(col)i(for)d(AMD29K)275 1971
y Fu(GDB)26 b(supp)s(orts)d(AMD's)k(UDI)f(\(\\Univ)m(ersal)f(Debugger)h
(In)m(terface"\))h(proto)s(col)e(for)g(debugging)g(the)150
2081 y(a29k)32 b(pro)s(cessor)d(family)-8 b(.)40 b(T)-8
b(o)31 b(use)f(this)f(con\014guration)h(with)f(AMD)i(targets)g(running)
d(the)i(MiniMON)150 2190 y(monitor,)c(y)m(ou)f(need)f(the)i(program)e
Fo(MONTIP)p Fu(,)h(a)m(v)-5 b(ailable)24 b(from)g(AMD)i(at)g(no)f(c)m
(harge.)40 b(Y)-8 b(ou)25 b(can)g(also)g(use)150 2300
y(GDB)30 b(with)d(the)i(UDI-conforman)m(t)g(a29k)h(sim)m(ulator)e
(program)g Fo(ISSTIP)p Fu(,)f(also)i(a)m(v)-5 b(ailable)28
b(from)g(AMD.)150 2476 y Fo(target)h(udi)g Fn(k)m(eyw)m(ord)630
2585 y Fu(Select)34 b(the)f(UDI)h(in)m(terface)g(to)g(a)f(remote)h
(a29k)h(b)s(oard)d(or)i(sim)m(ulator,)f(where)f Fn(k)m(eyw)m(ord)630
2695 y Fu(is)39 b(an)g(en)m(try)h(in)e(the)i(AMD)g(con\014guration)f
(\014le)g(`)p Fo(udi_soc)p Fu('.)67 b(This)37 b(\014le)i(con)m(tains)h
(k)m(ey-)630 2805 y(w)m(ord)33 b(en)m(tries)g(whic)m(h)e(sp)s(ecify)h
(parameters)i(used)e(to)i(connect)g(to)f(a29k)i(targets.)50
b(If)33 b(the)630 2914 y(`)p Fo(udi_soc)p Fu(')g(\014le)h(is)g(not)i
(in)d(y)m(our)i(w)m(orking)f(directory)-8 b(,)37 b(y)m(ou)e(m)m(ust)g
(set)g(the)g(en)m(vironmen)m(t)630 3024 y(v)-5 b(ariable)29
b(`)p Fo(UDICONF)p Fu(')g(to)i(its)f(pathname.)150 3270
y Fk(13.4.4)63 b(The)41 b(EBMON)h(proto)s(col)g(for)f(AMD29K)275
3473 y Fu(AMD)30 b(distributes)d(a)j(29K)g(dev)m(elopmen)m(t)g(b)s
(oard)e(mean)m(t)j(to)f(\014t)f(in)g(a)h(PC,)f(together)i(with)d(a)i
(DOS-)150 3583 y(hosted)37 b(monitor)f(program)g(called)g
Fo(EBMON)p Fu(.)59 b(As)37 b(a)g(shorthand)e(term,)k(this)d(dev)m
(elopmen)m(t)h(system)g(is)150 3693 y(called)22 b(the)h(\\EB29K".)h(T)
-8 b(o)23 b(use)g(GDB)h(from)e(a)h(Unix)e(system)i(to)g(run)f(programs)
g(on)g(the)h(EB29K)h(b)s(oard,)150 3802 y(y)m(ou)32 b(m)m(ust)g
(\014rst)g(connect)h(a)f(serial)f(cable)h(b)s(et)m(w)m(een)g(the)h(PC)e
(\(whic)m(h)g(hosts)h(the)g(EB29K)h(b)s(oard\))f(and)150
3912 y(a)40 b(serial)f(p)s(ort)g(on)h(the)g(Unix)f(system.)70
b(In)39 b(the)h(follo)m(wing,)h(w)m(e)g(assume)e(y)m(ou'v)m(e)j(ho)s
(ok)m(ed)e(the)g(cable)150 4021 y(b)s(et)m(w)m(een)31
b(the)g(PC's)f(`)p Fo(COM1)p Fu(')f(p)s(ort)h(and)g(`)p
Fo(/dev/ttya)p Fu(')e(on)i(the)h(Unix)e(system.)150 4267
y Fk(13.4.4.1)63 b(Comm)m(unications)40 b(setup)275 4471
y Fu(The)34 b(next)h(step)g(is)f(to)i(set)f(up)f(the)h(PC's)g(p)s(ort,)
g(b)m(y)g(doing)f(something)h(lik)m(e)f(this)g(in)f(DOS)i(on)g(the)150
4581 y(PC:)390 4720 y Fo(C:\\>)47 b(MODE)f(com1:9600,n,8,1,none)150
4866 y Fu(This)33 b(example|run)h(on)h(an)g(MS)g(DOS)g(4.0)h
(system|sets)g(the)f(PC)g(p)s(ort)f(to)i(9600)h(bps,)f(no)f(parit)m(y)
-8 b(,)150 4975 y(eigh)m(t)34 b(data)g(bits,)g(one)g(stop)g(bit,)g(and)
f(no)g(\\retry")i(action;)h(y)m(ou)e(m)m(ust)f(matc)m(h)i(the)f(comm)m
(unications)150 5085 y(parameters)d(when)e(establishing)f(the)j(Unix)e
(end)h(of)g(the)h(connection)f(as)h(w)m(ell.)275 5230
y(T)-8 b(o)35 b(giv)m(e)g(con)m(trol)g(of)g(the)g(PC)g(to)g(the)g(Unix)
f(side)g(of)h(the)g(serial)e(line,)i(t)m(yp)s(e)g(the)g(follo)m(wing)e
(at)j(the)150 5340 y(DOS)30 b(console:)p eop
%%Page: 128 130
128 129 bop 150 -116 a Fu(128)2599 b(Debugging)31 b(with)e(GDB)390
299 y Fo(C:\\>)47 b(CTTY)f(com1)150 428 y Fu(\(Later,)36
b(if)c(y)m(ou)i(wish)e(to)i(return)f(con)m(trol)h(to)g(the)g(DOS)f
(console,)i(y)m(ou)f(can)g(use)f(the)h(command)f Fo(CTTY)150
537 y(con)p Fu(|but)26 b(y)m(ou)i(m)m(ust)f(send)g(it)g(o)m(v)m(er)i
(the)f(device)f(that)i(had)d(con)m(trol,)j(in)e(our)g(example)g(o)m(v)m
(er)i(the)f(`)p Fo(COM1)p Fu(')150 647 y(serial)h(line\).)275
776 y(F)-8 b(rom)31 b(the)g(Unix)f(host,)h(use)g(a)g(comm)m(unications)
f(program)h(suc)m(h)f(as)i Fo(tip)e Fu(or)g Fo(cu)h Fu(to)g(comm)m
(unicate)150 886 y(with)e(the)i(PC;)f(for)g(example,)390
1009 y Fo(cu)47 b(-s)g(9600)g(-l)g(/dev/ttya)150 1138
y Fu(The)30 b Fo(cu)g Fu(options)g(sho)m(wn)g(sp)s(ecify)-8
b(,)30 b(resp)s(ectiv)m(ely)-8 b(,)31 b(the)g(linesp)s(eed)d(and)i(the)
h(serial)f(p)s(ort)g(to)h(use.)41 b(If)31 b(y)m(ou)150
1247 y(use)f Fo(tip)g Fu(instead,)f(y)m(our)i(command)f(line)f(ma)m(y)i
(lo)s(ok)f(something)f(lik)m(e)h(the)h(follo)m(wing:)390
1370 y Fo(tip)47 b(-9600)f(/dev/ttya)150 1499 y Fu(Y)-8
b(our)31 b(system)g(ma)m(y)h(require)d(a)j(di\013eren)m(t)e(name)h
(where)f(w)m(e)i(sho)m(w)f(`)p Fo(/dev/ttya)p Fu(')e(as)i(the)g
(argumen)m(t)g(to)150 1609 y Fo(tip)p Fu(.)39 b(The)27
b(comm)m(unications)h(parameters,)h(including)24 b(whic)m(h)j(p)s(ort)g
(to)i(use,)f(are)h(asso)s(ciated)f(with)f(the)150 1719
y Fo(tip)h Fu(argumen)m(t)i(in)d(the)j(\\remote")h(descriptions)c
(\014le|normally)f(the)j(system)g(table)g(`)p Fo(/etc/remote)p
Fu('.)275 1848 y(Using)40 b(the)h Fo(tip)f Fu(or)h Fo(cu)f
Fu(connection,)k(c)m(hange)e(the)f(DOS)g(w)m(orking)f(directory)h(to)g
(the)g(directory)150 1957 y(con)m(taining)g(a)h(cop)m(y)g(of)f(y)m(our)
g(29K)h(program,)i(then)d(start)h(the)g(PC)f(program)g
Fo(EBMON)f Fu(\(an)h(EB29K)150 2067 y(con)m(trol)28 b(program)e
(supplied)e(with)i(y)m(our)h(b)s(oard)f(b)m(y)h(AMD\).)i(Y)-8
b(ou)27 b(should)e(see)j(an)f(initial)d(displa)m(y)h(from)150
2176 y Fo(EBMON)k Fu(similar)f(to)j(the)f(one)h(that)g(follo)m(ws,)f
(ending)f(with)g(the)h Fo(EBMON)f Fu(prompt)h(`)p Fo(#)p
Fu('|)390 2299 y Fo(C:\\>)47 b(G:)390 2507 y(G:\\>)g(CD)g
(\\usr\\joe\\work29k)390 2715 y(G:\\USR\\JOE\\WORK29K>)c(EBMON)390
2818 y(Am29000)j(PC)h(Coprocessor)e(Board)h(Monitor,)g(version)f
(3.0-18)390 2922 y(Copyright)g(1990)i(Advanced)e(Micro)i(Devices,)e
(Inc.)390 3026 y(Written)h(by)h(Gibbons)f(and)h(Associates,)d(Inc.)390
3233 y(Enter)i('?')h(or)g('H')g(for)g(help)390 3441 y(PC)g(Coprocessor)
e(Type)142 b(=)47 b(EB29K)390 3545 y(I/O)g(Base)667 b(=)47
b(0x208)390 3649 y(Memory)f(Base)524 b(=)47 b(0xd0000)390
3856 y(Data)g(Memory)f(Size)285 b(=)47 b(2048KB)390 3960
y(Available)e(I-RAM)i(Range)f(=)h(0x8000)g(to)g(0x1fffff)390
4064 y(Available)e(D-RAM)i(Range)f(=)h(0x80002000)e(to)j(0x801fffff)390
4271 y(PageSize)666 b(=)47 b(0x400)390 4375 y(Register)f(Stack)g(Size)
142 b(=)47 b(0x800)390 4479 y(Memory)f(Stack)g(Size)238
b(=)47 b(0x1800)390 4686 y(CPU)g(PRL)715 b(=)47 b(0x3)390
4790 y(Am29027)f(Available)236 b(=)47 b(No)390 4894 y(Byte)g(Write)f
(Available)93 b(=)47 b(Yes)390 5101 y(#)g(~.)275 5230
y Fu(Then)42 b(exit)i(the)g Fo(cu)f Fu(or)h Fo(tip)f
Fu(program)h(\(done)g(in)e(the)i(example)g(b)m(y)f(t)m(yping)h
Fo(~.)f Fu(at)h(the)g Fo(EBMON)150 5340 y Fu(prompt\).)c
Fo(EBMON)29 b Fu(k)m(eeps)i(running,)d(ready)i(for)g(GDB)i(to)f(tak)m
(e)h(o)m(v)m(er.)p eop
%%Page: 129 131
129 130 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(129)275 299 y(F)-8
b(or)39 b(this)f(example,)j(w)m(e'v)m(e)f(assumed)e(what)h(is)f
(probably)f(the)i(most)g(con)m(v)m(enien)m(t)h(w)m(a)m(y)g(to)g(mak)m
(e)150 408 y(sure)26 b(the)h(same)h(29K)f(program)g(is)f(on)h(b)s(oth)f
(the)h(PC)f(and)h(the)g(Unix)e(system:)40 b(a)27 b(PC/NFS)g(connection)
150 518 y(that)i(establishes)e(\\driv)m(e)h Fo(G:)p Fu(")g(on)h(the)f
(PC)g(as)h(a)g(\014le)e(system)i(on)f(the)h(Unix)e(host.)40
b(If)28 b(y)m(ou)h(do)f(not)h(ha)m(v)m(e)150 628 y(PC/NFS)36
b(or)g(something)f(similar)e(connecting)j(the)g(t)m(w)m(o)i(systems,)f
(y)m(ou)f(m)m(ust)g(arrange)g(some)h(other)150 737 y(w)m(a)m(y|p)s
(erhaps)d(\015opp)m(y-disk)g(transfer|of)h(getting)h(the)f(29K)h
(program)f(from)f(the)i(Unix)e(system)h(to)150 847 y(the)c(PC;)f(GDB)h
(do)s(es)f Fr(not)40 b Fu(do)m(wnload)29 b(it)h(o)m(v)m(er)i(the)f
(serial)e(line.)150 1082 y Fk(13.4.4.2)63 b(EB29K)42
b(cross-debugging)275 1280 y Fu(Finally)-8 b(,)21 b Fo(cd)g
Fu(to)i(the)e(directory)g(con)m(taining)g(an)h(image)g(of)f(y)m(our)h
(29K)g(program)f(on)g(the)h(Unix)f(system,)150 1390 y(and)30
b(start)h(GDB|sp)s(ecifying)e(as)i(argumen)m(t)f(the)h(name)f(of)h(y)m
(our)f(29K)h(program:)390 1524 y Fo(cd)47 b(/usr/joe/work29k)390
1628 y(gdb)g(myfoo)275 1751 y Fu(No)m(w)31 b(y)m(ou)f(can)h(use)f(the)h
Fo(target)d Fu(command:)390 1885 y Fo(target)46 b(amd-eb)g(/dev/ttya)f
(9600)i(MYFOO)150 2025 y Fu(In)40 b(this)f(example,)k(w)m(e'v)m(e)e
(assumed)f(y)m(our)g(program)g(is)g(in)f(a)i(\014le)e(called)h(`)p
Fo(myfoo)p Fu('.)69 b(Note)42 b(that)f(the)150 2135 y(\014lename)30
b(giv)m(en)h(as)g(the)g(last)g(argumen)m(t)g(to)h Fo(target)d(amd-eb)g
Fu(should)g(b)s(e)h(the)h(name)g(of)g(the)g(program)150
2244 y(as)g(it)g(app)s(ears)g(to)h(DOS.)f(In)f(our)h(example)g(this)f
(is)g(simply)f Fo(MYFOO)p Fu(,)h(but)h(in)f(general)h(it)g(can)h
(include)d(a)150 2354 y(DOS)i(path,)g(and)f(dep)s(ending)e(on)j(y)m
(our)g(transfer)f(mec)m(hanism)h(ma)m(y)g(not)g(resem)m(ble)g(the)g
(name)g(on)g(the)150 2463 y(Unix)e(side.)275 2604 y(A)m(t)37
b(this)f(p)s(oin)m(t,)i(y)m(ou)f(can)g(set)g(an)m(y)h(breakp)s(oin)m
(ts)d(y)m(ou)i(wish;)i(when)d(y)m(ou)h(are)g(ready)g(to)h(see)f(y)m
(our)150 2713 y(program)30 b(run)f(on)h(the)h(29K)g(b)s(oard,)e(use)h
(the)h(GDB)h(command)e Fo(run)p Fu(.)275 2853 y(T)-8
b(o)30 b(stop)h(debugging)e(the)i(remote)g(program,)f(use)h(the)f(GDB)i
Fo(detach)c Fu(command.)275 2993 y(T)-8 b(o)36 b(return)e(con)m(trol)i
(of)g(the)g(PC)f(to)i(its)e(console,)i(use)f Fo(tip)f
Fu(or)g Fo(cu)g Fu(once)i(again,)g(after)f(y)m(our)g(GDB)150
3103 y(session)26 b(has)h(concluded,)f(to)i(attac)m(h)h(to)f
Fo(EBMON)p Fu(.)38 b(Y)-8 b(ou)27 b(can)g(then)g(t)m(yp)s(e)g(the)g
(command)g Fo(q)f Fu(to)i(sh)m(ut)e(do)m(wn)150 3212
y Fo(EBMON)p Fu(,)34 b(returning)e(con)m(trol)j(to)f(the)h(DOS)e
(command-line)g(in)m(terpreter.)51 b(T)m(yp)s(e)34 b
Fo(CTTY)29 b(con)k Fu(to)i(return)150 3322 y(command)30
b(input)f(to)i(the)f(main)g(DOS)f(console,)i(and)f(t)m(yp)s(e)h
Fo(~)p Fl(.)e Fu(to)j(lea)m(v)m(e)f Fo(tip)f Fu(or)g
Fo(cu)p Fu(.)150 3557 y Fk(13.4.4.3)63 b(Remote)40 b(log)275
3755 y Fu(The)34 b Fo(target)29 b(amd-eb)k Fu(command)i(creates)h(a)g
(\014le)e(`)p Fo(eb.log)p Fu(')g(in)f(the)j(curren)m(t)e(w)m(orking)h
(directory)-8 b(,)150 3865 y(to)34 b(help)d(debug)i(problems)e(with)h
(the)h(connection.)49 b(`)p Fo(eb.log)p Fu(')32 b(records)h(all)f(the)h
(output)g(from)f Fo(EBMON)p Fu(,)150 3975 y(including)37
b(ec)m(ho)s(es)k(of)g(the)f(commands)g(sen)m(t)h(to)g(it.)70
b(Running)38 b(`)p Fo(tail)29 b(-f)p Fu(')40 b(on)g(this)f(\014le)h(in)
f(another)150 4084 y(windo)m(w)25 b(often)i(helps)e(to)i(understand)d
(trouble)i(with)f Fo(EBMON)p Fu(,)h(or)g(unexp)s(ected)g(ev)m(en)m(ts)i
(on)e(the)h(PC)f(side)150 4194 y(of)31 b(the)f(connection.)150
4429 y Fk(13.4.5)63 b(GDB)41 b(with)f(a)h(T)-10 b(andem)40
b(ST2000)275 4627 y Fu(T)-8 b(o)33 b(connect)h(y)m(our)f(ST2000)h(to)g
(the)f(host)g(system,)h(see)g(the)f(man)m(ufacturer's)g(man)m(ual.)48
b(Once)33 b(the)150 4737 y(ST2000)e(is)f(ph)m(ysically)e(attac)m(hed,)k
(y)m(ou)f(can)g(run:)390 4871 y Fo(target)46 b(st2000)g
Fn(dev)56 b(sp)s(eed)150 5011 y Fu(to)29 b(establish)e(it)i(as)f(y)m
(our)h(debugging)f(en)m(vironmen)m(t.)39 b Fn(dev)e Fu(is)27
b(normally)g(the)i(name)g(of)f(a)h(serial)f(device,)150
5121 y(suc)m(h)f(as)g(`)p Fo(/dev/ttya)p Fu(',)e(connected)j(to)g(the)f
(ST2000)h(via)e(a)h(serial)f(line.)38 b(Y)-8 b(ou)27
b(can)g(instead)g(sp)s(ecify)e Fn(dev)150 5230 y Fu(as)37
b(a)g(TCP)f(connection)g(\(for)h(example,)h(to)g(a)f(serial)e(line)g
(attac)m(hed)j(via)f(a)g(terminal)e(concen)m(trator\))150
5340 y(using)29 b(the)h(syn)m(tax)h Fn(hostname)5 b Fo(:)p
Fn(p)s(ortn)m(um)m(b)s(er)i Fu(.)p eop
%%Page: 130 132
130 131 bop 150 -116 a Fu(130)2599 b(Debugging)31 b(with)e(GDB)275
299 y(The)37 b Fo(load)g Fu(and)h Fo(attach)e Fu(commands)i(are)g
Fr(not)47 b Fu(de\014ned)37 b(for)h(this)f(target;)44
b(y)m(ou)38 b(m)m(ust)g(load)g(y)m(our)150 408 y(program)j(in)m(to)h
(the)g(ST2000)g(as)g(y)m(ou)g(normally)e(w)m(ould)g(for)h(standalone)h
(op)s(eration.)73 b(GDB)43 b(reads)150 518 y(debugging)23
b(information)g(\(suc)m(h)h(as)g(sym)m(b)s(ols\))f(from)h(a)g
(separate,)j(debugging)c(v)m(ersion)h(of)g(the)g(program)150
628 y(a)m(v)-5 b(ailable)30 b(on)g(y)m(our)g(host)h(computer.)275
772 y(These)24 b(auxiliary)e(GDB)k(commands)f(are)g(a)m(v)-5
b(ailable)24 b(to)i(help)d(y)m(ou)i(with)e(the)i(ST2000)h(en)m
(vironmen)m(t:)150 946 y Fo(st2000)j Fn(command)630 1056
y Fu(Send)d(a)i Fn(command)i Fu(to)e(the)g(STDBUG)g(monitor.)39
b(See)27 b(the)g(man)m(ufacturer's)h(man)m(ual)e(for)630
1166 y(a)m(v)-5 b(ailable)30 b(commands.)150 1335 y Fo(connect)144
b Fu(Connect)37 b(the)g(con)m(trolling)f(terminal)g(to)i(the)f(STDBUG)g
(command)g(monitor.)60 b(When)630 1444 y(y)m(ou)44 b(are)h(done)f(in)m
(teracting)g(with)e(STDBUG,)j(t)m(yping)f(either)f(of)h(t)m(w)m(o)i(c)m
(haracter)f(se-)630 1554 y(quences)22 b(gets)i(y)m(ou)f(bac)m(k)g(to)g
(the)g(GDB)h(command)e(prompt:)2747 1551 y Fj(h)p 2771
1498 151 4 v 2771 1554 a Fi(RET)p 2771 1569 V 2918 1551
a Fj(i)2948 1554 y Fo(~)p Fl(.)f Fu(\(Return,)j(follo)m(w)m(ed)630
1664 y(b)m(y)30 b(tilde)f(and)h(p)s(erio)s(d\))f(or)1570
1661 y Fj(h)p 1594 1608 V 1594 1664 a Fi(RET)p 1594 1679
V 1741 1661 a Fj(i)1771 1664 y Fo(~)1819 1661 y Fj(h)p
1843 1608 114 4 v 1843 1664 a Fi(C-d)p 1843 1679 V 1952
1661 a Fj(i)2012 1664 y Fu(\(Return,)h(follo)m(w)m(ed)g(b)m(y)h(tilde)e
(and)h(con)m(trol-D\).)150 1908 y Fk(13.4.6)63 b(GDB)41
b(and)g(VxW)-10 b(orks)275 2110 y Fu(GDB)45 b(enables)e(dev)m(elop)s
(ers)g(to)i(spa)m(wn)e(and)h(debug)f(tasks)i(running)c(on)j(net)m(w)m
(ork)m(ed)h(VxW)-8 b(orks)150 2220 y(targets)30 b(from)e(a)h(Unix)e
(host.)40 b(Already-running)25 b(tasks)k(spa)m(wned)f(from)g(the)g(VxW)
-8 b(orks)30 b(shell)c(can)j(also)150 2329 y(b)s(e)e(debugged.)40
b(GDB)29 b(uses)e(co)s(de)h(that)h(runs)d(on)i(b)s(oth)f(the)h(Unix)f
(host)h(and)f(on)h(the)g(VxW)-8 b(orks)29 b(target.)150
2439 y(The)f(program)h Fo(gdb)f Fu(is)g(installed)f(and)h(executed)i
(on)e(the)h(Unix)f(host.)40 b(\(It)30 b(ma)m(y)f(b)s(e)g(installed)d
(with)i(the)150 2548 y(name)i Fo(vxgdb)p Fu(,)g(to)h(distinguish)26
b(it)k(from)g(a)h(GDB)g(for)g(debugging)e(programs)h(on)g(the)h(host)f
(itself.\))150 2723 y Fo(VxWorks-timeout)c Fn(args)630
2832 y Fu(All)38 b(VxW)-8 b(orks-based)41 b(targets)g(no)m(w)f(supp)s
(ort)d(the)j(option)f Fo(vxworks-timeout)p Fu(.)65 b(This)630
2942 y(option)26 b(is)f(set)h(b)m(y)g(the)g(user,)h(and)e
Fn(args)31 b Fu(represen)m(ts)26 b(the)g(n)m(um)m(b)s(er)f(of)h
(seconds)g(GDB)h(w)m(aits)630 3051 y(for)39 b(resp)s(onses)f(to)h(rp)s
(c's.)66 b(Y)-8 b(ou)39 b(migh)m(t)g(use)f(this)g(if)g(y)m(our)h(VxW)-8
b(orks)40 b(target)g(is)e(a)h(slo)m(w)630 3161 y(soft)m(w)m(are)32
b(sim)m(ulator)d(or)h(is)g(on)g(the)h(far)f(side)f(of)i(a)f(thin)f(net)
m(w)m(ork)j(line.)275 3335 y(The)25 b(follo)m(wing)g(information)g(on)h
(connecting)h(to)g(VxW)-8 b(orks)27 b(w)m(as)g(curren)m(t)f(when)g
(this)f(man)m(ual)h(w)m(as)150 3445 y(pro)s(duced;)j(new)m(er)h
(releases)h(of)f(VxW)-8 b(orks)32 b(ma)m(y)f(use)f(revised)f(pro)s
(cedures.)275 3589 y(T)-8 b(o)22 b(use)g(GDB)i(with)d(VxW)-8
b(orks,)24 b(y)m(ou)f(m)m(ust)f(rebuild)d(y)m(our)k(VxW)-8
b(orks)23 b(k)m(ernel)f(to)h(include)d(the)i(remote)150
3699 y(debugging)31 b(in)m(terface)i(routines)f(in)f(the)i(VxW)-8
b(orks)33 b(library)d(`)p Fo(rdb.a)p Fu('.)46 b(T)-8
b(o)33 b(do)f(this,)g(de\014ne)g Fo(INCLUDE_)150 3809
y(RDB)22 b Fu(in)f(the)i(VxW)-8 b(orks)24 b(con\014guration)e(\014le)g
(`)p Fo(configAll.h)p Fu(')e(and)j(rebuild)c(y)m(our)k(VxW)-8
b(orks)24 b(k)m(ernel.)37 b(The)150 3918 y(resulting)f(k)m(ernel)h(con)
m(tains)h(`)p Fo(rdb.a)p Fu(',)i(and)d(spa)m(wns)g(the)h(source)g
(debugging)f(task)h Fo(tRdbTask)e Fu(when)150 4028 y(VxW)-8
b(orks)33 b(is)e(b)s(o)s(oted.)46 b(F)-8 b(or)32 b(more)h(information)d
(on)i(con\014guring)f(and)g(remaking)g(VxW)-8 b(orks,)34
b(see)f(the)150 4137 y(man)m(ufacturer's)d(man)m(ual.)275
4282 y(Once)44 b(y)m(ou)h(ha)m(v)m(e)h(included)c(`)p
Fo(rdb.a)p Fu(')i(in)f(y)m(our)i(VxW)-8 b(orks)45 b(system)g(image)g
(and)f(set)h(y)m(our)g(Unix)150 4391 y(execution)31 b(searc)m(h)h(path)
f(to)h(\014nd)d(GDB,)k(y)m(ou)e(are)g(ready)g(to)h(run)e(GDB.)i(F)-8
b(rom)32 b(y)m(our)f(Unix)f(host,)h(run)150 4501 y Fo(gdb)e
Fu(\(or)i Fo(vxgdb)p Fu(,)e(dep)s(ending)f(on)j(y)m(our)f
(installation\).)275 4645 y(GDB)h(comes)g(up)f(sho)m(wing)f(the)i
(prompt:)390 4784 y Fo(\(vxgdb\))150 5028 y Fk(13.4.6.1)63
b(Connecting)42 b(to)f(VxW)-10 b(orks)275 5230 y Fu(The)31
b(GDB)j(command)e Fo(target)e Fu(lets)i(y)m(ou)h(connect)g(to)g(a)g
(VxW)-8 b(orks)33 b(target)h(on)e(the)g(net)m(w)m(ork.)47
b(T)-8 b(o)150 5340 y(connect)31 b(to)g(a)g(target)h(whose)e(host)h
(name)f(is)g(\\)p Fo(tt)p Fu(",)h(t)m(yp)s(e:)p eop
%%Page: 131 133
131 132 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(131)390 299 y Fo(\(vxgdb\))46
b(target)g(vxworks)g(tt)275 430 y Fu(GDB)31 b(displa)m(ys)d(messages)k
(lik)m(e)d(these:)390 572 y Fo(Attaching)45 b(remote)h(machine)g
(across)g(net...)390 676 y(Connected)f(to)i(tt.)275 787
y Fu(GDB)38 b(then)f(attempts)i(to)f(read)f(the)h(sym)m(b)s(ol)e
(tables)h(of)h(an)m(y)f(ob)5 b(ject)39 b(mo)s(dules)c(loaded)i(in)m(to)
h(the)150 896 y(VxW)-8 b(orks)23 b(target)h(since)e(it)g(w)m(as)h(last)
f(b)s(o)s(oted.)38 b(GDB)23 b(lo)s(cates)g(these)g(\014les)f(b)m(y)g
(searc)m(hing)g(the)h(directories)150 1006 y(listed)h(in)g(the)h
(command)g(searc)m(h)h(path)f(\(see)i(Section)e(4.4)h([Y)-8
b(our)26 b(program's)f(en)m(vironmen)m(t],)h(page)g(21\);)150
1115 y(if)j(it)h(fails)f(to)i(\014nd)e(an)h(ob)5 b(ject)32
b(\014le,)d(it)h(displa)m(ys)f(a)h(message)i(suc)m(h)e(as:)390
1258 y Fo(prog.o:)46 b(No)h(such)g(file)f(or)h(directory.)275
1406 y Fu(When)38 b(this)g(happ)s(ens,)i(add)f(the)g(appropriate)f
(directory)h(to)h(the)f(searc)m(h)h(path)f(with)f(the)h(GDB)150
1515 y(command)30 b Fo(path)p Fu(,)g(and)f(execute)j(the)f
Fo(target)d Fu(command)j(again.)150 1767 y Fk(13.4.6.2)63
b(VxW)-10 b(orks)41 b(do)m(wnload)275 1973 y Fu(If)27
b(y)m(ou)i(ha)m(v)m(e)g(connected)h(to)f(the)f(VxW)-8
b(orks)29 b(target)h(and)e(y)m(ou)g(w)m(an)m(t)h(to)g(debug)f(an)g(ob)5
b(ject)29 b(that)g(has)150 2083 y(not)36 b(y)m(et)h(b)s(een)e(loaded,)i
(y)m(ou)g(can)f(use)f(the)h(GDB)h Fo(load)e Fu(command)h(to)g(do)m
(wnload)f(a)i(\014le)e(from)g(Unix)150 2192 y(to)f(VxW)-8
b(orks)34 b(incremen)m(tally)-8 b(.)48 b(The)32 b(ob)5
b(ject)34 b(\014le)e(giv)m(en)h(as)h(an)f(argumen)m(t)g(to)h(the)f
Fo(load)f Fu(command)h(is)150 2302 y(actually)k(op)s(ened)g(t)m(wice:)
55 b(\014rst)37 b(b)m(y)g(the)h(VxW)-8 b(orks)38 b(target)h(in)d(order)
h(to)h(do)m(wnload)f(the)h(co)s(de,)h(then)150 2411 y(b)m(y)45
b(GDB)g(in)f(order)g(to)h(read)g(the)g(sym)m(b)s(ol)e(table.)84
b(This)43 b(can)i(lead)f(to)i(problems)d(if)g(the)i(curren)m(t)150
2521 y(w)m(orking)27 b(directories)f(on)i(the)g(t)m(w)m(o)h(systems)e
(di\013er.)39 b(If)27 b(b)s(oth)g(systems)g(ha)m(v)m(e)i(NFS)e(moun)m
(ted)h(the)g(same)150 2631 y(\014lesystems,)f(y)m(ou)f(can)h(a)m(v)m
(oid)g(these)g(problems)d(b)m(y)i(using)f(absolute)h(paths.)39
b(Otherwise,)26 b(it)g(is)g(simplest)150 2740 y(to)e(set)h(the)f(w)m
(orking)f(directory)g(on)g(b)s(oth)g(systems)h(to)h(the)f(directory)f
(in)f(whic)m(h)h(the)g(ob)5 b(ject)25 b(\014le)e(resides,)150
2850 y(and)41 b(then)g(to)h(reference)f(the)h(\014le)e(b)m(y)h(its)g
(name,)j(without)c(an)m(y)i(path.)73 b(F)-8 b(or)42 b(instance,)i(a)d
(program)150 2959 y(`)p Fo(prog.o)p Fu(')27 b(ma)m(y)i(reside)e(in)g(`)
p Fn(vxpath)p Fo(/vw/demo/rdb)p Fu(')f(in)h(VxW)-8 b(orks)29
b(and)f(in)f(`)p Fn(hostpath)p Fo(/vw/demo/rdb)p Fu(')150
3069 y(on)j(the)h(host.)41 b(T)-8 b(o)30 b(load)g(this)g(program,)g(t)m
(yp)s(e)h(this)e(on)h(VxW)-8 b(orks:)390 3211 y Fo(->)47
b(cd)g(")p Fn(vxpath)p Fo(/vw/demo/rdb")275 3359 y Fu(v)30
b(Then,)f(in)h(GDB,)h(t)m(yp)s(e:)390 3502 y Fo(\(vxgdb\))46
b(cd)h Fn(hostpath)p Fo(/vw/demo/rdb)390 3605 y(\(vxgdb\))f(load)g
(prog.o)275 3754 y Fu(GDB)31 b(displa)m(ys)d(a)j(resp)s(onse)f(similar)
d(to)k(this:)390 3896 y Fo(Reading)46 b(symbol)g(data)h(from)f
(wherever/vw/demo/rdb/prog)o(.o..)o(.)c(done.)275 4044
y Fu(Y)-8 b(ou)25 b(can)h(also)f(use)g(the)g Fo(load)f
Fu(command)h(to)h(reload)e(an)i(ob)5 b(ject)26 b(mo)s(dule)d(after)j
(editing)e(and)g(recom-)150 4154 y(piling)i(the)j(corresp)s(onding)e
(source)i(\014le.)39 b(Note)30 b(that)g(this)d(mak)m(es)j(GDB)g(delete)
f(all)f(curren)m(tly-de\014ned)150 4263 y(breakp)s(oin)m(ts,)g
(auto-displa)m(ys,)h(and)f(con)m(v)m(enience)i(v)-5 b(ariables,)28
b(and)g(to)i(clear)f(the)g(v)-5 b(alue)28 b(history)-8
b(.)39 b(\(This)150 4373 y(is)25 b(necessary)i(in)e(order)h(to)h
(preserv)m(e)f(the)h(in)m(tegrit)m(y)f(of)g(debugger)g(data)h
(structures)f(that)h(reference)g(the)150 4482 y(target)32
b(system's)f(sym)m(b)s(ol)e(table.\))150 4734 y Fk(13.4.6.3)63
b(Running)42 b(tasks)275 4940 y Fu(Y)-8 b(ou)30 b(can)h(also)f(attac)m
(h)j(to)e(an)f(existing)f(task)i(using)e(the)i Fo(attach)d
Fu(command)j(as)f(follo)m(ws:)390 5082 y Fo(\(vxgdb\))46
b(attach)g Fn(task)150 5230 y Fu(where)36 b Fn(task)43
b Fu(is)36 b(the)h(VxW)-8 b(orks)38 b(hexadecimal)e(task)i(ID.)f(The)f
(task)i(can)f(b)s(e)f(running)f(or)h(susp)s(ended)150
5340 y(when)29 b(y)m(ou)i(attac)m(h)h(to)g(it.)40 b(Running)28
b(tasks)j(are)f(susp)s(ended)e(at)j(the)g(time)f(of)g(attac)m(hmen)m
(t.)p eop
%%Page: 132 134
132 133 bop 150 -116 a Fu(132)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fk(13.4.7)63 b(GDB)41 b(and)g(Sparclet)275 502
y Fu(GDB)34 b(enables)f(dev)m(elop)s(ers)g(to)h(debug)f(tasks)h
(running)d(on)i(Sparclet)g(targets)i(from)e(a)h(Unix)f(host.)150
612 y(GDB)f(uses)e(co)s(de)h(that)h(runs)d(on)i(b)s(oth)f(the)h(Unix)e
(host)i(and)f(on)h(the)g(Sparclet)f(target.)44 b(The)30
b(program)150 722 y Fo(gdb)f Fu(is)h(installed)e(and)i(executed)h(on)f
(the)h(Unix)e(host.)150 897 y Fo(timeout)f Fn(args)630
1007 y Fu(GDB)k(no)m(w)e(supp)s(orts)f(the)i(option)f
Fo(remotetimeout)p Fu(.)38 b(This)28 b(option)i(is)g(set)h(b)m(y)g(the)
f(user,)630 1116 y(and)g Fn(args)k Fu(represen)m(ts)c(the)h(n)m(um)m(b)
s(er)e(of)i(seconds)f(GDB)h(w)m(aits)g(for)f(resp)s(onses.)275
1323 y(When)j(compiling)e(for)i(debugging,)h(include)d(the)j(options)e
Fo(")p Fu(-g)p Fo(")i Fu(to)g(get)h(debug)e(information)f(and)150
1432 y Fo(")p Fu(-Ttext)p Fo(")d Fu(to)g(relo)s(cate)h(the)f(program)f
(to)i(where)e(y)m(ou)h(wish)e(to)i(load)f(it)g(on)h(the)g(target.)42
b(Y)-8 b(ou)29 b(ma)m(y)g(also)150 1542 y(w)m(an)m(t)i(to)g(add)f(the)h
(options)e Fo(")p Fu(-n)p Fo(")h Fu(or)g Fo(")p Fu(-N)p
Fo(")h Fu(in)e(order)g(to)j(reduce)e(the)g(size)g(of)h(the)g(sections.)
390 1681 y Fo(sparclet-aout-gcc)43 b(prog.c)j(-Ttext)g(0x12010000)f(-g)
i(-o)h(prog)e(-N)275 1827 y Fu(Y)-8 b(ou)30 b(can)h(use)f(ob)5
b(jdump)29 b(to)i(v)m(erify)e(that)i(the)g(addresses)f(are)g(what)h(y)m
(ou)f(in)m(tended.)390 1966 y Fo(sparclet-aout-objdump)42
b(--headers)j(--syms)h(prog)275 2112 y Fu(Once)c(y)m(ou)i(ha)m(v)m(e)g
(set)f(y)m(our)g(Unix)f(execution)h(searc)m(h)g(path)g(to)g(\014nd)f
(GDB,)i(y)m(ou)f(are)g(ready)g(to)150 2221 y(run)h(GDB.)j(F)-8
b(rom)45 b(y)m(our)h(Unix)e(host,)49 b(run)44 b Fo(gdb)h
Fu(\(or)g Fo(sparclet-aout-gdb)p Fu(,)g(dep)s(ending)e(on)i(y)m(our)150
2331 y(installation\).)275 2476 y(GDB)31 b(comes)g(up)f(sho)m(wing)f
(the)i(prompt:)390 2616 y Fo(\(gdbslet\))150 2862 y Fk(13.4.7.1)63
b(Setting)42 b(\014le)f(to)g(debug)275 3065 y Fu(The)29
b(GDB)j(command)e Fo(file)f Fu(lets)h(y)m(ou)h(c)m(ho)s(ose)h(with)d
(program)h(to)h(debug.)390 3205 y Fo(\(gdbslet\))45 b(file)i(prog)275
3333 y Fu(GDB)24 b(then)f(attempts)h(to)g(read)f(the)g(sym)m(b)s(ol)f
(table)h(of)h(`)p Fo(prog)p Fu('.)37 b(GDB)25 b(lo)s(cates)e(the)h
(\014le)e(b)m(y)h(searc)m(hing)150 3443 y(the)41 b(directories)e
(listed)g(in)h(the)g(command)h(searc)m(h)g(path.)71 b(If)40
b(the)h(\014le)e(w)m(as)i(compiled)e(with)h(debug)150
3552 y(information)d(\(option)i Fo(")p Fu(-g)p Fo(")p
Fu(\),)j(source)d(\014les)f(will)e(b)s(e)j(searc)m(hed)g(as)g(w)m(ell.)
66 b(GDB)40 b(lo)s(cates)g(the)f(source)150 3662 y(\014les)33
b(b)m(y)h(searc)m(hing)g(the)g(directories)f(listed)g(in)g(the)h
(directory)g(searc)m(h)h(path)e(\(see)i(Section)f(4.4)i([Y)-8
b(our)150 3771 y(program's)30 b(en)m(vironmen)m(t],)h(page)g(21\).)42
b(If)30 b(it)g(fails)e(to)k(\014nd)c(a)j(\014le,)f(it)g(displa)m(ys)e
(a)j(message)h(suc)m(h)e(as:)390 3911 y Fo(prog:)46 b(No)i(such)e(file)
h(or)g(directory.)275 4056 y Fu(When)32 b(this)f(happ)s(ens,)g(add)h
(the)h(appropriate)e(directories)g(to)j(the)e(searc)m(h)h(paths)f(with)
f(the)i(GDB)150 4166 y(commands)d Fo(path)f Fu(and)h
Fo(dir)p Fu(,)g(and)f(execute)j(the)f Fo(target)d Fu(command)j(again.)
150 4412 y Fk(13.4.7.2)63 b(Connecting)42 b(to)f(Sparclet)275
4615 y Fu(The)23 b(GDB)j(command)e Fo(target)f Fu(lets)h(y)m(ou)h
(connect)g(to)g(a)g(Sparclet)f(target.)40 b(T)-8 b(o)25
b(connect)g(to)h(a)e(target)150 4725 y(on)30 b(serial)f(p)s(ort)h(\\)p
Fo(ttya)p Fu(",)h(t)m(yp)s(e:)390 4865 y Fo(\(gdbslet\))45
b(target)h(sparclet)g(/dev/ttya)390 4968 y(Remote)g(target)g(sparclet)g
(connected)f(to)i(/dev/ttya)390 5072 y(main)g(\(\))g(at)g(../prog.c:3)
275 5200 y Fu(GDB)31 b(displa)m(ys)d(messages)k(lik)m(e)d(these:)390
5340 y Fo(Connected)45 b(to)i(ttya.)p eop
%%Page: 133 135
133 134 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(133)150 299 y Fk(13.4.7.3)63
b(Sparclet)41 b(do)m(wnload)275 491 y Fu(Once)22 b(connected)i(to)f
(the)g(Sparclet)f(target,)k(y)m(ou)d(can)g(use)g(the)g(GDB)g
Fo(load)f Fu(command)g(to)i(do)m(wnload)150 600 y(the)43
b(\014le)f(from)g(the)h(host)g(to)h(the)f(target.)79
b(The)43 b(\014le)f(name)g(and)h(load)f(o\013set)i(should)d(b)s(e)h
(giv)m(en)h(as)150 710 y(argumen)m(ts)26 b(to)g(the)g
Fo(load)e Fu(command.)39 b(Since)25 b(the)g(\014le)g(format)h(is)f
(aout,)i(the)f(program)f(m)m(ust)h(b)s(e)e(loaded)150
819 y(to)39 b(the)g(starting)f(address.)64 b(Y)-8 b(ou)39
b(can)g(use)f(ob)5 b(jdump)37 b(to)i(\014nd)e(out)i(what)f(this)f(v)-5
b(alue)38 b(is.)64 b(The)38 b(load)150 929 y(o\013set)30
b(is)e(an)h(o\013set)h(whic)m(h)e(is)g(added)g(to)i(the)f(VMA)h
(\(virtual)e(memory)g(address\))h(of)g(eac)m(h)h(of)g(the)f(\014le's)
150 1038 y(sections.)59 b(F)-8 b(or)38 b(instance,)g(if)d(the)i
(program)f(`)p Fo(prog)p Fu(')g(w)m(as)h(link)m(ed)e(to)i(text)h
(address)d(0x1201000,)42 b(with)150 1148 y(data)31 b(at)g(0x12010160)k
(and)29 b(bss)h(at)h(0x12010170,)k(in)29 b(GDB,)i(t)m(yp)s(e:)390
1276 y Fo(\(gdbslet\))45 b(load)i(prog)g(0x12010000)390
1380 y(Loading)f(section)g(.text,)g(size)g(0xdb0)h(vma)g(0x12010000)275
1513 y Fu(If)35 b(the)i(co)s(de)f(is)f(loaded)h(at)h(a)f(di\013eren)m
(t)g(address)f(then)h(what)g(the)g(program)g(w)m(as)h(link)m(ed)d(to,)
39 b(y)m(ou)150 1623 y(ma)m(y)30 b(need)e(to)i(use)f(the)g
Fo(section)e Fu(and)h Fo(add-symbol-file)d Fu(commands)j(to)i(tell)e
(GDB)i(where)f(to)g(map)150 1732 y(the)i(sym)m(b)s(ol)e(table.)150
1954 y Fk(13.4.7.4)63 b(Running)42 b(and)f(debugging)275
2145 y Fu(Y)-8 b(ou)39 b(can)g(no)m(w)h(b)s(egin)d(debugging)h(the)i
(task)f(using)f(GDB's)i(execution)f(con)m(trol)h(commands,)h
Fo(b)p Fu(,)150 2255 y Fo(step)p Fu(,)29 b Fo(run)p Fu(,)h(etc.)42
b(See)31 b(the)f(GDB)i(man)m(ual)d(for)i(the)f(list)f(of)i(commands.)
390 2383 y Fo(\(gdbslet\))45 b(b)j(main)390 2486 y(Breakpoint)d(1)i(at)
h(0x12010000:)c(file)j(prog.c,)f(line)g(3.)390 2590 y(\(gdbslet\))f
(run)390 2694 y(Starting)h(program:)f(prog)390 2798 y(Breakpoint)g(1,)i
(main)g(\(argc=1,)e(argv=0xeffff21c\))f(at)j(prog.c:3)390
2901 y(3)382 b(char)46 b(*symarg)g(=)h(0;)390 3005 y(\(gdbslet\))e
(step)390 3109 y(4)382 b(char)46 b(*execarg)g(=)h("hello!";)390
3213 y(\(gdbslet\))150 3434 y Fk(13.4.8)63 b(GDB)41 b(and)g(Hitac)m(hi)
e(micropro)s(cessors)275 3626 y Fu(GDB)31 b(needs)f(to)h(kno)m(w)f
(these)h(things)f(to)h(talk)f(to)h(y)m(our)f(Hitac)m(hi)h(SH,)f
(H8/300,)j(or)d(H8/500:)199 3759 y(1.)61 b(that)43 b(y)m(ou)f(w)m(an)m
(t)h(to)g(use)f(`)p Fo(target)28 b(hms)p Fu(',)45 b(the)d(remote)h
(debugging)e(in)m(terface)i(for)f(Hitac)m(hi)g(mi-)330
3869 y(cropro)s(cessors,)d(or)d(`)p Fo(target)29 b(e7000)p
Fu(',)38 b(the)f(in-circuit)d(em)m(ulator)j(for)g(the)g(Hitac)m(hi)f
(SH)h(and)f(the)330 3978 y(Hitac)m(hi)29 b(300H.)h(\(`)p
Fo(target)g(hms)p Fu(')e(is)g(the)h(default)f(when)g(GDB)i(is)e
(con\014gured)g(sp)s(eci\014cally)f(for)i(the)330 4088
y(Hitac)m(hi)h(SH,)g(H8/300,)j(or)e(H8/500.\))199 4222
y(2.)61 b(what)41 b(serial)g(device)g(connects)i(y)m(our)e(host)h(to)g
(y)m(our)g(Hitac)m(hi)f(b)s(oard)g(\(the)h(\014rst)f(serial)f(device)
330 4331 y(a)m(v)-5 b(ailable)30 b(on)g(y)m(our)g(host)h(is)e(the)i
(default\).)199 4465 y(3.)61 b(what)30 b(sp)s(eed)g(to)h(use)f(o)m(v)m
(er)i(the)e(serial)f(device.)150 4686 y Fk(13.4.8.1)63
b(Connecting)42 b(to)f(Hitac)m(hi)e(b)s(oards)275 4878
y Fu(Use)24 b(the)g(sp)s(ecial)f Fo(gdb)g Fu(command)h(`)p
Fo(device)29 b Fn(p)s(ort)r Fu(')24 b(if)f(y)m(ou)h(need)g(to)h
(explicitly)d(set)j(the)f(serial)f(device.)150 4987 y(The)36
b(default)g Fn(p)s(ort)i Fu(is)d(the)i(\014rst)f(a)m(v)-5
b(ailable)36 b(p)s(ort)g(on)g(y)m(our)g(host.)60 b(This)34
b(is)i(only)g(necessary)h(on)f(Unix)150 5097 y(hosts,)31
b(where)e(it)h(is)g(t)m(ypically)f(something)h(lik)m(e)g(`)p
Fo(/dev/ttya)p Fu('.)275 5230 y Fo(gdb)h Fu(has)h(another)h(sp)s(ecial)
e(command)h(to)h(set)g(the)f(comm)m(unications)g(sp)s(eed:)44
b(`)p Fo(speed)29 b Fn(bps)t Fu('.)46 b(This)150 5340
y(command)27 b(also)g(is)g(only)f(used)g(from)h(Unix)f(hosts;)j(on)e
(DOS)g(hosts,)h(set)g(the)f(line)f(sp)s(eed)g(as)i(usual)d(from)p
eop
%%Page: 134 136
134 135 bop 150 -116 a Fu(134)2599 b(Debugging)31 b(with)e(GDB)150
299 y(outside)f(GDB)h(with)e(the)i(DOS)f Fl(mode)f Fu(command)i(\(for)f
(instance,)h(`)p Fo(mode)g(com2:9600,n,8,1,p)p Fu(')24
b(for)29 b(a)150 408 y(9600)j(bps)d(connection\).)275
552 y(The)37 b(`)p Fo(device)p Fu(')g(and)g(`)p Fo(speed)p
Fu(')h(commands)f(are)i(a)m(v)-5 b(ailable)37 b(only)g(when)g(y)m(ou)i
(use)f(a)g(Unix)f(host)h(to)150 662 y(debug)30 b(y)m(our)g(Hitac)m(hi)h
(micropro)s(cessor)e(programs.)41 b(If)30 b(y)m(ou)h(use)f(a)h(DOS)f
(host,)h(GDB)h(dep)s(ends)d(on)h(an)150 771 y(auxiliary)36
b(terminate-and-sta)m(y-residen)m(t)j(program)g(called)e
Fo(asynctsr)f Fu(to)k(comm)m(unicate)f(with)e(the)150
881 y(dev)m(elopmen)m(t)32 b(b)s(oard)g(through)f(a)h(PC)g(serial)f(p)s
(ort.)45 b(Y)-8 b(ou)33 b(m)m(ust)f(also)g(use)f(the)i(DOS)e
Fo(mode)g Fu(command)150 990 y(to)g(set)g(up)e(the)i(serial)e(p)s(ort)h
(on)g(the)h(DOS)f(side.)275 1134 y(The)c(follo)m(wing)g(sample)h
(session)f(illustrates)g(the)h(steps)h(needed)f(to)h(start)g(a)g
(program)f(under)f(GDB)150 1243 y(con)m(trol)43 b(on)f(an)g(H8/300.)79
b(The)41 b(example)h(uses)g(a)h(sample)e(H8/300)k(program)d(called)f(`)
p Fo(t.x)p Fu('.)76 b(The)150 1353 y(pro)s(cedure)29
b(is)h(the)g(same)h(for)f(the)h(Hitac)m(hi)f(SH)g(and)g(the)g(H8/500.)
275 1497 y(First)37 b(ho)s(ok)g(up)g(y)m(our)g(dev)m(elopmen)m(t)h(b)s
(oard.)62 b(In)37 b(this)f(example,)k(w)m(e)e(use)f(a)h(b)s(oard)f
(attac)m(hed)i(to)150 1606 y(serial)33 b(p)s(ort)h Fo(COM2)p
Fu(;)i(if)d(y)m(ou)i(use)f(a)h(di\013eren)m(t)f(serial)f(p)s(ort,)i
(substitute)f(its)f(name)i(in)e(the)i(argumen)m(t)g(of)150
1716 y(the)g Fo(mode)f Fu(command.)54 b(When)34 b(y)m(ou)i(call)e
Fo(asynctsr)p Fu(,)g(the)h(auxiliary)d(comms)j(program)g(used)f(b)m(y)h
(the)150 1825 y(degugger,)26 b(y)m(ou)e(giv)m(e)h(it)e(just)g(the)h(n)m
(umeric)f(part)h(of)g(the)g(serial)f(p)s(ort's)g(name;)j(for)e
(example,)h(`)p Fo(asyncstr)150 1935 y(2)p Fu(')30 b(b)s(elo)m(w)g
(runs)f Fo(asyncstr)f Fu(on)i Fo(COM2)p Fu(.)390 2073
y Fo(C:\\H8300\\TEST>)44 b(asynctsr)h(2)390 2176 y(C:\\H8300\\TEST>)f
(mode)j(com2:9600,n,8,1,p)390 2384 y(Resident)f(portion)f(of)j(MODE)e
(loaded)390 2591 y(COM2:)g(9600,)h(n,)g(8,)g(1,)g(p)390
2833 y Fr(Warning:)i Fu(W)-8 b(e)33 b(ha)m(v)m(e)h(noticed)d(a)i(bug)e
(in)g(PC-NFS)g(that)i(con\015icts)f(with)e Fo(asynctsr)p
Fu(.)43 b(If)390 2937 y(y)m(ou)34 b(also)g(run)f(PC-NFS)h(on)f(y)m(our)
h(DOS)g(host,)h(y)m(ou)f(ma)m(y)h(need)f(to)g(disable)f(it,)h(or)g(ev)m
(en)390 3041 y(b)s(o)s(ot)c(without)g(it,)g(to)h(use)f
Fo(asynctsr)e Fu(to)j(con)m(trol)g(y)m(our)f(dev)m(elopmen)m(t)h(b)s
(oard.)275 3184 y(No)m(w)37 b(that)h(serial)e(comm)m(unications)g(are)h
(set)h(up,)g(and)e(the)h(dev)m(elopmen)m(t)h(b)s(oard)e(is)g
(connected,)150 3294 y(y)m(ou)j(can)g(start)h(up)d(GDB.)j(Call)e
Fo(gdb)g Fu(with)f(the)i(name)g(of)g(y)m(our)g(program)f(as)h(the)g
(argumen)m(t.)67 b Fo(gdb)150 3403 y Fu(prompts)29 b(y)m(ou,)j(as)e
(usual,)f(with)h(the)g(prompt)g(`)p Fo(\(gdb\))p Fu('.)40
b(Use)31 b(t)m(w)m(o)h(sp)s(ecial)d(commands)h(to)h(b)s(egin)e(y)m(our)
150 3513 y(debugging)k(session:)47 b(`)p Fo(target)29
b(hms)p Fu(')34 b(to)h(sp)s(ecify)d(cross-debugging)i(to)h(the)f(Hitac)
m(hi)g(b)s(oard,)g(and)g(the)150 3622 y Fo(load)g Fu(command)i(to)g(do)
m(wnload)e(y)m(our)i(program)f(to)h(the)g(b)s(oard.)55
b Fo(load)34 b Fu(displa)m(ys)g(the)i(names)f(of)h(the)150
3732 y(program's)28 b(sections,)g(and)g(a)g(`)p Fo(*)p
Fu(')g(for)g(eac)m(h)h(2K)f(of)g(data)g(do)m(wnloaded.)39
b(\(If)28 b(y)m(ou)g(w)m(an)m(t)h(to)g(refresh)e(GDB)150
3842 y(data)36 b(on)g(sym)m(b)s(ols)f(or)g(on)h(the)g(executable)g
(\014le)f(without)g(do)m(wnloading,)h(use)f(the)h(GDB)h(commands)150
3951 y Fo(file)j Fu(or)h Fo(symbol-file)p Fu(.)70 b(These)41
b(commands,)i(and)e Fo(load)f Fu(itself,)i(are)g(describ)s(ed)d(in)h
(Section)g(12.1)150 4061 y([Commands)30 b(to)h(sp)s(ecify)e(\014les],)g
(page)j(101.\))390 4198 y Fo(\(eg-C:\\H8300\\TEST\))43
b(gdb)k(t.x)390 4302 y(GDB)g(is)g(free)g(software)e(and)i(you)g(are)g
(welcome)f(to)h(distribute)e(copies)438 4406 y(of)i(it)g(under)f
(certain)g(conditions;)f(type)i("show)f(copying")g(to)h(see)438
4510 y(the)g(conditions.)390 4614 y(There)f(is)i(absolutely)d(no)i
(warranty)e(for)i(GDB;)g(type)f("show)h(warranty")390
4717 y(for)g(details.)390 4821 y(GDB)g(19990707,)e(Copyright)g(1992)i
(Free)g(Software)e(Foundation,)g(Inc...)390 4925 y(\(gdb\))h(target)g
(hms)390 5029 y(Connected)f(to)i(remote)g(H8/300)f(HMS)h(system.)390
5132 y(\(gdb\))f(load)h(t.x)390 5236 y(.text)142 b(:)47
b(0x8000)f(..)i(0xabde)e(***********)390 5340 y(.data)142
b(:)47 b(0xabde)f(..)i(0xad30)e(*)p eop
%%Page: 135 137
135 136 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(135)390 299 y Fo(.stack)94
b(:)47 b(0xf000)f(..)i(0xf014)e(*)275 435 y Fu(A)m(t)34
b(this)f(p)s(oin)m(t,)h(y)m(ou're)h(ready)e(to)i(run)d(or)i(debug)f(y)m
(our)h(program.)51 b(F)-8 b(rom)34 b(here)g(on,)h(y)m(ou)f(can)g(use)
150 545 y(all)h(the)h(usual)e(GDB)j(commands.)56 b(The)36
b Fo(break)e Fu(command)i(sets)g(breakp)s(oin)m(ts;)h(the)f
Fo(run)f Fu(command)150 655 y(starts)f(y)m(our)g(program;)i
Fo(print)d Fu(or)g Fo(x)h Fu(displa)m(y)e(data;)37 b(the)d
Fo(continue)e Fu(command)h(resumes)h(execution)150 764
y(after)k(stopping)d(at)j(a)g(breakp)s(oin)m(t.)59 b(Y)-8
b(ou)38 b(can)f(use)g(the)g Fo(help)f Fu(command)h(at)g(an)m(y)h(time)e
(to)i(\014nd)e(out)150 874 y(more)31 b(ab)s(out)f(GDB)h(commands.)275
1010 y(Remem)m(b)s(er,)39 b(ho)m(w)m(ev)m(er,)h(that)e
Fr(op)-5 b(er)g(ating)41 b(system)k Fu(facilities)36
b(aren't)i(a)m(v)-5 b(ailable)36 b(on)h(y)m(our)h(dev)m(elop-)150
1120 y(men)m(t)29 b(b)s(oard;)f(for)g(example,)g(if)f(y)m(our)i
(program)f(hangs,)g(y)m(ou)h(can't)g(send)e(an)h(in)m(terrupt|but)e(y)m
(ou)j(can)150 1230 y(press)h(the)g Ft(reset)f Fu(switc)m(h!)275
1366 y(Use)h(the)h Ft(reset)e Fu(button)h(on)g(the)g(dev)m(elopmen)m(t)
h(b)s(oard)225 1503 y Fq(\017)60 b Fu(to)34 b(in)m(terrupt)e(y)m(our)i
(program)f(\(don't)h(use)f Fl(ctl-C)f Fu(on)i(the)g(DOS)f(host|it)g
(has)g(no)h(w)m(a)m(y)g(to)g(pass)330 1612 y(an)c(in)m(terrupt)f
(signal)g(to)i(the)g(dev)m(elopmen)m(t)g(b)s(oard\);)f(and)225
1748 y Fq(\017)60 b Fu(to)40 b(return)d(to)j(the)f(GDB)h(command)e
(prompt)g(after)i(y)m(our)e(program)h(\014nishes)e(normally)-8
b(.)64 b(The)330 1857 y(comm)m(unications)21 b(proto)s(col)h(pro)m
(vides)e(no)i(other)g(w)m(a)m(y)g(for)g(GDB)h(to)f(detect)h(program)e
(completion.)275 2020 y(In)31 b(either)h(case,)h(GDB)h(sees)e(the)h
(e\013ect)g(of)g(a)f Ft(reset)f Fu(on)h(the)g(dev)m(elopmen)m(t)h(b)s
(oard)e(as)h(a)h(\\normal)150 2129 y(exit")e(of)f(y)m(our)h(program.)
150 2358 y Fk(13.4.8.2)63 b(Using)43 b(the)e(E7000)g(in-circuit)g(em)m
(ulator)275 2552 y Fu(Y)-8 b(ou)31 b(can)h(use)f(the)g(E7000)i
(in-circuit)c(em)m(ulator)i(to)h(dev)m(elop)f(co)s(de)h(for)f(either)g
(the)g(Hitac)m(hi)g(SH)g(or)150 2662 y(the)h(H8/300H.)j(Use)e(one)f(of)
h(these)f(forms)g(of)g(the)g(`)p Fo(target)d(e7000)p
Fu(')i(command)h(to)h(connect)g(GDB)g(to)150 2771 y(y)m(our)d(E7000:)
150 2934 y Fo(target)f(e7000)g Fn(p)s(ort)i(sp)s(eed)630
3044 y Fu(Use)j(this)e(form)h(if)f(y)m(our)h(E7000)i(is)e(connected)h
(to)g(a)g(serial)e(p)s(ort.)49 b(The)33 b Fn(p)s(ort)h
Fu(argumen)m(t)630 3153 y(iden)m(ti\014es)d(what)h(serial)e(p)s(ort)i
(to)h(use)e(\(for)i(example,)f(`)p Fo(com2)p Fu('\).)46
b(The)31 b(third)f(argumen)m(t)j(is)630 3263 y(the)e(line)d(sp)s(eed)i
(in)f(bits)g(p)s(er)g(second)i(\(for)f(example,)h(`)p
Fo(9600)p Fu('\).)150 3424 y Fo(target)e(e7000)g Fn(hostname)630
3534 y Fu(If)g(y)m(our)g(E7000)h(is)f(installed)d(as)k(a)f(host)h(on)f
(a)g(TCP/IP)f(net)m(w)m(ork,)j(y)m(ou)e(can)h(just)e(sp)s(ecify)630
3643 y(its)i(hostname;)h(GDB)g(uses)f Fo(telnet)f Fu(to)i(connect.)150
3872 y Fk(13.4.8.3)63 b(Sp)s(ecial)42 b(GDB)e(commands)g(for)h(Hitac)m
(hi)f(micros)275 4066 y Fu(Some)30 b(GDB)h(commands)f(are)h(a)m(v)-5
b(ailable)30 b(only)f(on)i(the)f(H8/300)j(or)d(the)h(H8/500)i
(con\014gurations:)150 4282 y Fo(set)c(machine)g(h8300)150
4391 y(set)g(machine)g(h8300h)630 4501 y Fu(Condition)38
b(GDB)j(for)e(one)h(of)g(the)g(t)m(w)m(o)h(v)-5 b(arian)m(ts)40
b(of)g(the)g(H8/300)i(arc)m(hitecture)e(with)630 4610
y(`)p Fo(set)30 b(machine)p Fu('.)38 b(Y)-8 b(ou)28 b(can)g(use)f(`)p
Fo(show)j(machine)p Fu(')c(to)i(c)m(hec)m(k)h(whic)m(h)e(v)-5
b(arian)m(t)27 b(is)g(curren)m(tly)630 4720 y(in)i(e\013ect.)150
4881 y Fo(set)g(memory)g Fn(mo)s(d)150 4991 y Fo(show)g(memory)630
5101 y Fu(Sp)s(ecify)h(whic)m(h)h(H8/500)j(memory)d(mo)s(del)g(\()p
Fn(mo)s(d)t Fu(\))g(y)m(ou)h(are)h(using)d(with)g(`)p
Fo(set)g(memory)p Fu(';)630 5210 y(c)m(hec)m(k)25 b(whic)m(h)c(memory)i
(mo)s(del)f(is)g(in)g(e\013ect)j(with)c(`)p Fo(show)30
b(memory)p Fu('.)37 b(The)22 b(accepted)j(v)-5 b(alues)630
5320 y(for)30 b Fn(mo)s(d)j Fu(are)e Fo(small)p Fu(,)e
Fo(big)p Fu(,)h Fo(medium)p Fu(,)f(and)h Fo(compact)p
Fu(.)p eop
%%Page: 136 138
136 137 bop 150 -116 a Fu(136)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fk(13.4.9)63 b(GDB)41 b(and)g(remote)f(MIPS)h(b)s(oards)275
492 y Fu(GDB)28 b(can)f(use)g(the)h(MIPS)f(remote)h(debugging)e(proto)s
(col)h(to)h(talk)f(to)h(a)g(MIPS)f(b)s(oard)f(attac)m(hed)j(to)150
601 y(a)h(serial)e(line.)39 b(This)28 b(is)h(a)m(v)-5
b(ailable)29 b(when)f(y)m(ou)i(con\014gure)g(GDB)g(with)f(`)p
Fo(--target=mips-idt-ecoff)o Fu('.)275 719 y(Use)h(these)h(GDB)h
(commands)e(to)h(sp)s(ecify)e(the)h(connection)h(to)g(y)m(our)f(target)
i(b)s(oard:)150 879 y Fo(target)d(mips)g Fn(p)s(ort)630
988 y Fu(T)-8 b(o)33 b(run)f(a)h(program)f(on)h(the)g(b)s(oard,)g
(start)g(up)f Fo(gdb)g Fu(with)f(the)j(name)e(of)h(y)m(our)g(program)
630 1098 y(as)40 b(the)h(argumen)m(t.)70 b(T)-8 b(o)40
b(connect)h(to)g(the)g(b)s(oard,)g(use)f(the)g(command)g(`)p
Fo(target)29 b(mips)630 1208 y Fn(p)s(ort)r Fu(',)i(where)f
Fn(p)s(ort)j Fu(is)d(the)h(name)g(of)g(the)g(serial)f(p)s(ort)g
(connected)i(to)g(the)f(b)s(oard.)41 b(If)31 b(the)630
1317 y(program)d(has)g(not)g(already)g(b)s(een)g(do)m(wnloaded)f(to)i
(the)f(b)s(oard,)g(y)m(ou)h(ma)m(y)g(use)f(the)g Fo(load)630
1427 y Fu(command)i(to)h(do)m(wnload)f(it.)40 b(Y)-8
b(ou)31 b(can)g(then)f(use)g(all)f(the)i(usual)d(GDB)k(commands.)630
1561 y(F)-8 b(or)31 b(example,)g(this)f(sequence)h(connects)g(to)h(the)
f(target)h(b)s(oard)e(through)g(a)h(serial)e(p)s(ort,)630
1671 y(and)h(loads)g(and)f(runs)g(a)i(program)f(called)g
Fn(prog)38 b Fu(through)29 b(the)i(debugger:)870 1800
y Fo(host$)46 b(gdb)h Fn(prog)870 1904 y Fo(GDB)g(is)g(free)g(software)
e(and)i(...)870 2007 y(\(gdb\))f(target)g(mips)h(/dev/ttyb)870
2111 y(\(gdb\))f(load)h Fn(prog)870 2215 y Fo(\(gdb\))f(run)150
2375 y(target)29 b(mips)g Fn(hostname)5 b Fo(:)p Fn(p)s(ortn)m(um)m(b)s
(er)630 2484 y Fu(On)44 b(some)g(GDB)i(host)f(con\014gurations,)i(y)m
(ou)e(can)g(sp)s(ecify)e(a)i(TCP)e(connection)i(\(for)630
2594 y(instance,)i(to)e(a)g(serial)e(line)f(managed)j(b)m(y)f(a)g
(terminal)f(concen)m(trator\))j(instead)d(of)i(a)630
2703 y(serial)29 b(p)s(ort,)h(using)f(the)i(syn)m(tax)f(`)p
Fn(hostname)5 b Fo(:)p Fn(p)s(ortn)m(um)m(b)s(er)i Fu('.)150
2863 y Fo(target)29 b(pmon)g Fn(p)s(ort)150 2998 y Fo(target)g(ddb)g
Fn(p)s(ort)150 3132 y Fo(target)g(lsi)g Fn(p)s(ort)150
3267 y Fu(GDB)i(also)g(supp)s(orts)d(these)j(sp)s(ecial)e(commands)h
(for)g(MIPS)g(targets:)150 3427 y Fo(set)f(processor)f
Fn(args)150 3536 y Fo(show)h(processor)630 3646 y Fu(Use)h(the)f
Fo(set)h(processor)d Fu(command)i(to)h(set)g(the)f(t)m(yp)s(e)h(of)f
(MIPS)g(pro)s(cessor)g(when)g(y)m(ou)630 3756 y(w)m(an)m(t)37
b(to)h(access)f(pro)s(cessor-t)m(yp)s(e-sp)s(eci\014c)f(registers.)59
b(F)-8 b(or)37 b(example,)h Fo(set)29 b(processor)630
3865 y Fn(r3041)42 b Fu(tells)33 b(GDB)i(to)g(use)e(the)h(CPO)f
(registers)h(appropriate)e(for)i(the)g(3041)i(c)m(hip.)50
b(Use)630 3975 y(the)29 b Fo(show)g(processor)d Fu(command)i(to)i(see)f
(what)f(MIPS)g(pro)s(cessor)h(GDB)g(is)f(using.)39 b(Use)630
4084 y(the)31 b Fo(info)e(reg)g Fu(command)h(to)i(see)e(what)h
(registers)f(GDB)h(is)f(using.)150 4244 y Fo(set)f(mipsfpu)g(double)150
4354 y(set)g(mipsfpu)g(single)150 4463 y(set)g(mipsfpu)g(none)150
4573 y(show)g(mipsfpu)630 4682 y Fu(If)d(y)m(our)h(target)i(b)s(oard)c
(do)s(es)i(not)g(supp)s(ort)e(the)i(MIPS)g(\015oating)f(p)s(oin)m(t)g
(copro)s(cessor,)j(y)m(ou)630 4792 y(should)23 b(use)h(the)h(command)f
(`)p Fo(set)30 b(mipsfpu)e(none)p Fu(')c(\(if)g(y)m(ou)h(need)f(this,)h
(y)m(ou)g(ma)m(y)g(wish)e(to)630 4902 y(put)g(the)g(command)h(in)e(y)m
(our)h([No)i(v)-5 b(alue)23 b(for)g(\\GDBINIT"]v)i(\014le\).)38
b(This)22 b(tells)g(GDB)j(ho)m(w)630 5011 y(to)31 b(\014nd)e(the)i
(return)e(v)-5 b(alue)30 b(of)h(functions)e(whic)m(h)g(return)g
(\015oating)i(p)s(oin)m(t)e(v)-5 b(alues.)40 b(It)31
b(also)630 5121 y(allo)m(ws)g(GDB)i(to)f(a)m(v)m(oid)h(sa)m(ving)e(the)
h(\015oating)g(p)s(oin)m(t)f(registers)g(when)g(calling)f(functions)630
5230 y(on)39 b(the)h(b)s(oard.)66 b(If)39 b(y)m(ou)h(are)g(using)e(a)h
(\015oating)h(p)s(oin)m(t)e(copro)s(cessor)i(with)e(only)g(single)630
5340 y(precision)30 b(\015oating)h(p)s(oin)m(t)f(supp)s(ort,)g(as)i(on)
f(the)h Ft(r4650)g Fu(pro)s(cessor,)f(use)h(the)f(command)p
eop
%%Page: 137 139
137 138 bop 150 -116 a Fu(Chapter)30 b(13:)41 b(Sp)s(ecifying)28
b(a)j(Debugging)f(T)-8 b(arget)1729 b(137)630 299 y(`)p
Fo(set)30 b(mipsfpu)e(single)p Fu('.)39 b(The)29 b(default)g(double)f
(precision)g(\015oating)i(p)s(oin)m(t)e(copro)s(cessor)630
408 y(ma)m(y)j(b)s(e)f(selected)h(using)d(`)p Fo(set)i(mipsfpu)f
(double)p Fu('.)630 537 y(In)d(previous)f(v)m(ersions)h(the)h(only)f(c)
m(hoices)i(w)m(ere)f(double)f(precision)e(or)j(no)g(\015oating)g(p)s
(oin)m(t,)630 647 y(so)i(`)p Fo(set)h(mipsfpu)e(on)p
Fu(')g(will)f(select)i(double)e(precision)g(and)h(`)p
Fo(set)i(mipsfpu)e(off)p Fu(')g(will)e(se-)630 756 y(lect)31
b(no)f(\015oating)g(p)s(oin)m(t.)630 885 y(As)g(usual,)f(y)m(ou)i(can)g
(inquire)d(ab)s(out)i(the)g Fo(mipsfpu)f Fu(v)-5 b(ariable)29
b(with)g(`)p Fo(show)g(mipsfpu)p Fu('.)150 1032 y Fo(set)g(remotedebug)
f Fn(n)150 1142 y Fo(show)h(remotedebug)630 1251 y Fu(Y)-8
b(ou)25 b(can)g(see)g(some)g(debugging)e(information)g(ab)s(out)h(comm)
m(unications)g(with)f(the)i(b)s(oard)630 1361 y(b)m(y)i(setting)g(the)g
Fo(remotedebug)d Fu(v)-5 b(ariable.)38 b(If)27 b(y)m(ou)g(set)g(it)g
(to)g Fo(1)g Fu(using)e(`)p Fo(set)30 b(remotedebug)630
1470 y(1)p Fu(',)25 b(ev)m(ery)g(pac)m(k)m(et)h(is)d(displa)m(y)m(ed.)
37 b(If)24 b(y)m(ou)g(set)h(it)e(to)i Fo(2)p Fu(,)g(ev)m(ery)g(c)m
(haracter)g(is)e(displa)m(y)m(ed.)37 b(Y)-8 b(ou)630
1580 y(can)23 b(c)m(hec)m(k)g(the)g(curren)m(t)f(v)-5
b(alue)22 b(at)h(an)m(y)f(time)g(with)f(the)i(command)f(`)p
Fo(show)30 b(remotedebug)p Fu('.)150 1727 y Fo(set)f(timeout)g
Fn(seconds)150 1837 y Fo(set)g(retransmit-timeout)d Fn(seconds)150
1947 y Fo(show)j(timeout)150 2056 y(show)g(retransmit-timeout)630
2166 y Fu(Y)-8 b(ou)22 b(can)g(con)m(trol)g(the)g(timeout)g(used)f
(while)e(w)m(aiting)i(for)h(a)g(pac)m(k)m(et,)k(in)20
b(the)i(MIPS)f(remote)630 2275 y(proto)s(col,)38 b(with)e(the)h
Fo(set)29 b(timeout)f Fn(seconds)41 b Fu(command.)59
b(The)36 b(default)g(is)g(5)h(seconds.)630 2385 y(Similarly)-8
b(,)30 b(y)m(ou)j(can)f(con)m(trol)h(the)g(timeout)f(used)g(while)e(w)m
(aiting)i(for)g(an)g(ac)m(kno)m(wledge-)630 2495 y(men)m(t)37
b(of)f(a)h(pac)m(k)m(et)h(with)d(the)i Fo(set)30 b(retransmit-timeout)
25 b Fn(seconds)40 b Fu(command.)58 b(The)630 2604 y(default)27
b(is)g(3)h(seconds.)40 b(Y)-8 b(ou)29 b(can)f(insp)s(ect)f(b)s(oth)g(v)
-5 b(alues)27 b(with)g Fo(show)i(timeout)d Fu(and)h Fo(show)630
2714 y(retransmit-timeout)p Fu(.)35 b(\(These)29 b(commands)g(are)g
Fr(only)38 b Fu(a)m(v)-5 b(ailable)28 b(when)g(GDB)h(is)f(con-)630
2823 y(\014gured)h(for)h(`)p Fo(--target=mips-idt-ecoff)p
Fu('.\))630 2952 y(The)e(timeout)g(set)g(b)m(y)g Fo(set)i(timeout)c
Fu(do)s(es)i(not)g(apply)f(when)g(GDB)i(is)f(w)m(aiting)f(for)h(y)m
(our)630 3061 y(program)39 b(to)g(stop.)67 b(In)38 b(that)h(case,)k
(GDB)d(w)m(aits)f(forev)m(er)g(b)s(ecause)g(it)f(has)h(no)g(w)m(a)m(y)h
(of)630 3171 y(kno)m(wing)30 b(ho)m(w)g(long)g(the)h(program)f(is)f
(going)h(to)i(run)d(b)s(efore)h(stopping.)150 3377 y
Fk(13.4.10)63 b(Sim)m(ulated)40 b(CPU)h(target)275 3564
y Fu(F)-8 b(or)39 b(some)f(con\014gurations,)i(GDB)f(includes)d(a)j
(CPU)f(sim)m(ulator)f(that)i(y)m(ou)g(can)f(use)g(instead)g(of)150
3673 y(a)g(hardw)m(are)f(CPU)g(to)h(debug)f(y)m(our)g(programs.)62
b(Curren)m(tly)-8 b(,)38 b(sim)m(ulators)e(are)i(a)m(v)-5
b(ailable)37 b(for)g(ARM,)150 3783 y(D10V,)32 b(D30V,)f(FR30,)h
(H8/300,)g(H8/500,)h(i960,)e(M32R,)g(MIPS,)f(MN10200,)j(MN10300,)g(P)m
(o)m(w)m(erPC,)150 3893 y(SH,)d(Sparc,)g(V850,)i(W65,)g(and)e(Z8000.)
275 4021 y(When)g(con\014gured)f(for)h(debugging)g(Zilog)f(Z8000)j
(targets,)g(GDB)f(includes)d(a)j(Z8000)h(sim)m(ulator.)275
4150 y(F)-8 b(or)27 b(the)g(Z8000)h(family)-8 b(,)26
b(`)p Fo(target)j(sim)p Fu(')d(sim)m(ulates)f(either)i(the)f(Z8002)i
(\(the)f(unsegmen)m(ted)g(v)-5 b(arian)m(t)150 4259 y(of)30
b(the)g(Z8000)i(arc)m(hitecture\))f(or)f(the)g(Z8001)h(\(the)g(segmen)m
(ted)g(v)-5 b(arian)m(t\).)41 b(The)29 b(sim)m(ulator)g(recognizes)150
4369 y(whic)m(h)g(arc)m(hitecture)i(is)f(appropriate)f(b)m(y)h(insp)s
(ecting)f(the)h(ob)5 b(ject)31 b(co)s(de.)150 4516 y
Fo(target)e(sim)g Fn(args)630 4626 y Fu(Debug)h(programs)f(on)g(a)h
(sim)m(ulated)e(CPU.)h(If)g(the)h(sim)m(ulator)e(supp)s(orts)f(setup)i
(options,)630 4735 y(sp)s(ecify)g(them)h(via)g Fn(args)p
Fu(.)150 4883 y(After)36 b(sp)s(ecifying)d(this)h(target,)k(y)m(ou)e
(can)f(debug)g(programs)g(for)g(the)g(sim)m(ulated)f(CPU)h(in)f(the)i
(same)150 4992 y(st)m(yle)e(as)g(programs)f(for)g(y)m(our)g(host)h
(computer;)h(use)f(the)f Fo(file)g Fu(command)g(to)h(load)f(a)h(new)f
(program)150 5102 y(image,)e(the)f Fo(run)g Fu(command)g(to)h(run)e(y)m
(our)h(program,)h(and)f(so)g(on.)275 5230 y(As)36 b(w)m(ell)g(as)g
(making)g(a)m(v)-5 b(ailable)36 b(all)g(the)h(usual)e(mac)m(hine)h
(registers)g(\(see)i Fo(info)29 b(reg)p Fu(\),)38 b(the)f(Z8000)150
5340 y(sim)m(ulator)29 b(pro)m(vides)h(three)g(additional)e(items)i(of)
h(information)e(as)h(sp)s(ecially)e(named)i(registers:)p
eop
%%Page: 138 140
138 139 bop 150 -116 a Fu(138)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(cycles)192 b Fu(Coun)m(ts)30 b(clo)s(c)m(k-tic)m(ks)i(in)d
(the)h(sim)m(ulator.)150 458 y Fo(insts)240 b Fu(Coun)m(ts)30
b(instructions)e(run)h(in)g(the)i(sim)m(ulator.)150 618
y Fo(time)288 b Fu(Execution)30 b(time)g(in)f(60ths)i(of)g(a)f(second.)
275 777 y(Y)-8 b(ou)21 b(can)h(refer)f(to)h(these)f(v)-5
b(alues)21 b(in)f(GDB)i(expressions)e(with)f(the)j(usual)e(con)m(v)m
(en)m(tions;)25 b(for)c(example,)150 887 y(`)p Fo(b)30
b(fputc)f(if)h($cycles>5000)p Fu(')e(sets)j(a)g(conditional)f(breakp)s
(oin)m(t)g(that)h(susp)s(ends)e(only)h(after)h(at)h(least)150
996 y(5000)g(sim)m(ulated)d(clo)s(c)m(k)i(tic)m(ks.)p
eop
%%Page: 139 141
139 140 bop 150 -116 a Fu(Chapter)30 b(14:)41 b(Con)m(trolling)29
b(GDB)2272 b(139)150 299 y Fp(14)80 b(Con)l(trolling)54
b(GDB)275 533 y Fu(Y)-8 b(ou)20 b(can)h(alter)f(the)h(w)m(a)m(y)g(GDB)h
(in)m(teracts)e(with)f(y)m(ou)i(b)m(y)f(using)f(the)i
Fo(set)e Fu(command.)37 b(F)-8 b(or)21 b(commands)150
643 y(con)m(trolling)28 b(ho)m(w)i(GDB)g(displa)m(ys)e(data,)i(see)g
(Section)f(8.7)i([Prin)m(t)d(settings],)i(page)h(61;)f(other)g
(settings)150 752 y(are)h(describ)s(ed)d(here.)150 1010
y Fs(14.1)68 b(Prompt)275 1202 y Fu(GDB)31 b(indicates)e(its)h
(readiness)g(to)h(read)f(a)h(command)f(b)m(y)h(prin)m(ting)d(a)j
(string)e(called)h(the)h Fn(prompt)p Fu(.)150 1312 y(This)k(string)g
(is)g(normally)g(`)p Fo(\(gdb\))p Fu('.)58 b(Y)-8 b(ou)37
b(can)f(c)m(hange)i(the)f(prompt)e(string)g(with)h(the)g
Fo(set)30 b(prompt)150 1421 y Fu(command.)39 b(F)-8 b(or)25
b(instance,)h(when)e(debugging)g(GDB)i(with)e(GDB,)i(it)f(is)f(useful)f
(to)j(c)m(hange)g(the)f(prompt)150 1531 y(in)k(one)i(of)f(the)h(GDB)g
(sessions)f(so)g(that)h(y)m(ou)g(can)g(alw)m(a)m(ys)g(tell)e(whic)m(h)g
(one)i(y)m(ou)g(are)f(talking)g(to.)275 1665 y Fr(Note:)45
b Fo(set)29 b(prompt)f Fu(no)i(longer)g(adds)f(a)h(space)g(for)g(y)m
(ou)g(after)g(the)g(prompt)f(y)m(ou)h(set.)42 b(This)28
b(allo)m(ws)150 1775 y(y)m(ou)j(to)g(set)g(a)g(prompt)e(whic)m(h)g
(ends)h(in)f(a)h(space)h(or)g(a)g(prompt)e(that)i(do)s(es)f(not.)150
1984 y Fo(set)f(prompt)g Fn(newprompt)630 2094 y Fu(Directs)i(GDB)g(to)
g(use)f Fn(newprompt)h Fu(as)g(its)f(prompt)f(string)h(henceforth.)150
2253 y Fo(show)f(prompt)630 2363 y Fu(Prin)m(ts)g(a)i(line)e(of)h(the)h
(form:)40 b(`)p Fo(Gdb's)29 b(prompt)g(is:)g Fn(y)m(our-prompt)r
Fu(')150 2620 y Fs(14.2)68 b(Command)46 b(editing)275
2813 y Fu(GDB)38 b(reads)e(its)g(input)f(commands)i(via)f(the)i
Fn(readline)i Fu(in)m(terface.)61 b(This)35 b Ft(gnu)h
Fu(library)f(pro)m(vides)150 2922 y(consisten)m(t)c(b)s(eha)m(vior)f
(for)h(programs)f(whic)m(h)g(pro)m(vide)g(a)h(command)g(line)e(in)m
(terface)j(to)f(the)g(user.)42 b(Ad-)150 3032 y(v)-5
b(an)m(tages)33 b(are)e Ft(gnu)g Fu(Emacs-st)m(yle)g(or)g
Fn(vi)p Fu(-st)m(yle)g(inline)d(editing)h(of)i(commands,)g
Fo(csh)p Fu(-lik)m(e)f(history)g(sub-)150 3142 y(stitution,)f(and)h(a)h
(storage)h(and)e(recall)f(of)i(command)f(history)f(across)i(debugging)f
(sessions.)275 3276 y(Y)-8 b(ou)29 b(ma)m(y)g(con)m(trol)g(the)g(b)s
(eha)m(vior)f(of)h(command)g(line)e(editing)g(in)h(GDB)i(with)d(the)i
(command)g Fo(set)p Fu(.)150 3485 y Fo(set)g(editing)150
3595 y(set)g(editing)g(on)630 3704 y Fu(Enable)g(command)h(line)f
(editing)g(\(enabled)h(b)m(y)g(default\).)150 3864 y
Fo(set)f(editing)g(off)630 3973 y Fu(Disable)g(command)i(line)d
(editing.)150 4133 y Fo(show)h(editing)630 4242 y Fu(Sho)m(w)h(whether)
g(command)g(line)e(editing)i(is)f(enabled.)150 4500 y
Fs(14.3)68 b(Command)46 b(history)275 4692 y Fu(GDB)29
b(can)h(k)m(eep)f(trac)m(k)h(of)f(the)g(commands)g(y)m(ou)g(t)m(yp)s(e)
g(during)d(y)m(our)j(debugging)f(sessions,)g(so)h(that)150
4802 y(y)m(ou)j(can)g(b)s(e)f(certain)h(of)g(precisely)e(what)h(happ)s
(ened.)43 b(Use)32 b(these)h(commands)e(to)h(manage)h(the)f(GDB)150
4912 y(command)e(history)f(facilit)m(y)-8 b(.)150 5121
y Fo(set)29 b(history)g(filename)f Fn(fname)630 5230
y Fu(Set)f(the)g(name)g(of)g(the)g(GDB)h(command)f(history)f(\014le)g
(to)i Fn(fname)p Fu(.)39 b(This)25 b(is)h(the)h(\014le)f(where)630
5340 y(GDB)33 b(reads)f(an)g(initial)d(command)j(history)f(list,)g(and)
h(where)f(it)h(writes)f(the)h(command)p eop
%%Page: 140 142
140 141 bop 150 -116 a Fu(140)2599 b(Debugging)31 b(with)e(GDB)630
299 y(history)e(from)h(this)f(session)g(when)g(it)h(exits.)39
b(Y)-8 b(ou)29 b(can)f(access)i(this)d(list)g(through)g(history)630
408 y(expansion)44 b(or)h(through)g(the)h(history)e(command)h(editing)f
(c)m(haracters)j(listed)c(b)s(elo)m(w.)630 518 y(This)31
b(\014le)g(defaults)h(to)h(the)f(v)-5 b(alue)32 b(of)h(the)f(en)m
(vironmen)m(t)g(v)-5 b(ariable)32 b Fo(GDBHISTFILE)p
Fu(,)e(or)i(to)630 628 y(`)p Fo(./.gdb_history)p Fu(')27
b(if)i(this)h(v)-5 b(ariable)29 b(is)g(not)i(set.)150
775 y Fo(set)e(history)g(save)150 885 y(set)g(history)g(save)g(on)630
994 y Fu(Record)k(command)g(history)e(in)h(a)h(\014le,)g(whose)f(name)h
(ma)m(y)g(b)s(e)f(sp)s(eci\014ed)f(with)h(the)h Fo(set)630
1104 y(history)28 b(filename)h Fu(command.)40 b(By)31
b(default,)e(this)h(option)g(is)f(disabled.)150 1251
y Fo(set)g(history)g(save)g(off)630 1361 y Fu(Stop)h(recording)g
(command)g(history)f(in)g(a)i(\014le.)150 1508 y Fo(set)e(history)g
(size)g Fn(size)630 1618 y Fu(Set)d(the)f(n)m(um)m(b)s(er)f(of)i
(commands)f(whic)m(h)f(GDB)i(k)m(eeps)g(in)e(its)h(history)g(list.)37
b(This)24 b(defaults)630 1728 y(to)31 b(the)g(v)-5 b(alue)30
b(of)h(the)g(en)m(vironmen)m(t)f(v)-5 b(ariable)30 b
Fo(HISTSIZE)p Fu(,)e(or)j(to)g(256)h(if)e(this)f(v)-5
b(ariable)30 b(is)630 1837 y(not)h(set.)275 2004 y(History)f(expansion)
f(assigns)g(sp)s(ecial)g(meaning)h(to)h(the)g(c)m(haracter)h
Fl(!)p Fu(.)275 2132 y(Since)f Fl(!)h Fu(is)g(also)h(the)g(logical)f
(not)h(op)s(erator)g(in)e(C,)h(history)g(expansion)f(is)h(o\013)h(b)m
(y)g(default.)46 b(If)33 b(y)m(ou)150 2242 y(decide)23
b(to)i(enable)e(history)f(expansion)h(with)f(the)i Fo(set)30
b(history)e(expansion)g(on)23 b Fu(command,)i(y)m(ou)f(ma)m(y)150
2351 y(sometimes)33 b(need)g(to)h(follo)m(w)f Fl(!)g
Fu(\(when)g(it)f(is)h(used)f(as)i(logical)f(not,)h(in)e(an)h
(expression\))g(with)f(a)h(space)150 2461 y(or)f(a)g(tab)g(to)g(prev)m
(en)m(t)g(it)g(from)f(b)s(eing)f(expanded.)44 b(The)31
b(readline)f(history)g(facilities)g(do)i(not)g(attempt)150
2570 y(substitution)c(on)i(the)h(strings)e Fl(!=)h Fu(and)g
Fl(!\()p Fu(,)g(ev)m(en)h(when)e(history)g(expansion)h(is)f(enabled.)
275 2699 y(The)g(commands)h(to)i(con)m(trol)e(history)g(expansion)f
(are:)150 2884 y Fo(set)g(history)g(expansion)f(on)150
2994 y(set)h(history)g(expansion)630 3103 y Fu(Enable)g(history)h
(expansion.)39 b(History)30 b(expansion)f(is)h(o\013)h(b)m(y)f
(default.)150 3251 y Fo(set)f(history)g(expansion)f(off)630
3361 y Fu(Disable)h(history)h(expansion.)630 3489 y(The)42
b(readline)e(co)s(de)j(comes)g(with)e(more)h(complete)h(do)s(cumen)m
(tation)f(of)h(editing)e(and)630 3599 y(history)31 b(expansion)g
(features.)46 b(Users)32 b(unfamiliar)d(with)i Ft(gnu)h
Fu(Emacs)g(or)g Fo(vi)g Fu(ma)m(y)h(wish)630 3708 y(to)e(read)f(it.)150
3856 y Fo(show)f(history)150 3965 y(show)g(history)g(filename)150
4075 y(show)g(history)g(save)150 4184 y(show)g(history)g(size)150
4294 y(show)g(history)g(expansion)630 4404 y Fu(These)48
b(commands)h(displa)m(y)e(the)i(state)h(of)f(the)g(GDB)g(history)f
(parameters.)96 b Fo(show)630 4513 y(history)28 b Fu(b)m(y)j(itself)e
(displa)m(ys)f(all)i(four)f(states.)150 4699 y Fo(show)g(commands)630
4808 y Fu(Displa)m(y)h(the)g(last)g(ten)h(commands)f(in)f(the)i
(command)f(history)-8 b(.)150 4956 y Fo(show)29 b(commands)f
Fn(n)630 5065 y Fu(Prin)m(t)h(ten)i(commands)f(cen)m(tered)h(on)g
(command)f(n)m(um)m(b)s(er)f Fn(n)p Fu(.)150 5213 y Fo(show)g(commands)
f(+)630 5322 y Fu(Prin)m(t)h(ten)i(commands)f(just)g(after)h(the)f
(commands)g(last)g(prin)m(ted.)p eop
%%Page: 141 143
141 142 bop 150 -116 a Fu(Chapter)30 b(14:)41 b(Con)m(trolling)29
b(GDB)2272 b(141)150 299 y Fs(14.4)68 b(Screen)45 b(size)275
491 y Fu(Certain)36 b(commands)h(to)i(GDB)f(ma)m(y)h(pro)s(duce)d
(large)i(amoun)m(ts)g(of)f(information)f(output)h(to)i(the)150
600 y(screen.)51 b(T)-8 b(o)34 b(help)f(y)m(ou)h(read)g(all)f(of)h(it,)
g(GDB)h(pauses)e(and)g(asks)h(y)m(ou)h(for)e(input)f(at)j(the)f(end)f
(of)h(eac)m(h)150 710 y(page)40 b(of)f(output.)66 b(T)m(yp)s(e)1086
707 y Fj(h)p 1110 654 151 4 v 1110 710 a Fi(RET)p 1110
725 V 1257 707 a Fj(i)1326 710 y Fu(when)38 b(y)m(ou)h(w)m(an)m(t)h(to)
g(con)m(tin)m(ue)f(the)g(output,)j(or)d Fl(q)f Fu(to)i(discard)e(the)
150 820 y(remaining)27 b(output.)40 b(Also,)30 b(the)f(screen)g(width)f
(setting)h(determines)f(when)g(to)i(wrap)e(lines)g(of)h(output.)150
929 y(Dep)s(ending)c(on)h(what)g(is)f(b)s(eing)g(prin)m(ted,)g(GDB)j
(tries)d(to)i(break)f(the)g(line)f(at)i(a)f(readable)g(place,)h(rather)
150 1039 y(than)j(simply)e(letting)i(it)g(o)m(v)m(er\015o)m(w)i(on)m
(to)f(the)g(follo)m(wing)e(line.)275 1173 y(Normally)i(GDB)j(kno)m(ws)f
(the)g(size)g(of)g(the)g(screen)g(from)f(the)h(termcap)g(data)h(base)f
(together)h(with)150 1282 y(the)f(v)-5 b(alue)32 b(of)i(the)f
Fo(TERM)e Fu(en)m(vironmen)m(t)i(v)-5 b(ariable)32 b(and)g(the)h
Fo(stty)c(rows)j Fu(and)g Fo(stty)d(cols)j Fu(settings.)48
b(If)150 1392 y(this)29 b(is)h(not)g(correct,)i(y)m(ou)f(can)f(o)m(v)m
(erride)h(it)f(with)f(the)h Fo(set)g(height)f Fu(and)g
Fo(set)h(width)f Fu(commands:)150 1599 y Fo(set)g(height)g
Fn(lpp)150 1708 y Fo(show)g(height)150 1818 y(set)g(width)g
Fn(cpl)150 1927 y Fo(show)g(width)630 2037 y Fu(These)g
Fo(set)f Fu(commands)g(sp)s(ecify)g(a)h(screen)h(heigh)m(t)e(of)i
Fn(lpp)g Fu(lines)d(and)h(a)h(screen)h(width)d(of)630
2147 y Fn(cpl)33 b Fu(c)m(haracters.)42 b(The)30 b(asso)s(ciated)h
Fo(show)e Fu(commands)h(displa)m(y)f(the)h(curren)m(t)g(settings.)630
2280 y(If)40 b(y)m(ou)g(sp)s(ecify)f(a)i(heigh)m(t)f(of)g(zero)h
(lines,)g(GDB)g(do)s(es)f(not)h(pause)e(during)f(output)i(no)630
2390 y(matter)g(ho)m(w)g(long)e(the)i(output)f(is.)66
b(This)38 b(is)g(useful)g(if)g(output)h(is)f(to)j(a)e(\014le)g(or)g(to)
h(an)630 2500 y(editor)30 b(bu\013er.)630 2633 y(Lik)m(ewise,)46
b(y)m(ou)e(can)g(sp)s(ecify)e(`)p Fo(set)30 b(width)f(0)p
Fu(')44 b(to)g(prev)m(en)m(t)g(GDB)h(from)e(wrapping)f(its)630
2743 y(output.)150 2999 y Fs(14.5)68 b(Num)l(b)t(ers)275
3191 y Fu(Y)-8 b(ou)34 b(can)h(alw)m(a)m(ys)g(en)m(ter)g(n)m(um)m(b)s
(ers)e(in)g(o)s(ctal,)j(decimal,)f(or)f(hexadecimal)g(in)f(GDB)j(b)m(y)
e(the)g(usual)150 3300 y(con)m(v)m(en)m(tions:)41 b(o)s(ctal)29
b(n)m(um)m(b)s(ers)e(b)s(egin)g(with)g(`)p Fo(0)p Fu(',)j(decimal)d(n)m
(um)m(b)s(ers)g(end)h(with)f(`)p Fo(.)p Fu(',)j(and)e(hexadecimal)150
3410 y(n)m(um)m(b)s(ers)d(b)s(egin)h(with)f(`)p Fo(0x)p
Fu('.)39 b(Num)m(b)s(ers)26 b(that)h(b)s(egin)e(with)h(none)g(of)h
(these)g(are,)h(b)m(y)f(default,)g(en)m(tered)g(in)150
3519 y(base)g(10;)i(lik)m(ewise,)d(the)h(default)e(displa)m(y)g(for)i
(n)m(um)m(b)s(ers|when)d(no)i(particular)f(format)i(is)f(sp)s
(eci\014ed|)150 3629 y(is)i(base)i(10.)41 b(Y)-8 b(ou)30
b(can)g(c)m(hange)g(the)g(default)e(base)i(for)f(b)s(oth)f(input)g(and)
g(output)h(with)f(the)i Fo(set)f(radix)150 3738 y Fu(command.)150
3945 y Fo(set)g(input-radix)f Fn(base)630 4055 y Fu(Set)h(the)h
(default)e(base)h(for)g(n)m(umeric)f(input.)38 b(Supp)s(orted)27
b(c)m(hoices)j(for)f Fn(base)34 b Fu(are)c(decimal)630
4164 y(8,)39 b(10,)h(or)d(16.)61 b Fn(base)42 b Fu(m)m(ust)37
b(itself)e(b)s(e)i(sp)s(eci\014ed)e(either)h(unam)m(biguously)e(or)j
(using)f(the)630 4274 y(curren)m(t)30 b(default)g(radix;)f(for)h
(example,)h(an)m(y)f(of)870 4402 y Fo(set)47 b(radix)f(012)870
4506 y(set)h(radix)f(10.)870 4610 y(set)h(radix)f(0xa)630
4743 y Fu(sets)35 b(the)g(base)g(to)h(decimal.)53 b(On)34
b(the)h(other)h(hand,)f(`)p Fo(set)30 b(radix)e(10)p
Fu(')35 b(lea)m(v)m(es)h(the)f(radix)630 4853 y(unc)m(hanged)30
b(no)g(matter)i(what)e(it)g(w)m(as.)150 5011 y Fo(set)f(output-radix)f
Fn(base)630 5121 y Fu(Set)c(the)g(default)f(base)i(for)e(n)m(umeric)g
(displa)m(y)-8 b(.)37 b(Supp)s(orted)22 b(c)m(hoices)j(for)e
Fn(base)30 b Fu(are)24 b(decimal)630 5230 y(8,)39 b(10,)h(or)d(16.)61
b Fn(base)42 b Fu(m)m(ust)37 b(itself)e(b)s(e)i(sp)s(eci\014ed)e
(either)h(unam)m(biguously)e(or)j(using)f(the)630 5340
y(curren)m(t)30 b(default)g(radix.)p eop
%%Page: 142 144
142 143 bop 150 -116 a Fu(142)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(show)g(input-radix)630 408 y Fu(Displa)m(y)h(the)g(curren)m(t)
g(default)g(base)g(for)g(n)m(umeric)g(input.)150 553
y Fo(show)f(output-radix)630 663 y Fu(Displa)m(y)h(the)g(curren)m(t)g
(default)g(base)g(for)g(n)m(umeric)g(displa)m(y)-8 b(.)150
899 y Fs(14.6)68 b(Optional)46 b(w)l(arnings)g(and)f(messages)275
1084 y Fu(By)23 b(default,)h(GDB)h(is)d(silen)m(t)h(ab)s(out)g(its)g
(inner)e(w)m(orkings.)38 b(If)23 b(y)m(ou)g(are)h(running)d(on)i(a)h
(slo)m(w)f(mac)m(hine,)150 1194 y(y)m(ou)29 b(ma)m(y)g(w)m(an)m(t)h(to)
f(use)f(the)h Fo(set)h(verbose)c Fu(command.)40 b(This)27
b(mak)m(es)j(GDB)g(tell)d(y)m(ou)i(when)f(it)g(do)s(es)h(a)150
1303 y(length)m(y)h(in)m(ternal)f(op)s(eration,)h(so)h(y)m(ou)g(will)c
(not)k(think)e(it)h(has)g(crashed.)275 1430 y(Curren)m(tly)-8
b(,)33 b(the)h(messages)h(con)m(trolled)e(b)m(y)h Fo(set)29
b(verbose)j Fu(are)i(those)g(whic)m(h)f(announce)g(that)i(the)150
1540 y(sym)m(b)s(ol)26 b(table)i(for)f(a)h(source)g(\014le)e(is)h(b)s
(eing)f(read;)i(see)h Fo(symbol-file)24 b Fu(in)i(Section)h(12.1)j
([Commands)c(to)150 1650 y(sp)s(ecify)j(\014les],)h(page)h(101.)150
1830 y Fo(set)e(verbose)g(on)630 1939 y Fu(Enables)g(GDB)j(output)e(of)
g(certain)g(informational)f(messages.)150 2084 y Fo(set)g(verbose)g
(off)630 2194 y Fu(Disables)g(GDB)j(output)e(of)g(certain)h
(informational)d(messages.)150 2339 y Fo(show)h(verbose)630
2448 y Fu(Displa)m(ys)g(whether)h Fo(set)g(verbose)e
Fu(is)h(on)i(or)f(o\013.)275 2593 y(By)38 b(default,)h(if)d(GDB)j
(encoun)m(ters)g(bugs)e(in)f(the)i(sym)m(b)s(ol)f(table)g(of)h(an)g(ob)
5 b(ject)39 b(\014le,)f(it)g(is)f(silen)m(t;)150 2703
y(but)28 b(if)g(y)m(ou)h(are)h(debugging)e(a)h(compiler,)f(y)m(ou)h(ma)
m(y)h(\014nd)d(this)h(information)g(useful)f(\(see)j(Section)e(12.2)150
2812 y([Errors)i(reading)f(sym)m(b)s(ol)g(\014les],)h(page)h(104\).)150
2993 y Fo(set)e(complaints)f Fn(limit)630 3102 y Fu(P)m(ermits)33
b(GDB)i(to)f(output)f Fn(limit)h Fu(complain)m(ts)e(ab)s(out)i(eac)m(h)
g(t)m(yp)s(e)g(of)g(un)m(usual)d(sym)m(b)s(ols)630 3212
y(b)s(efore)24 b(b)s(ecoming)f(silen)m(t)g(ab)s(out)g(the)h(problem.)37
b(Set)25 b Fn(limit)e Fu(to)i(zero)g(to)f(suppress)e(all)h(com-)630
3321 y(plain)m(ts;)29 b(set)i(it)f(to)h(a)g(large)f(n)m(um)m(b)s(er)f
(to)j(prev)m(en)m(t)f(complain)m(ts)e(from)h(b)s(eing)f(suppressed.)150
3466 y Fo(show)g(complaints)630 3576 y Fu(Displa)m(ys)g(ho)m(w)i(man)m
(y)f(sym)m(b)s(ol)f(complain)m(ts)h(GDB)h(is)f(p)s(ermitted)f(to)i(pro)
s(duce.)275 3721 y(By)43 b(default,)i(GDB)f(is)e(cautious,)k(and)c
(asks)h(what)g(sometimes)g(seems)g(to)h(b)s(e)e(a)h(lot)g(of)g(stupid)
150 3830 y(questions)29 b(to)h(con\014rm)e(certain)i(commands.)40
b(F)-8 b(or)30 b(example,)f(if)g(y)m(ou)g(try)h(to)g(run)e(a)i(program)
f(whic)m(h)f(is)150 3940 y(already)i(running:)390 4061
y Fo(\(gdb\))46 b(run)390 4165 y(The)h(program)f(being)g(debugged)g
(has)h(been)f(started)g(already.)390 4269 y(Start)g(it)i(from)e(the)h
(beginning?)e(\(y)i(or)g(n\))275 4396 y Fu(If)25 b(y)m(ou)i(are)g
(willing)22 b(to)27 b(un\015inc)m(hingly)c(face)k(the)f(consequences)h
(of)g(y)m(our)f(o)m(wn)g(commands,)h(y)m(ou)g(can)150
4506 y(disable)i(this)g(\\feature":)150 4686 y Fo(set)g(confirm)g(off)
630 4796 y Fu(Disables)g(con\014rmation)h(requests.)150
4941 y Fo(set)f(confirm)g(on)630 5050 y Fu(Enables)g(con\014rmation)h
(requests)g(\(the)h(default\).)150 5195 y Fo(show)e(confirm)630
5305 y Fu(Displa)m(ys)g(state)j(of)f(con\014rmation)e(requests.)p
eop
%%Page: 143 145
143 144 bop 150 -116 a Fu(Chapter)30 b(15:)41 b(Canned)30
b(Sequences)g(of)g(Commands)1644 b(143)150 299 y Fp(15)80
b(Canned)53 b(Sequences)e(of)j(Commands)275 517 y Fu(Aside)59
b(from)g(breakp)s(oin)m(t)g(commands)h(\(see)h(Section)e(5.1.7)j
([Breakp)s(oin)m(t)e(command)g(lists],)150 627 y(page)46
b(36\),)51 b(GDB)c(pro)m(vides)d(t)m(w)m(o)j(w)m(a)m(ys)g(to)f(store)g
(sequences)g(of)g(commands)f(for)g(execution)h(as)g(a)150
736 y(unit:)39 b(user-de\014ned)29 b(commands)h(and)g(command)g
(\014les.)150 984 y Fs(15.1)68 b(User-de\014ned)45 b(commands)275
1174 y Fu(A)35 b Fn(user-de\014ned)g(command)k Fu(is)c(a)h(sequence)g
(of)g(GDB)h(commands)f(to)g(whic)m(h)f(y)m(ou)h(assign)f(a)h(new)150
1283 y(name)28 b(as)f(a)h(command.)40 b(This)26 b(is)h(done)g(with)f
(the)i Fo(define)e Fu(command.)39 b(User)28 b(commands)f(ma)m(y)h
(accept)150 1393 y(up)42 b(to)j(10)f(argumen)m(ts)g(separated)g(b)m(y)f
(whitespace.)80 b(Argumen)m(ts)43 b(are)h(accessed)h(within)c(the)j
(user)150 1503 y(command)30 b(via)g Fn($arg0)6 b(.)23
b(.)g(.)11 b($arg9)p Fu(.)42 b(A)30 b(trivial)f(example:)390
1628 y Fo(define)46 b(adder)485 1732 y(print)h($arg0)f(+)i($arg1)e(+)h
($arg2)150 1863 y Fu(T)-8 b(o)31 b(execute)h(the)e(command)g(use:)390
1989 y Fo(adder)46 b(1)i(2)f(3)150 2120 y Fu(This)33
b(de\014nes)h(the)h(command)g Fo(adder)p Fu(,)f(whic)m(h)g(prin)m(ts)f
(the)i(sum)f(of)h(its)f(three)h(argumen)m(ts.)55 b(Note)36
b(the)150 2230 y(argumen)m(ts)28 b(are)g(text)g(substitutions,)e(so)i
(they)g(ma)m(y)g(reference)g(v)-5 b(ariables,)27 b(use)g(complex)g
(expressions,)150 2339 y(or)j(ev)m(en)h(p)s(erform)e(inferior)g
(functions)f(calls.)150 2536 y Fo(define)h Fn(commandname)630
2645 y Fu(De\014ne)36 b(a)g(command)g(named)g Fn(commandname)p
Fu(.)57 b(If)35 b(there)i(is)e(already)g(a)h(command)g(b)m(y)630
2755 y(that)31 b(name,)g(y)m(ou)f(are)h(ask)m(ed)g(to)g(con\014rm)f
(that)h(y)m(ou)f(w)m(an)m(t)i(to)f(rede\014ne)e(it.)630
2886 y(The)c(de\014nition)e(of)j(the)f(command)g(is)g(made)g(up)f(of)i
(other)g(GDB)g(command)f(lines,)g(whic)m(h)630 2996 y(are)c(giv)m(en)h
(follo)m(wing)d(the)i Fo(define)f Fu(command.)37 b(The)21
b(end)f(of)h(these)h(commands)f(is)f(mark)m(ed)630 3106
y(b)m(y)30 b(a)h(line)e(con)m(taining)h Fo(end)p Fu(.)150
3259 y Fo(if)384 b Fu(T)-8 b(ak)m(es)29 b(a)g(single)e(argumen)m(t,)i
(whic)m(h)e(is)h(an)g(expression)f(to)i(ev)-5 b(aluate.)41
b(It)28 b(is)f(follo)m(w)m(ed)h(b)m(y)h(a)630 3368 y(series)j(of)i
(commands)e(that)i(are)f(executed)h(only)f(if)f(the)h(expression)f(is)g
(true)h(\(nonzero\).)630 3478 y(There)24 b(can)h(then)g(optionally)e(b)
s(e)h(a)h(line)e Fo(else)p Fu(,)i(follo)m(w)m(ed)f(b)m(y)h(a)g(series)f
(of)h(commands)f(that)630 3587 y(are)32 b(only)e(executed)j(if)d(the)i
(expression)e(w)m(as)i(false.)43 b(The)31 b(end)g(of)g(the)h(list)e(is)
h(mark)m(ed)g(b)m(y)630 3697 y(a)g(line)d(con)m(taining)i
Fo(end)p Fu(.)150 3850 y Fo(while)240 b Fu(The)36 b(syn)m(tax)i(is)e
(similar)e(to)k Fo(if)p Fu(:)53 b(the)38 b(command)e(tak)m(es)j(a)e
(single)f(argumen)m(t,)j(whic)m(h)d(is)630 3960 y(an)c(expression)f(to)
i(ev)-5 b(aluate,)33 b(and)f(m)m(ust)g(b)s(e)f(follo)m(w)m(ed)h(b)m(y)g
(the)h(commands)e(to)i(execute,)630 4069 y(one)c(p)s(er)e(line,)h
(terminated)g(b)m(y)g(an)h Fo(end)p Fu(.)39 b(The)28
b(commands)g(are)h(executed)h(rep)s(eatedly)e(as)630
4179 y(long)i(as)h(the)f(expression)f(ev)-5 b(aluates)31
b(to)g(true.)150 4332 y Fo(document)d Fn(commandname)630
4442 y Fu(Do)s(cumen)m(t)46 b(the)f(user-de\014ned)e(command)h
Fn(commandname)p Fu(,)49 b(so)c(that)g(it)g(can)g(b)s(e)f(ac-)630
4551 y(cessed)33 b(b)m(y)g Fo(help)p Fu(.)47 b(The)33
b(command)f Fn(commandname)38 b Fu(m)m(ust)33 b(already)f(b)s(e)h
(de\014ned.)47 b(This)630 4661 y(command)38 b(reads)g(lines)f(of)h(do)s
(cumen)m(tation)g(just)g(as)h Fo(define)d Fu(reads)i(the)h(lines)d(of)j
(the)630 4770 y(command)h(de\014nition,)h(ending)e(with)h
Fo(end)p Fu(.)70 b(After)41 b(the)g Fo(document)d Fu(command)i(is)g
(\014n-)630 4880 y(ished,)29 b Fo(help)f Fu(on)i(command)g
Fn(commandname)35 b Fu(displa)m(ys)28 b(the)i(do)s(cumen)m(tation)f(y)m
(ou)i(ha)m(v)m(e)630 4989 y(written.)630 5121 y(Y)-8
b(ou)32 b(ma)m(y)g(use)g(the)g Fo(document)d Fu(command)i(again)h(to)h
(c)m(hange)f(the)g(do)s(cumen)m(tation)g(of)g(a)630 5230
y(command.)61 b(Rede\014ning)36 b(the)h(command)g(with)f
Fo(define)f Fu(do)s(es)i(not)h(c)m(hange)g(the)f(do)s(cu-)630
5340 y(men)m(tation.)p eop
%%Page: 144 146
144 145 bop 150 -116 a Fu(144)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(help)g(user-defined)630 408 y Fu(List)24 b(all)f
(user-de\014ned)g(commands,)i(with)e(the)i(\014rst)e(line)g(of)i(the)f
(do)s(cumen)m(tation)h(\(if)e(an)m(y\))630 518 y(for)30
b(eac)m(h.)150 707 y Fo(show)f(user)150 816 y(show)g(user)g
Fn(commandname)630 926 y Fu(Displa)m(y)j(the)h(GDB)h(commands)f(used)f
(to)h(de\014ne)f Fn(commandname)38 b Fu(\(but)33 b(not)g(its)f(do)s
(cu-)630 1035 y(men)m(tation\).)53 b(If)34 b(no)g Fn(commandname)39
b Fu(is)34 b(giv)m(en,)h(displa)m(y)e(the)h(de\014nitions)e(for)i(all)f
(user-)630 1145 y(de\014ned)c(commands.)275 1348 y(When)43
b(user-de\014ned)f(commands)h(are)h(executed,)k(the)43
b(commands)g(of)h(the)g(de\014nition)d(are)j(not)150
1458 y(prin)m(ted.)39 b(An)30 b(error)g(in)f(an)m(y)i(command)f(stops)g
(execution)h(of)g(the)f(user-de\014ned)f(command.)275
1622 y(If)e(used)g(in)m(teractiv)m(ely)-8 b(,)29 b(commands)e(that)i(w)
m(ould)d(ask)j(for)e(con\014rmation)g(pro)s(ceed)h(without)e(asking)150
1731 y(when)e(used)g(inside)f(a)i(user-de\014ned)f(command.)39
b(Man)m(y)25 b(GDB)h(commands)f(that)h(normally)d(prin)m(t)h(mes-)150
1841 y(sages)29 b(to)h(sa)m(y)f(what)f(they)h(are)g(doing)e(omit)i(the)
f(messages)i(when)d(used)h(in)f(a)i(user-de\014ned)e(command.)150
2171 y Fs(15.2)68 b(User-de\014ned)45 b(command)g(ho)t(oks)275
2393 y Fu(Y)-8 b(ou)26 b(ma)m(y)g(de\014ne)f Fr(ho)-5
b(oks)p Fu(,)29 b(whic)m(h)24 b(are)j(a)f(sp)s(ecial)e(kind)g(of)i
(user-de\014ned)e(command.)39 b(Whenev)m(er)27 b(y)m(ou)150
2503 y(run)d(the)j(command)e(`)p Fo(foo)p Fu(',)i(if)e(the)h
(user-de\014ned)e(command)i(`)p Fo(hook-foo)p Fu(')e(exists,)j(it)e(is)
g(executed)i(\(with)150 2612 y(no)j(argumen)m(ts\))h(b)s(efore)f(that)h
(command.)275 2776 y(In)h(addition,)g(a)i(pseudo-command,)f(`)p
Fo(stop)p Fu(')g(exists.)49 b(De\014ning)32 b(\(`)p Fo(hook-stop)p
Fu('\))g(mak)m(es)i(the)f(asso-)150 2886 y(ciated)i(commands)g(execute)
i(ev)m(ery)e(time)g(execution)h(stops)f(in)e(y)m(our)i(program:)50
b(b)s(efore)35 b(breakp)s(oin)m(t)150 2995 y(commands)30
b(are)h(run,)e(displa)m(ys)f(are)j(prin)m(ted,)e(or)i(the)f(stac)m(k)i
(frame)e(is)g(prin)m(ted.)275 3159 y(F)-8 b(or)34 b(example,)g(to)g
(ignore)f Fo(SIGALRM)f Fu(signals)g(while)g(single-stepping,)g(but)h
(treat)h(them)g(normally)150 3269 y(during)28 b(normal)h(execution,)i
(y)m(ou)g(could)e(de\014ne:)390 3427 y Fo(define)46 b(hook-stop)390
3531 y(handle)g(SIGALRM)g(nopass)390 3634 y(end)390 3842
y(define)g(hook-run)390 3946 y(handle)g(SIGALRM)g(pass)390
4049 y(end)390 4257 y(define)g(hook-continue)390 4361
y(handle)g(SIGLARM)g(pass)390 4465 y(end)275 4628 y Fu(Y)-8
b(ou)40 b(can)h(de\014ne)f(a)h(ho)s(ok)f(for)g(an)m(y)h(single-w)m(ord)
e(command)h(in)f(GDB,)j(but)d(not)i(for)f(command)150
4738 y(aliases;)29 b(y)m(ou)f(should)f(de\014ne)g(a)i(ho)s(ok)f(for)g
(the)g(basic)g(command)g(name,)h(e.g.)41 b Fo(backtrace)26
b Fu(rather)i(than)150 4847 y Fo(bt)p Fu(.)66 b(If)39
b(an)g(error)g(o)s(ccurs)g(during)e(the)i(execution)g(of)h(y)m(our)f
(ho)s(ok,)i(execution)f(of)f(GDB)h(commands)150 4957
y(stops)26 b(and)f(GDB)j(issues)c(a)j(prompt)e(\(b)s(efore)h(the)g
(command)g(that)g(y)m(ou)h(actually)e(t)m(yp)s(ed)h(had)f(a)i(c)m
(hance)150 5067 y(to)k(run\).)275 5230 y(If)22 b(y)m(ou)h(try)g(to)h
(de\014ne)e(a)i(ho)s(ok)e(whic)m(h)g(do)s(es)h(not)g(matc)m(h)h(an)m(y)
f(kno)m(wn)g(command,)h(y)m(ou)g(get)g(a)f(w)m(arning)150
5340 y(from)30 b(the)g Fo(define)f Fu(command.)p eop
%%Page: 145 147
145 146 bop 150 -116 a Fu(Chapter)30 b(15:)41 b(Canned)30
b(Sequences)g(of)g(Commands)1644 b(145)150 299 y Fs(15.3)68
b(Command)46 b(\014les)275 491 y Fu(A)35 b(command)g(\014le)f(for)h
(GDB)h(is)f(a)g(\014le)g(of)g(lines)e(that)j(are)g(GDB)g(commands.)55
b(Commen)m(ts)35 b(\(lines)150 600 y(starting)f(with)f
Fl(#)p Fu(\))h(ma)m(y)h(also)g(b)s(e)e(included.)50 b(An)34
b(empt)m(y)h(line)e(in)g(a)h(command)g(\014le)g(do)s(es)g(nothing;)h
(it)150 710 y(do)s(es)30 b(not)h(mean)f(to)h(rep)s(eat)g(the)f(last)h
(command,)f(as)h(it)e(w)m(ould)h(from)g(the)g(terminal.)275
844 y(When)e(y)m(ou)g(start)h(GDB,)g(it)f(automatically)g(executes)i
(commands)e(from)f(its)h Fn(init)f(\014les)p Fu(.)39
b(These)28 b(are)150 953 y(\014les)33 b(named)h(`)p Fo(.gdbinit)p
Fu(')e(on)i(Unix,)g(or)g(`)p Fo(gdb.ini)p Fu(')f(on)h(DOS/Windo)m(ws.)
51 b(GDB)35 b(reads)f(the)g(init)f(\014le)150 1063 y(\(if)i(an)m(y\))i
(in)d(y)m(our)i(home)g(directory)-8 b(,)37 b(then)f(pro)s(cesses)f
(command)h(line)e(options)h(and)g(op)s(erands,)i(and)150
1172 y(then)c(reads)h(the)g(init)e(\014le)g(\(if)h(an)m(y\))i(in)d(the)
i(curren)m(t)g(w)m(orking)f(directory)-8 b(.)50 b(This)32
b(is)h(so)h(the)f(init)f(\014le)h(in)150 1282 y(y)m(our)d(home)g
(directory)g(can)h(set)f(options)g(\(suc)m(h)g(as)h Fo(set)e
(complaints)p Fu(\))f(whic)m(h)h(a\013ect)j(the)e(pro)s(cessing)150
1391 y(of)35 b(the)f(command)g(line)f(options)h(and)f(op)s(erands.)52
b(The)34 b(init)f(\014les)g(are)i(not)f(executed)i(if)d(y)m(ou)i(use)f
(the)150 1501 y(`)p Fo(-nx)p Fu(')c(option;)g(see)h(Section)f(2.1.2)i
([Cho)s(osing)e(mo)s(des],)g(page)h(11.)275 1635 y(On)24
b(some)h(con\014gurations)f(of)h(GDB,)h(the)f(init)e(\014le)h(is)g(kno)
m(wn)g(b)m(y)h(a)g(di\013eren)m(t)g(name)g(\(these)g(are)g(t)m(yp-)150
1744 y(ically)g(en)m(vironmen)m(ts)g(where)h(a)h(sp)s(ecialized)d(form)
i(of)g(GDB)i(ma)m(y)f(need)f(to)g(co)s(exist)h(with)e(other)h(forms,)
150 1854 y(hence)35 b(a)g(di\013eren)m(t)g(name)g(for)f(the)i(sp)s
(ecialized)d(v)m(ersion's)h(init)f(\014le\).)54 b(These)35
b(are)g(the)g(en)m(vironmen)m(ts)150 1963 y(with)29 b(sp)s(ecial)g
(init)g(\014le)g(names:)225 2097 y Fq(\017)60 b Fu(VxW)-8
b(orks)31 b(\(Wind)f(Riv)m(er)g(Systems)g(real-time)g(OS\):)g(`)p
Fo(.vxgdbinit)p Fu(')225 2231 y Fq(\017)60 b Fu(OS68K)30
b(\(Enea)h(Data)h(Systems)e(real-time)g(OS\):)g(`)p Fo(.os68gdbinit)p
Fu(')225 2364 y Fq(\017)60 b Fu(ES-1800)32 b(\(Ericsson)d(T)-8
b(elecom)31 b(AB)g(M68000)i(em)m(ulator\):)41 b(`)p Fo(.esgdbinit)p
Fu(')275 2522 y(Y)-8 b(ou)30 b(can)h(also)f(request)h(the)f(execution)h
(of)f(a)h(command)f(\014le)g(with)f(the)h Fo(source)f
Fu(command:)150 2728 y Fo(source)g Fn(\014lename)630
2838 y Fu(Execute)i(the)g(command)f(\014le)f Fn(\014lename)p
Fu(.)275 2995 y(The)f(lines)g(in)f(a)j(command)f(\014le)f(are)i
(executed)g(sequen)m(tially)-8 b(.)39 b(They)29 b(are)h(not)f(prin)m
(ted)f(as)h(they)h(are)150 3105 y(executed.)42 b(An)30
b(error)g(in)f(an)m(y)h(command)h(terminates)f(execution)g(of)h(the)f
(command)h(\014le.)275 3239 y(Commands)26 b(that)j(w)m(ould)d(ask)i
(for)g(con\014rmation)f(if)g(used)g(in)m(teractiv)m(ely)h(pro)s(ceed)g
(without)e(asking)150 3348 y(when)k(used)g(in)g(a)h(command)g(\014le.)
42 b(Man)m(y)31 b(GDB)h(commands)f(that)h(normally)d(prin)m(t)h
(messages)h(to)h(sa)m(y)150 3458 y(what)e(they)h(are)g(doing)e(omit)h
(the)h(messages)g(when)e(called)h(from)g(command)g(\014les.)150
3713 y Fs(15.4)68 b(Commands)46 b(for)f(con)l(trolled)h(output)275
3905 y Fu(During)22 b(the)j(execution)f(of)h(a)f(command)g(\014le)g(or)
g(a)h(user-de\014ned)d(command,)k(normal)d(GDB)i(output)150
4014 y(is)31 b(suppressed;)f(the)i(only)e(output)h(that)i(app)s(ears)d
(is)h(what)g(is)g(explicitly)e(prin)m(ted)h(b)m(y)i(the)f(commands)150
4124 y(in)g(the)i(de\014nition.)46 b(This)31 b(section)i(describ)s(es)e
(three)h(commands)h(useful)e(for)h(generating)h(exactly)h(the)150
4233 y(output)c(y)m(ou)h(w)m(an)m(t.)150 4439 y Fo(echo)e
Fn(text)101 b Fu(Prin)m(t)32 b Fn(text)p Fu(.)50 b(Nonprin)m(ting)31
b(c)m(haracters)k(can)e(b)s(e)f(included)f(in)h Fn(text)k
Fu(using)31 b(C)i(escap)s(e)g(se-)630 4549 y(quences,)23
b(suc)m(h)f(as)f(`)p Fo(\\n)p Fu(')h(to)g(prin)m(t)e(a)i(newline.)35
b Fm(No)22 b(newline)g(is)f(prin)m(ted)h(unless)e(y)m(ou)i(sp)s(ecify)
630 4658 y(one.)40 b Fu(In)28 b(addition)e(to)j(the)f(standard)g(C)f
(escap)s(e)i(sequences,)g(a)g(bac)m(kslash)f(follo)m(w)m(ed)f(b)m(y)i
(a)630 4768 y(space)c(stands)f(for)g(a)h(space.)39 b(This)23
b(is)g(useful)g(for)h(displa)m(ying)e(a)i(string)g(with)f(spaces)i(at)g
(the)630 4878 y(b)s(eginning)31 b(or)i(the)g(end,)h(since)f(leading)f
(and)h(trailing)e(spaces)j(are)g(otherwise)e(trimmed)630
4987 y(from)f(all)f(argumen)m(ts.)44 b(T)-8 b(o)32 b(prin)m(t)e(`)h
Fo(and)e(foo)h(=)g Fu(',)i(use)f(the)h(command)f(`)p
Fo(echo)e(\\)h(and)g(foo)630 5097 y(=)g(\\)g Fu('.)630
5230 y(A)h(bac)m(kslash)f(at)i(the)e(end)g(of)h Fn(text)j
Fu(can)d(b)s(e)f(used,)g(as)h(in)e(C,)i(to)g(con)m(tin)m(ue)g(the)g
(command)630 5340 y(on)m(to)h(subsequen)m(t)d(lines.)39
b(F)-8 b(or)31 b(example,)p eop
%%Page: 146 148
146 147 bop 150 -116 a Fu(146)2599 b(Debugging)31 b(with)e(GDB)870
299 y Fo(echo)47 b(This)f(is)h(some)g(text\\n\\)870 403
y(which)f(is)i(continued\\n\\)870 506 y(onto)f(several)e(lines.\\n)630
641 y Fu(pro)s(duces)29 b(the)i(same)f(output)g(as)870
770 y Fo(echo)47 b(This)f(is)h(some)g(text\\n)870 873
y(echo)g(which)f(is)h(continued\\n)870 977 y(echo)g(onto)f(several)g
(lines.\\n)150 1137 y(output)29 b Fn(expression)630 1246
y Fu(Prin)m(t)44 b(the)h(v)-5 b(alue)45 b(of)g Fn(expression)f
Fu(and)h(nothing)f(but)g(that)i(v)-5 b(alue:)69 b(no)45
b(newlines,)i(no)630 1356 y(`)p Fo($)p Fn(nn)29 b Fo(=)h
Fu('.)51 b(The)34 b(v)-5 b(alue)33 b(is)g(not)h(en)m(tered)g(in)f(the)h
(v)-5 b(alue)33 b(history)g(either.)50 b(See)34 b(Section)g(8.1)630
1465 y([Expressions],)29 b(page)i(55,)h(for)e(more)g(information)f(on)h
(expressions.)150 1625 y Fo(output/)p Fn(fm)m(t)h(expression)630
1734 y Fu(Prin)m(t)h(the)h(v)-5 b(alue)32 b(of)h Fn(expression)f
Fu(in)f(format)i Fn(fm)m(t)p Fu(.)49 b(Y)-8 b(ou)33 b(can)g(use)f(the)h
(same)h(formats)f(as)630 1844 y(for)d Fo(print)p Fu(.)39
b(See)31 b(Section)f(8.4)i([Output)d(formats],)i(page)g(58,)h(for)e
(more)h(information.)150 2003 y Fo(printf)e Fn(string)p
Fo(,)g Fn(expressions)t Fo(...)630 2113 y Fu(Prin)m(t)e(the)h(v)-5
b(alues)27 b(of)h(the)g Fn(expressions)i Fu(under)c(the)i(con)m(trol)g
(of)g Fn(string)p Fu(.)39 b(The)27 b Fn(expressions)630
2222 y Fu(are)i(separated)g(b)m(y)f(commas)h(and)e(ma)m(y)i(b)s(e)f
(either)g(n)m(um)m(b)s(ers)f(or)h(p)s(oin)m(ters.)39
b(Their)27 b(v)-5 b(alues)630 2332 y(are)36 b(prin)m(ted)e(as)i(sp)s
(eci\014ed)e(b)m(y)h Fn(string)p Fu(,)h(exactly)g(as)g(if)f(y)m(our)g
(program)g(w)m(ere)h(to)h(execute)630 2442 y(the)31 b(C)f(subroutine)
870 2570 y Fo(printf)46 b(\()p Fn(string)p Fo(,)g Fn(expressions)t
Fo(...)n(\);)630 2705 y Fu(F)-8 b(or)31 b(example,)f(y)m(ou)h(can)g
(prin)m(t)e(t)m(w)m(o)j(v)-5 b(alues)29 b(in)g(hex)i(lik)m(e)e(this:)
870 2834 y Fo(printf)46 b("foo,)g(bar-foo)g(=)i(0x\045x,)e
(0x\045x\\n",)g(foo,)g(bar-foo)630 2968 y Fu(The)30 b(only)f(bac)m
(kslash-escap)s(e)i(sequences)g(that)g(y)m(ou)f(can)h(use)f(in)f(the)i
(format)f(string)g(are)630 3078 y(the)h(simple)d(ones)i(that)h(consist)
f(of)h(bac)m(kslash)f(follo)m(w)m(ed)g(b)m(y)g(a)h(letter.)p
eop
%%Page: 147 149
147 148 bop 150 -116 a Fu(Chapter)30 b(16:)41 b(Using)30
b(GDB)h(under)e Ft(gnu)h Fu(Emacs)1746 b(147)150 299
y Fp(16)80 b(Using)54 b(GDB)f(under)f Fe(gnu)i Fp(Emacs)275
545 y Fu(A)32 b(sp)s(ecial)f(in)m(terface)j(allo)m(ws)d(y)m(ou)i(to)h
(use)e Ft(gnu)g Fu(Emacs)h(to)h(view)d(\(and)i(edit\))f(the)h(source)g
(\014les)e(for)150 655 y(the)g(program)f(y)m(ou)g(are)h(debugging)f
(with)f(GDB.)275 793 y(T)-8 b(o)31 b(use)f(this)f(in)m(terface,)j(use)e
(the)h(command)f Fl(M-x)g(gdb)f Fu(in)g(Emacs.)42 b(Giv)m(e)31
b(the)g(executable)g(\014le)f(y)m(ou)150 903 y(w)m(an)m(t)f(to)g(debug)
f(as)h(an)f(argumen)m(t.)40 b(This)27 b(command)h(starts)h(GDB)g(as)g
(a)g(subpro)s(cess)d(of)j(Emacs,)g(with)150 1012 y(input)f(and)i
(output)g(through)g(a)h(newly)e(created)i(Emacs)g(bu\013er.)275
1151 y(Using)e(GDB)j(under)c(Emacs)j(is)e(just)h(lik)m(e)g(using)f(GDB)
i(normally)e(except)i(for)f(t)m(w)m(o)i(things:)225 1289
y Fq(\017)60 b Fu(All)29 b(\\terminal")h(input)e(and)i(output)g(go)s
(es)h(through)f(the)g(Emacs)h(bu\013er.)275 1454 y(This)k(applies)h(b)s
(oth)h(to)i(GDB)g(commands)e(and)g(their)g(output,)i(and)e(to)i(the)e
(input)f(and)h(output)150 1564 y(done)30 b(b)m(y)g(the)h(program)f(y)m
(ou)h(are)g(debugging.)275 1703 y(This)h(is)h(useful)f(b)s(ecause)i(it)
g(means)g(that)g(y)m(ou)h(can)f(cop)m(y)h(the)f(text)h(of)f(previous)f
(commands)h(and)150 1812 y(input)28 b(them)j(again;)f(y)m(ou)h(can)g
(ev)m(en)g(use)f(parts)g(of)h(the)f(output)g(in)f(this)g(w)m(a)m(y)-8
b(.)275 1951 y(All)31 b(the)i(facilities)e(of)i(Emacs')h(Shell)c(mo)s
(de)j(are)g(a)m(v)-5 b(ailable)32 b(for)h(in)m(teracting)g(with)e(y)m
(our)i(program.)150 2060 y(In)g(particular,)g(y)m(ou)i(can)f(send)f
(signals)f(the)j(usual)d(w)m(a)m(y|for)j(example,)f Fl(C-c)c(C-c)j
Fu(for)g(an)h(in)m(terrupt,)150 2170 y Fl(C-c)29 b(C-z)h
Fu(for)g(a)h(stop.)225 2308 y Fq(\017)60 b Fu(GDB)31
b(displa)m(ys)e(source)h(co)s(de)h(through)f(Emacs.)275
2474 y(Eac)m(h)38 b(time)g(GDB)h(displa)m(ys)d(a)j(stac)m(k)g(frame,)i
(Emacs)d(automatically)g(\014nds)e(the)j(source)f(\014le)f(for)150
2583 y(that)f(frame)f(and)g(puts)f(an)h(arro)m(w)h(\(`)p
Fo(=>)p Fu('\))g(at)g(the)f(left)g(margin)f(of)i(the)f(curren)m(t)g
(line.)54 b(Emacs)36 b(uses)f(a)150 2693 y(separate)28
b(bu\013er)e(for)h(source)g(displa)m(y)-8 b(,)27 b(and)f(splits)f(the)j
(screen)f(to)h(sho)m(w)f(b)s(oth)f(y)m(our)h(GDB)h(session)f(and)150
2802 y(the)k(source.)275 2941 y(Explicit)24 b(GDB)k Fo(list)d
Fu(or)i(searc)m(h)h(commands)e(still)f(pro)s(duce)g(output)h(as)h
(usual,)g(but)f(y)m(ou)h(probably)150 3050 y(ha)m(v)m(e)32
b(no)e(reason)g(to)i(use)e(them)g(from)g(Emacs.)390 3183
y Fr(Warning:)54 b Fu(If)34 b(the)h(directory)f(where)g(y)m(our)g
(program)h(resides)e(is)h(not)g(y)m(our)h(curren)m(t)f(di-)390
3287 y(rectory)-8 b(,)33 b(it)d(can)i(b)s(e)e(easy)i(to)f(confuse)g
(Emacs)h(ab)s(out)e(the)h(lo)s(cation)g(of)g(the)h(source)f(\014les,)
390 3391 y(in)c(whic)m(h)g(case)i(the)g(auxiliary)d(displa)m(y)g
(bu\013er)h(do)s(es)h(not)h(app)s(ear)e(to)i(sho)m(w)f(y)m(our)h
(source.)390 3494 y(GDB)i(can)f(\014nd)f(programs)g(b)m(y)h(searc)m
(hing)g(y)m(our)g(en)m(vironmen)m(t's)g Fo(PATH)e Fu(v)-5
b(ariable,)30 b(so)g(the)390 3598 y(GDB)44 b(input)d(and)h(output)h
(session)f(pro)s(ceeds)h(normally;)k(but)c(Emacs)g(do)s(es)g(not)g(get)
390 3702 y(enough)30 b(information)f(bac)m(k)i(from)f(GDB)h(to)h(lo)s
(cate)f(the)f(source)h(\014les)e(in)g(this)h(situation.)390
3806 y(T)-8 b(o)34 b(a)m(v)m(oid)g(this)e(problem,)g(either)h(start)h
(GDB)g(mo)s(de)f(from)g(the)g(directory)g(where)g(y)m(our)390
3910 y(program)i(resides,)g(or)h(sp)s(ecify)d(an)j(absolute)e(\014le)h
(name)g(when)f(prompted)g(for)h(the)h Fl(M-x)390 4013
y(gdb)29 b Fu(argumen)m(t.)390 4146 y(A)h(similar)d(confusion)h(can)i
(result)e(if)h(y)m(ou)h(use)f(the)h(GDB)g Fo(file)f Fu(command)g(to)h
(switc)m(h)f(to)390 4250 y(debugging)34 b(a)h(program)f(in)g(some)h
(other)g(lo)s(cation,)h(from)e(an)h(existing)f(GDB)h(bu\013er)f(in)390
4354 y(Emacs.)275 4492 y(By)23 b(default,)i Fl(M-x)k(gdb)23
b Fu(calls)f(the)i(program)f(called)g(`)p Fo(gdb)p Fu('.)38
b(If)23 b(y)m(ou)h(need)f(to)i(call)e(GDB)h(b)m(y)g(a)f(di\013eren)m(t)
150 4602 y(name)i(\(for)g(example,)h(if)e(y)m(ou)i(k)m(eep)g(sev)m
(eral)f(con\014gurations)f(around,)i(with)d(di\013eren)m(t)i(names\))g
(y)m(ou)h(can)150 4711 y(set)31 b(the)f(Emacs)h(v)-5
b(ariable)29 b Fo(gdb-command-name)p Fu(;)d(for)31 b(example,)390
4844 y Fo(\(setq)46 b(gdb-command-name)e("mygdb"\))150
4982 y Fu(\(preceded)37 b(b)m(y)g Fl(ESC)29 b(ESC)p Fu(,)38
b(or)f(t)m(yp)s(ed)g(in)f(the)h Fo(*scratch*)d Fu(bu\013er,)k(or)f(in)f
(y)m(our)h(`)p Fo(.emacs)p Fu(')f(\014le\))g(mak)m(es)150
5092 y(Emacs)31 b(call)e(the)i(program)f(named)g(\\)p
Fo(mygdb)p Fu(")g(instead.)275 5230 y(In)i(the)h(GDB)h(I/O)f(bu\013er,)
g(y)m(ou)g(can)g(use)g(these)g(sp)s(ecial)f(Emacs)h(commands)f(in)g
(addition)f(to)j(the)150 5340 y(standard)c(Shell)e(mo)s(de)i(commands:)
p eop
%%Page: 148 150
148 149 bop 150 -116 a Fu(148)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fl(C-h)g(m)259 b Fu(Describ)s(e)30 b(the)g(features)h(of)f
(Emacs')h(GDB)h(Mo)s(de.)150 442 y Fl(M-s)336 b Fu(Execute)33
b(to)f(another)g(source)g(line,)f(lik)m(e)g(the)i(GDB)g
Fo(step)d Fu(command;)j(also)f(up)s(date)f(the)630 552
y(displa)m(y)e(windo)m(w)f(to)k(sho)m(w)e(the)g(curren)m(t)g(\014le)g
(and)g(lo)s(cation.)150 695 y Fl(M-n)336 b Fu(Execute)29
b(to)h(next)f(source)f(line)f(in)h(this)f(function,)h(skipping)e(all)h
(function)g(calls,)i(lik)m(e)f(the)630 805 y(GDB)f Fo(next)e
Fu(command.)39 b(Then)25 b(up)s(date)g(the)h(displa)m(y)e(windo)m(w)h
(to)h(sho)m(w)g(the)g(curren)m(t)g(\014le)630 914 y(and)k(lo)s(cation.)
150 1058 y Fl(M-i)336 b Fu(Execute)25 b(one)f(instruction,)f(lik)m(e)h
(the)g(GDB)h Fo(stepi)d Fu(command;)k(up)s(date)d(displa)m(y)f(windo)m
(w)630 1167 y(accordingly)-8 b(.)150 1310 y Fl(M-x)29
b(gdb-nexti)630 1420 y Fu(Execute)36 b(to)g(next)f(instruction,)f
(using)g(the)h(GDB)h Fo(nexti)d Fu(command;)38 b(up)s(date)c(displa)m
(y)630 1530 y(windo)m(w)29 b(accordingly)-8 b(.)150 1673
y Fl(C-c)29 b(C-f)163 b Fu(Execute)38 b(un)m(til)e(exit)i(from)f(the)g
(selected)i(stac)m(k)g(frame,)g(lik)m(e)e(the)h(GDB)g
Fo(finish)e Fu(com-)630 1783 y(mand.)150 1926 y Fl(M-c)336
b Fu(Con)m(tin)m(ue)30 b(execution)g(of)h(y)m(our)f(program,)h(lik)m(e)
e(the)i(GDB)g Fo(continue)e Fu(command.)630 2052 y Fr(Warning:)46
b Fu(In)30 b(Emacs)g(v19,)i(this)d(command)h(is)g Fl(C-c)f(C-p)p
Fu(.)150 2196 y Fl(M-u)336 b Fu(Go)37 b(up)f(the)g(n)m(um)m(b)s(er)g
(of)g(frames)h(indicated)e(b)m(y)h(the)h(n)m(umeric)e(argumen)m(t)i
(\(see)h(section)630 2305 y(\\Numeric)23 b(Argumen)m(ts")i(in)d
Fn(The)h Ft(gnu)h Fn(Emacs)g(Man)m(ual)t Fu(\),)h(lik)m(e)e(the)h(GDB)h
Fo(up)e Fu(command.)630 2432 y Fr(Warning:)46 b Fu(In)30
b(Emacs)g(v19,)i(this)d(command)h(is)g Fl(C-c)f(C-u)p
Fu(.)150 2575 y Fl(M-d)336 b Fu(Go)39 b(do)m(wn)g(the)g(n)m(um)m(b)s
(er)e(of)i(frames)g(indicated)e(b)m(y)i(the)g(n)m(umeric)e(argumen)m
(t,)42 b(lik)m(e)c(the)630 2685 y(GDB)31 b Fo(down)f
Fu(command.)630 2811 y Fr(Warning:)46 b Fu(In)30 b(Emacs)g(v19,)i(this)
d(command)h(is)g Fl(C-c)f(C-d)p Fu(.)150 2954 y Fl(C-x)g(&)259
b Fu(Read)39 b(the)g(n)m(um)m(b)s(er)e(where)h(the)h(cursor)f(is)g(p)s
(ositioned,)h(and)f(insert)f(it)i(at)g(the)g(end)f(of)630
3064 y(the)33 b(GDB)g(I/O)g(bu\013er.)46 b(F)-8 b(or)33
b(example,)g(if)e(y)m(ou)i(wish)e(to)i(disassem)m(ble)e(co)s(de)i
(around)e(an)630 3173 y(address)d(that)i(w)m(as)f(displa)m(y)m(ed)f
(earlier,)g(t)m(yp)s(e)h Fl(disassemble)p Fu(;)e(then)h(mo)m(v)m(e)j
(the)e(cursor)f(to)630 3283 y(the)j(address)e(displa)m(y)-8
b(,)30 b(and)g(pic)m(k)g(up)g(the)g(argumen)m(t)h(for)g
Fo(disassemble)c Fu(b)m(y)k(t)m(yping)f Fl(C-x)630 3393
y(&)p Fu(.)630 3519 y(Y)-8 b(ou)43 b(can)g(customize)f(this)g(further)f
(b)m(y)h(de\014ning)f(elemen)m(ts)h(of)h(the)g(list)e
Fo(gdb-print-)630 3629 y(command)p Fu(;)24 b(once)g(it)f(is)f
(de\014ned,)i(y)m(ou)f(can)h(format)f(or)h(otherwise)e(pro)s(cess)h(n)m
(um)m(b)s(ers)f(pic)m(k)m(ed)630 3738 y(up)32 b(b)m(y)h
Fl(C-x)d(&)i Fu(b)s(efore)h(they)h(are)f(inserted.)48
b(A)33 b(n)m(umeric)f(argumen)m(t)i(to)g Fl(C-x)29 b(&)k
Fu(indicates)630 3848 y(that)e(y)m(ou)h(wish)d(sp)s(ecial)g
(formatting,)i(and)f(also)h(acts)h(as)f(an)f(index)g(to)h(pic)m(k)g(an)
f(elemen)m(t)630 3957 y(of)i(the)h(list.)44 b(If)32 b(the)g(list)f
(elemen)m(t)i(is)e(a)i(string,)e(the)i(n)m(um)m(b)s(er)e(to)i(b)s(e)e
(inserted)g(is)g(format-)630 4067 y(ted)39 b(using)e(the)h(Emacs)h
(function)e Fo(format)p Fu(;)k(otherwise)d(the)h(n)m(um)m(b)s(er)e(is)g
(passed)h(as)h(an)630 4177 y(argumen)m(t)31 b(to)g(the)f(corresp)s
(onding)f(list)g(elemen)m(t.)275 4320 y(In)g(an)m(y)h(source)g(\014le,)
g(the)g(Emacs)g(command)g Fl(C-x)g(SPC)f Fu(\()p Fo(gdb-break)p
Fu(\))f(tells)h(GDB)i(to)g(set)f(a)h(break-)150 4430
y(p)s(oin)m(t)e(on)i(the)f(source)h(line)d(p)s(oin)m(t)i(is)f(on.)275
4556 y(If)e(y)m(ou)i(acciden)m(tally)f(delete)h(the)f(source-displa)m
(y)f(bu\013er,)h(an)g(easy)h(w)m(a)m(y)h(to)f(get)g(it)f(bac)m(k)h(is)f
(to)h(t)m(yp)s(e)150 4666 y(the)f(command)f Fo(f)g Fu(in)g(the)g(GDB)i
(bu\013er,)e(to)i(request)e(a)h(frame)g(displa)m(y;)f(when)f(y)m(ou)i
(run)e(under)g(Emacs,)150 4775 y(this)j(recreates)j(the)f(source)f
(bu\013er)g(if)f(necessary)i(to)g(sho)m(w)f(y)m(ou)h(the)f(con)m(text)j
(of)d(the)h(curren)m(t)f(frame.)275 4902 y(The)d(source)h(\014les)f
(displa)m(y)m(ed)f(in)h(Emacs)h(are)g(in)f(ordinary)f(Emacs)i
(bu\013ers)f(whic)m(h)g(are)h(visiting)e(the)150 5011
y(source)k(\014les)e(in)g(the)i(usual)e(w)m(a)m(y)-8
b(.)42 b(Y)-8 b(ou)30 b(can)f(edit)g(the)h(\014les)f(with)f(these)i
(bu\013ers)e(if)g(y)m(ou)i(wish;)e(but)h(k)m(eep)150
5121 y(in)24 b(mind)f(that)j(GDB)h(comm)m(unicates)f(with)e(Emacs)i(in)
e(terms)h(of)g(line)f(n)m(um)m(b)s(ers.)38 b(If)25 b(y)m(ou)h(add)e(or)
i(delete)150 5230 y(lines)33 b(from)h(the)g(text,)j(the)d(line)f(n)m
(um)m(b)s(ers)g(that)i(GDB)h(kno)m(ws)e(cease)i(to)f(corresp)s(ond)e
(prop)s(erly)f(with)150 5340 y(the)f(co)s(de.)p eop
%%Page: 149 151
149 150 bop 150 -116 a Fu(Chapter)30 b(17:)41 b(Rep)s(orting)30
b(Bugs)g(in)f(GDB)1989 b(149)150 299 y Fp(17)80 b(Rep)t(orting)54
b(Bugs)e(in)i(GDB)275 571 y Fu(Y)-8 b(our)30 b(bug)g(rep)s(orts)f(pla)m
(y)h(an)h(essen)m(tial)f(role)g(in)f(making)h(GDB)h(reliable.)275
718 y(Rep)s(orting)i(a)i(bug)f(ma)m(y)i(help)d(y)m(ou)i(b)m(y)g
(bringing)d(a)j(solution)e(to)j(y)m(our)f(problem,)f(or)h(it)f(ma)m(y)h
(not.)150 827 y(But)e(in)f(an)m(y)h(case)i(the)e(principal)d(function)h
(of)j(a)f(bug)g(rep)s(ort)f(is)g(to)i(help)e(the)h(en)m(tire)g(comm)m
(unit)m(y)g(b)m(y)150 937 y(making)38 b(the)g(next)g(v)m(ersion)g(of)g
(GDB)i(w)m(ork)e(b)s(etter.)64 b(Bug)39 b(rep)s(orts)e(are)i(y)m(our)f
(con)m(tribution)f(to)i(the)150 1047 y(main)m(tenance)31
b(of)f(GDB.)275 1194 y(In)36 b(order)g(for)g(a)i(bug)e(rep)s(ort)g(to)h
(serv)m(e)h(its)e(purp)s(ose,)h(y)m(ou)g(m)m(ust)g(include)d(the)j
(information)e(that)150 1303 y(enables)30 b(us)f(to)i(\014x)f(the)h
(bug.)150 1592 y Fs(17.1)68 b(Ha)l(v)l(e)47 b(y)l(ou)e(found)f(a)h
(bug?)275 1797 y Fu(If)29 b(y)m(ou)i(are)g(not)g(sure)e(whether)h(y)m
(ou)h(ha)m(v)m(e)g(found)e(a)i(bug,)f(here)g(are)h(some)g(guidelines:)
225 2013 y Fq(\017)60 b Fu(If)25 b(the)h(debugger)f(gets)i(a)f(fatal)g
(signal,)f(for)g(an)m(y)h(input)e(whatev)m(er,)k(that)e(is)e(a)i(GDB)h
(bug.)39 b(Reliable)330 2122 y(debuggers)30 b(nev)m(er)h(crash.)225
2263 y Fq(\017)60 b Fu(If)32 b(GDB)h(pro)s(duces)e(an)h(error)f
(message)j(for)e(v)-5 b(alid)30 b(input,)h(that)i(is)e(a)h(bug.)46
b(\(Note)34 b(that)e(if)f(y)m(ou're)330 2373 y(cross)e(debugging,)f
(the)h(problem)f(ma)m(y)h(also)g(b)s(e)f(somewhere)h(in)e(the)i
(connection)g(to)h(the)f(target.\))225 2514 y Fq(\017)60
b Fu(If)32 b(GDB)j(do)s(es)d(not)h(pro)s(duce)f(an)h(error)g(message)h
(for)e(in)m(v)-5 b(alid)31 b(input,)h(that)h(is)f(a)i(bug.)48
b(Ho)m(w)m(ev)m(er,)330 2623 y(y)m(ou)31 b(should)d(note)j(that)h(y)m
(our)e(idea)g(of)h(\\in)m(v)-5 b(alid)28 b(input")h(migh)m(t)h(b)s(e)g
(our)g(idea)g(of)h(\\an)g(extension")330 2733 y(or)f(\\supp)s(ort)f
(for)i(traditional)d(practice".)225 2874 y Fq(\017)60
b Fu(If)27 b(y)m(ou)h(are)h(an)e(exp)s(erienced)g(user)g(of)h
(debugging)e(to)s(ols,)j(y)m(our)f(suggestions)f(for)h(impro)m(v)m
(emen)m(t)g(of)330 2983 y(GDB)j(are)g(w)m(elcome)g(in)e(an)m(y)i(case.)
150 3272 y Fs(17.2)68 b(Ho)l(w)46 b(to)f(rep)t(ort)g(bugs)275
3477 y Fu(A)27 b(n)m(um)m(b)s(er)f(of)i(companies)f(and)g(individuals)
22 b(o\013er)28 b(supp)s(ort)e(for)h Ft(gnu)g Fu(pro)s(ducts.)39
b(If)27 b(y)m(ou)h(obtained)150 3587 y(GDB)j(from)f(a)h(supp)s(ort)e
(organization,)h(w)m(e)h(recommend)f(y)m(ou)h(con)m(tact)i(that)e
(organization)f(\014rst.)275 3734 y(Y)-8 b(ou)26 b(can)h(\014nd)d(con)m
(tact)29 b(information)24 b(for)i(man)m(y)g(supp)s(ort)f(companies)h
(and)f(individuals)d(in)i(the)j(\014le)150 3843 y(`)p
Fo(etc/SERVICE)p Fu(')h(in)h(the)h Ft(gnu)h Fu(Emacs)f(distribution.)
275 3990 y(In)f(an)m(y)i(ev)m(en)m(t,)h(w)m(e)f(also)f(recommend)g
(that)h(y)m(ou)g(send)f(bug)f(rep)s(orts)h(for)g(GDB)i(to)f(this)e
(addresses:)390 4132 y Fo(bug-gdb@prep.ai.mit.edu)275
4279 y Fm(Do)j(not)g(send)f(bug)g(rep)s(orts)h(to)h(`)p
Fo(info-gdb)p Fm(',)e(or)h(to)h(`)p Fo(help-gdb)p Fm(',)e(or)h(to)h(an)
m(y)f(newsgroups.)44 b Fu(Most)150 4388 y(users)31 b(of)h(GDB)i(do)d
(not)i(w)m(an)m(t)g(to)f(receiv)m(e)h(bug)f(rep)s(orts.)45
b(Those)32 b(that)g(do)g(ha)m(v)m(e)h(arranged)f(to)h(receiv)m(e)150
4498 y(`)p Fo(bug-gdb)p Fu('.)275 4645 y(The)g(mailing)f(list)g(`)p
Fo(bug-gdb)p Fu(')g(has)i(a)g(newsgroup)f(`)p Fo(gnu.gdb.bug)p
Fu(')e(whic)m(h)i(serv)m(es)h(as)g(a)g(rep)s(eater.)150
4755 y(The)26 b(mailing)e(list)h(and)h(the)h(newsgroup)e(carry)h
(exactly)i(the)e(same)h(messages.)40 b(Often)26 b(p)s(eople)g(think)f
(of)150 4864 y(p)s(osting)31 b(bug)g(rep)s(orts)g(to)i(the)f(newsgroup)
f(instead)g(of)h(mailing)e(them.)45 b(This)30 b(app)s(ears)h(to)i(w)m
(ork,)g(but)150 4974 y(it)28 b(has)h(one)g(problem)e(whic)m(h)h(can)h
(b)s(e)f(crucial:)39 b(a)29 b(newsgroup)f(p)s(osting)f(often)j(lac)m
(ks)f(a)g(mail)f(path)g(bac)m(k)150 5083 y(to)36 b(the)g(sender.)56
b(Th)m(us,)37 b(if)d(w)m(e)j(need)e(to)i(ask)f(for)f(more)h
(information,)g(w)m(e)g(ma)m(y)g(b)s(e)f(unable)g(to)h(reac)m(h)150
5193 y(y)m(ou.)41 b(F)-8 b(or)31 b(this)e(reason,)i(it)f(is)g(b)s
(etter)g(to)h(send)f(bug)g(rep)s(orts)f(to)i(the)g(mailing)d(list.)275
5340 y(As)i(a)h(last)f(resort,)h(send)e(bug)h(rep)s(orts)g(on)g(pap)s
(er)f(to:)p eop
%%Page: 150 152
150 151 bop 150 -116 a Fu(150)2599 b(Debugging)31 b(with)e(GDB)390
299 y Ft(gnu)48 b Fo(Debugger)d(Bugs)390 403 y(Free)i(Software)e
(Foundation)g(Inc.)390 506 y(59)i(Temple)f(Place)h(-)g(Suite)f(330)390
610 y(Boston,)g(MA)h(02111-1307)390 714 y(USA)275 857
y Fu(The)29 b(fundamen)m(tal)f(principle)e(of)k(rep)s(orting)e(bugs)g
(usefully)f(is)i(this:)39 b Fm(rep)s(ort)30 b(all)g(the)g(facts)p
Fu(.)41 b(If)29 b(y)m(ou)150 966 y(are)i(not)f(sure)g(whether)g(to)h
(state)h(a)e(fact)i(or)e(lea)m(v)m(e)i(it)e(out,)h(state)g(it!)275
1109 y(Often)39 b(p)s(eople)g(omit)g(facts)i(b)s(ecause)f(they)g(think)
e(they)i(kno)m(w)g(what)f(causes)h(the)g(problem)f(and)150
1219 y(assume)e(that)h(some)g(details)f(do)g(not)h(matter.)63
b(Th)m(us,)39 b(y)m(ou)f(migh)m(t)f(assume)g(that)i(the)e(name)h(of)g
(the)150 1329 y(v)-5 b(ariable)25 b(y)m(ou)i(use)g(in)e(an)h(example)h
(do)s(es)f(not)h(matter.)40 b(W)-8 b(ell,)27 b(probably)e(it)h(do)s(es)
h(not,)h(but)d(one)i(cannot)150 1438 y(b)s(e)38 b(sure.)66
b(P)m(erhaps)39 b(the)g(bug)g(is)f(a)h(stra)m(y)h(memory)f(reference)g
(whic)m(h)f(happ)s(ens)f(to)j(fetc)m(h)g(from)f(the)150
1548 y(lo)s(cation)g(where)g(that)h(name)f(is)g(stored)g(in)f(memory;)
44 b(p)s(erhaps,)c(if)f(the)g(name)h(w)m(ere)f(di\013eren)m(t,)j(the)
150 1657 y(con)m(ten)m(ts)27 b(of)f(that)f(lo)s(cation)g(w)m(ould)f(fo)
s(ol)h(the)h(debugger)f(in)m(to)g(doing)f(the)i(righ)m(t)f(thing)f
(despite)h(the)g(bug.)150 1767 y(Pla)m(y)31 b(it)g(safe)h(and)f(giv)m
(e)h(a)g(sp)s(eci\014c,)e(complete)i(example.)44 b(That)31
b(is)g(the)g(easiest)h(thing)f(for)g(y)m(ou)h(to)g(do,)150
1876 y(and)e(the)g(most)h(helpful.)275 2019 y(Keep)k(in)f(mind)f(that)j
(the)f(purp)s(ose)f(of)h(a)h(bug)e(rep)s(ort)h(is)f(to)i(enable)f(us)f
(to)i(\014x)f(the)g(bug.)55 b(It)35 b(ma)m(y)150 2129
y(b)s(e)28 b(that)h(the)f(bug)g(has)g(b)s(een)g(rep)s(orted)f
(previously)-8 b(,)27 b(but)h(neither)f(y)m(ou)i(nor)f(w)m(e)h(can)f
(kno)m(w)h(that)g(unless)150 2239 y(y)m(our)h(bug)g(rep)s(ort)g(is)f
(complete)i(and)f(self-con)m(tained.)275 2381 y(Sometimes)g(p)s(eople)g
(giv)m(e)i(a)g(few)f(sk)m(etc)m(h)m(y)i(facts)e(and)g(ask,)h(\\Do)s(es)
g(this)e(ring)g(a)i(b)s(ell?")41 b(Those)31 b(bug)150
2491 y(rep)s(orts)g(are)h(useless,)f(and)g(w)m(e)h(urge)f(ev)m(ery)m
(one)i(to)f Fr(r)-5 b(efuse)34 b(to)g(r)-5 b(esp)g(ond)37
b(to)d(them)39 b Fu(except)33 b(to)f(c)m(hide)f(the)150
2601 y(sender)f(to)h(rep)s(ort)e(bugs)h(prop)s(erly)-8
b(.)275 2743 y(T)g(o)30 b(enable)g(us)g(to)h(\014x)f(the)g(bug,)g(y)m
(ou)h(should)d(include)h(all)g(these)i(things:)225 2886
y Fq(\017)60 b Fu(The)32 b(v)m(ersion)f(of)i(GDB.)g(GDB)h(announces)e
(it)f(if)h(y)m(ou)g(start)h(with)e(no)h(argumen)m(ts;)i(y)m(ou)e(can)h
(also)330 2996 y(prin)m(t)c(it)h(at)h(an)m(y)g(time)f(using)f
Fo(show)g(version)p Fu(.)330 3135 y(Without)d(this,)h(w)m(e)g(will)d
(not)j(kno)m(w)f(whether)g(there)h(is)e(an)m(y)i(p)s(oin)m(t)f(in)f(lo)
s(oking)g(for)i(the)g(bug)e(in)h(the)330 3244 y(curren)m(t)k(v)m
(ersion)g(of)h(GDB.)225 3383 y Fq(\017)60 b Fu(The)22
b(t)m(yp)s(e)g(of)g(mac)m(hine)g(y)m(ou)h(are)f(using,)h(and)e(the)i
(op)s(erating)e(system)i(name)f(and)f(v)m(ersion)h(n)m(um)m(b)s(er.)225
3522 y Fq(\017)60 b Fu(What)31 b(compiler)e(\(and)h(its)g(v)m(ersion\))
g(w)m(as)h(used)e(to)j(compile)d(GDB|e.g.)43 b(\\gcc{2.8.1".)225
3660 y Fq(\017)60 b Fu(What)27 b(compiler)e(\(and)h(its)g(v)m(ersion\))
g(w)m(as)g(used)g(to)h(compile)e(the)i(program)f(y)m(ou)g(are)h
(debugging|)330 3770 y(e.g.)43 b(\\gcc{2.8.1",)36 b(or)31
b(\\HP92453-01)j(A.10.32.03)h(HP)c(C)f(Compiler".)41
b(F)-8 b(or)31 b(GCC,)g(y)m(ou)g(can)g(sa)m(y)330 3879
y Fo(gcc)e(--version)e Fu(to)j(get)h(this)d(information;)g(for)h(other)
h(compilers,)e(see)i(the)f(do)s(cumen)m(tation)g(for)330
3989 y(those)i(compilers.)225 4128 y Fq(\017)60 b Fu(The)30
b(command)f(argumen)m(ts)i(y)m(ou)f(ga)m(v)m(e)i(the)f(compiler)d(to)j
(compile)e(y)m(our)h(example)g(and)f(observ)m(e)330 4237
y(the)37 b(bug.)60 b(F)-8 b(or)38 b(example,)g(did)d(y)m(ou)j(use)e(`)p
Fo(-O)p Fu('?)60 b(T)-8 b(o)38 b(guaran)m(tee)g(y)m(ou)f(will)e(not)i
(omit)f(something)330 4347 y(imp)s(ortan)m(t,)26 b(list)e(them)h(all.)
38 b(A)26 b(cop)m(y)g(of)g(the)f(Mak)m(e\014le)h(\(or)g(the)g(output)f
(from)g(mak)m(e\))i(is)d(su\016cien)m(t.)330 4486 y(If)k(w)m(e)h(w)m
(ere)g(to)h(try)e(to)h(guess)g(the)g(argumen)m(ts,)g(w)m(e)g(w)m(ould)f
(probably)e(guess)j(wrong)f(and)g(then)g(w)m(e)330 4595
y(migh)m(t)i(not)h(encoun)m(ter)g(the)f(bug.)225 4734
y Fq(\017)60 b Fu(A)30 b(complete)h(input)e(script,)g(and)h(all)f
(necessary)i(source)g(\014les,)e(that)i(will)d(repro)s(duce)h(the)i
(bug.)225 4873 y Fq(\017)60 b Fu(A)28 b(description)e(of)i(what)g(b)s
(eha)m(vior)e(y)m(ou)j(observ)m(e)f(that)h(y)m(ou)f(b)s(eliev)m(e)f(is)
g(incorrect.)39 b(F)-8 b(or)29 b(example,)330 4982 y(\\It)i(gets)g(a)g
(fatal)g(signal.")330 5121 y(Of)i(course,)h(if)e(the)h(bug)g(is)f(that)
i(GDB)g(gets)g(a)f(fatal)h(signal,)f(then)f(w)m(e)i(will)c(certainly)j
(notice)g(it.)330 5230 y(But)38 b(if)e(the)i(bug)f(is)g(incorrect)g
(output,)j(w)m(e)e(migh)m(t)f(not)h(notice)g(unless)e(it)h(is)f
(glaringly)g(wrong.)330 5340 y(Y)-8 b(ou)31 b(migh)m(t)f(as)h(w)m(ell)e
(not)i(giv)m(e)f(us)g(a)h(c)m(hance)g(to)g(mak)m(e)h(a)f(mistak)m(e.)p
eop
%%Page: 151 153
151 152 bop 150 -116 a Fu(Chapter)30 b(17:)41 b(Rep)s(orting)30
b(Bugs)g(in)f(GDB)1989 b(151)330 299 y(Ev)m(en)33 b(if)e(the)i(problem)
e(y)m(ou)i(exp)s(erience)f(is)g(a)h(fatal)f(signal,)h(y)m(ou)f(should)f
(still)g(sa)m(y)i(so)g(explicitly)-8 b(.)330 408 y(Supp)s(ose)29
b(something)h(strange)i(is)e(going)h(on,)g(suc)m(h)f(as,)i(y)m(our)e
(cop)m(y)i(of)f(GDB)h(is)e(out)h(of)g(sync)m(h,)g(or)330
518 y(y)m(ou)37 b(ha)m(v)m(e)i(encoun)m(tered)e(a)g(bug)g(in)f(the)h(C)
f(library)f(on)i(y)m(our)g(system.)61 b(\(This)35 b(has)i(happ)s
(ened!\))330 628 y(Y)-8 b(our)26 b(cop)m(y)h(migh)m(t)f(crash)g(and)g
(ours)f(w)m(ould)g(not.)40 b(If)25 b(y)m(ou)i(told)e(us)h(to)h(exp)s
(ect)f(a)h(crash,)g(then)f(when)330 737 y(ours)k(fails)g(to)i(crash,)f
(w)m(e)g(w)m(ould)f(kno)m(w)h(that)h(the)f(bug)g(w)m(as)g(not)g(happ)s
(ening)e(for)i(us.)42 b(If)30 b(y)m(ou)i(had)330 847
y(not)f(told)f(us)f(to)j(exp)s(ect)e(a)h(crash,)g(then)f(w)m(e)h(w)m
(ould)e(not)i(b)s(e)e(able)h(to)i(dra)m(w)e(an)m(y)g(conclusion)f(from)
330 956 y(our)h(observ)-5 b(ations.)225 1091 y Fq(\017)60
b Fu(If)33 b(y)m(ou)h(wish)e(to)i(suggest)h(c)m(hanges)f(to)h(the)e
(GDB)i(source,)g(send)e(us)g(con)m(text)i(di\013s.)49
b(If)33 b(y)m(ou)h(ev)m(en)330 1200 y(discuss)29 b(something)g(in)g
(the)i(GDB)h(source,)e(refer)g(to)i(it)d(b)m(y)i(con)m(text,)h(not)f(b)
m(y)f(line)f(n)m(um)m(b)s(er.)330 1335 y(The)39 b(line)e(n)m(um)m(b)s
(ers)h(in)g(our)h(dev)m(elopmen)m(t)g(sources)h(will)c(not)k(matc)m(h)g
(those)g(in)d(y)m(our)j(sources.)330 1445 y(Y)-8 b(our)30
b(line)f(n)m(um)m(b)s(ers)g(w)m(ould)g(con)m(v)m(ey)j(no)f(useful)d
(information)h(to)i(us.)275 1604 y(Here)f(are)h(some)g(things)e(that)i
(are)g(not)g(necessary:)225 1738 y Fq(\017)60 b Fu(A)30
b(description)f(of)h(the)h(en)m(v)m(elop)s(e)g(of)f(the)h(bug.)330
1873 y(Often)h(p)s(eople)f(who)h(encoun)m(ter)g(a)h(bug)e(sp)s(end)g(a)
h(lot)g(of)g(time)g(in)m(v)m(estigating)g(whic)m(h)f(c)m(hanges)i(to)
330 1983 y(the)e(input)d(\014le)h(will)f(mak)m(e)k(the)e(bug)g(go)h(a)m
(w)m(a)m(y)h(and)e(whic)m(h)f(c)m(hanges)j(will)27 b(not)k(a\013ect)h
(it.)330 2117 y(This)k(is)i(often)g(time)g(consuming)f(and)h(not)g(v)m
(ery)h(useful,)f(b)s(ecause)g(the)h(w)m(a)m(y)g(w)m(e)g(will)c(\014nd)i
(the)330 2227 y(bug)30 b(is)g(b)m(y)h(running)d(a)k(single)d(example)i
(under)e(the)i(debugger)g(with)f(breakp)s(oin)m(ts,)g(not)h(b)m(y)g
(pure)330 2336 y(deduction)43 b(from)h(a)g(series)g(of)g(examples.)82
b(W)-8 b(e)45 b(recommend)f(that)h(y)m(ou)f(sa)m(v)m(e)i(y)m(our)e
(time)g(for)330 2446 y(something)30 b(else.)330 2580
y(Of)f(course,)h(if)e(y)m(ou)h(can)h(\014nd)e(a)h(simpler)e(example)i
(to)h(rep)s(ort)f Fr(inste)-5 b(ad)40 b Fu(of)29 b(the)h(original)d
(one,)j(that)330 2690 y(is)g(a)i(con)m(v)m(enience)g(for)f(us.)43
b(Errors)30 b(in)g(the)h(output)g(will)e(b)s(e)h(easier)h(to)h(sp)s
(ot,)g(running)c(under)i(the)330 2800 y(debugger)g(will)e(tak)m(e)k
(less)e(time,)g(and)g(so)g(on.)330 2934 y(Ho)m(w)m(ev)m(er,)48
b(simpli\014cation)39 b(is)j(not)h(vital;)48 b(if)41
b(y)m(ou)i(do)g(not)g(w)m(an)m(t)g(to)g(do)g(this,)i(rep)s(ort)d(the)h
(bug)330 3044 y(an)m(yw)m(a)m(y)32 b(and)e(send)f(us)h(the)g(en)m(tire)
h(test)g(case)g(y)m(ou)g(used.)225 3178 y Fq(\017)60
b Fu(A)30 b(patc)m(h)h(for)g(the)f(bug.)330 3313 y(A)35
b(patc)m(h)h(for)g(the)f(bug)g(do)s(es)g(help)f(us)h(if)f(it)h(is)f(a)i
(go)s(o)s(d)f(one.)56 b(But)36 b(do)f(not)h(omit)f(the)h(necessary)330
3422 y(information,)30 b(suc)m(h)i(as)g(the)f(test)i(case,)g(on)e(the)h
(assumption)e(that)i(a)g(patc)m(h)h(is)d(all)h(w)m(e)h(need.)44
b(W)-8 b(e)330 3532 y(migh)m(t)30 b(see)i(problems)c(with)i(y)m(our)g
(patc)m(h)i(and)e(decide)g(to)h(\014x)f(the)h(problem)e(another)i(w)m
(a)m(y)-8 b(,)32 b(or)e(w)m(e)330 3641 y(migh)m(t)g(not)h(understand)d
(it)i(at)h(all.)330 3776 y(Sometimes)41 b(with)f(a)i(program)f(as)g
(complicated)g(as)h(GDB)g(it)f(is)f(v)m(ery)i(hard)e(to)i(construct)g
(an)330 3885 y(example)29 b(that)g(will)d(mak)m(e)k(the)g(program)e
(follo)m(w)g(a)i(certain)f(path)f(through)h(the)g(co)s(de.)40
b(If)29 b(y)m(ou)g(do)330 3995 y(not)k(send)f(us)g(the)h(example,)h(w)m
(e)f(will)e(not)i(b)s(e)f(able)g(to)i(construct)f(one,)h(so)f(w)m(e)h
(will)c(not)j(b)s(e)f(able)330 4105 y(to)f(v)m(erify)f(that)h(the)f
(bug)g(is)g(\014xed.)330 4239 y(And)c(if)g(w)m(e)i(cannot)f(understand)
f(what)h(bug)f(y)m(ou)i(are)f(trying)f(to)i(\014x,)f(or)h(wh)m(y)e(y)m
(our)h(patc)m(h)h(should)330 4349 y(b)s(e)i(an)g(impro)m(v)m(emen)m(t,)
h(w)m(e)g(will)d(not)i(install)e(it.)41 b(A)30 b(test)h(case)h(will)c
(help)g(us)i(to)h(understand.)225 4483 y Fq(\017)60 b
Fu(A)30 b(guess)h(ab)s(out)f(what)g(the)h(bug)f(is)f(or)h(what)h(it)f
(dep)s(ends)e(on.)330 4618 y(Suc)m(h)e(guesses)g(are)h(usually)d
(wrong.)39 b(Ev)m(en)26 b(w)m(e)h(cannot)g(guess)f(righ)m(t)g(ab)s(out)
g(suc)m(h)g(things)f(without)330 4727 y(\014rst)30 b(using)f(the)h
(debugger)g(to)h(\014nd)e(the)i(facts.)p eop
%%Page: 152 154
152 153 bop 150 -116 a Fu(152)2599 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 153 155
153 154 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(153)150 299 y Fp(18)80 b(Command)52
b(Line)i(Editing)275 533 y Fu(This)28 b(c)m(hapter)j(describ)s(es)e
(the)h(basic)g(features)h(of)f(the)h Ft(GNU)g Fu(command)f(line)e
(editing)h(in)m(terface.)150 791 y Fs(18.1)68 b(In)l(tro)t(duction)45
b(to)h(Line)f(Editing)275 984 y Fu(The)29 b(follo)m(wing)g(paragraphs)h
(describ)s(e)f(the)h(notation)h(used)e(to)j(represen)m(t)e(k)m(eystrok)
m(es.)275 1119 y(The)h(text)654 1116 y Fj(h)p 678 1063
112 4 v 678 1119 a Fi(C-k)p 678 1134 V 786 1116 a Fj(i)848
1119 y Fu(is)g(read)h(as)g(`Con)m(trol-K')g(and)g(describ)s(es)e(the)i
(c)m(haracter)i(pro)s(duced)d(when)g(the)3663 1116 y
Fj(h)p 3687 1063 38 4 v 3687 1119 a Fi(k)p 3687 1134
V 3720 1116 a Fj(i)150 1228 y Fu(k)m(ey)g(is)f(pressed)f(while)f(the)j
(Con)m(trol)f(k)m(ey)h(is)f(depressed.)275 1363 y(The)f(text)650
1360 y Fj(h)p 675 1307 126 4 v 675 1363 a Fi(M-k)p 675
1378 V 796 1360 a Fj(i)856 1363 y Fu(is)g(read)h(as)g(`Meta-K')i(and)e
(describ)s(es)e(the)i(c)m(haracter)i(pro)s(duced)d(when)g(the)h(meta)
150 1473 y(k)m(ey)e(\(if)e(y)m(ou)h(ha)m(v)m(e)h(one\))f(is)f
(depressed,)h(and)f(the)1845 1470 y Fj(h)p 1869 1416
38 4 v 1869 1473 a Fi(k)p 1869 1488 V 1902 1470 a Fj(i)1959
1473 y Fu(k)m(ey)h(is)f(pressed.)39 b(If)26 b(y)m(ou)h(do)g(not)g(ha)m
(v)m(e)h(a)f(meta)g(k)m(ey)-8 b(,)150 1582 y(the)34 b(iden)m(tical)f(k)
m(eystrok)m(e)j(can)f(b)s(e)e(generated)j(b)m(y)e(t)m(yping)2219
1579 y Fj(h)p 2244 1526 139 4 v 2244 1582 a Fi(ESC)p
2244 1597 V 2378 1579 a Fj(i)2442 1582 y Fr(\014rst)p
Fu(,)i(and)d(then)h(t)m(yping)3337 1579 y Fj(h)p 3361
1526 38 4 v 3361 1582 a Fi(k)p 3361 1597 V 3394 1579
a Fj(i)3424 1582 y Fu(.)52 b(Either)150 1692 y(pro)s(cess)30
b(is)f(kno)m(wn)h(as)h Fn(metafying)38 b Fu(the)1546
1689 y Fj(h)p 1571 1636 V 1571 1692 a Fi(k)p 1571 1707
V 1604 1689 a Fj(i)1664 1692 y Fu(k)m(ey)-8 b(.)275 1826
y(The)38 b(text)669 1823 y Fj(h)p 693 1770 200 4 v 693
1826 a Fi(M-C-k)p 693 1842 V 889 1823 a Fj(i)958 1826
y Fu(is)g(read)i(as)f(`Meta-Con)m(trol-k')j(and)d(describ)s(es)f(the)h
(c)m(haracter)i(pro)s(duced)d(b)m(y)150 1936 y Fn(metafying)582
1933 y Fj(h)p 606 1880 112 4 v 606 1936 a Fi(C-k)p 606
1951 V 714 1933 a Fj(i)744 1936 y Fu(.)275 2071 y(In)e(addition,)h(sev)
m(eral)g(k)m(eys)g(ha)m(v)m(e)h(their)e(o)m(wn)h(names.)60
b(Sp)s(eci\014cally)-8 b(,)2768 2068 y Fj(h)p 2792 2015
146 4 v 2792 2071 a Fi(DEL)p 2792 2086 V 2934 2068 a
Fj(i)2964 2071 y Fu(,)3028 2068 y Fj(h)p 3052 2015 139
4 v 3052 2071 a Fi(ESC)p 3052 2086 V 3186 2068 a Fj(i)3216
2071 y Fu(,)3279 2068 y Fj(h)p 3303 2015 144 4 v 3303
2071 a Fi(LFD)p 3303 2086 V 3443 2068 a Fj(i)3473 2071
y Fu(,)3537 2068 y Fj(h)p 3561 2015 139 4 v 3561 2071
a Fi(SPC)p 3561 2086 V 3695 2068 a Fj(i)3725 2071 y Fu(,)150
2177 y Fj(h)p 174 2124 151 4 v 174 2180 a Fi(RET)p 174
2196 V 321 2177 a Fj(i)351 2180 y Fu(,)47 b(and)612 2177
y Fj(h)p 637 2124 148 4 v 637 2180 a Fi(T)-6 b(AB)p 637
2196 V 780 2177 a Fj(i)853 2180 y Fu(all)43 b(stand)g(for)g(themselv)m
(es)h(when)e(seen)i(in)e(this)g(text,)48 b(or)43 b(in)f(an)i(init)d
(\014le)i(\(see)150 2290 y(Section)30 b(18.3)i([Readline)d(Init)h
(File],)g(page)h(155\).)150 2548 y Fs(18.2)68 b(Readline)47
b(In)l(teraction)275 2740 y Fu(Often)24 b(during)f(an)i(in)m(teractiv)m
(e)h(session)f(y)m(ou)g(t)m(yp)s(e)h(in)e(a)h(long)g(line)e(of)j(text,)
h(only)e(to)g(notice)h(that)g(the)150 2850 y(\014rst)32
b(w)m(ord)g(on)g(the)g(line)f(is)h(missp)s(elled.)43
b(The)32 b(Readline)f(library)f(giv)m(es)i(y)m(ou)h(a)g(set)g(of)f
(commands)g(for)150 2960 y(manipulating)27 b(the)j(text)h(as)f(y)m(ou)g
(t)m(yp)s(e)g(it)f(in,)g(allo)m(wing)f(y)m(ou)i(to)h(just)e(\014x)g(y)m
(our)h(t)m(yp)s(o,)g(and)g(not)g(forcing)150 3069 y(y)m(ou)e(to)h(ret)m
(yp)s(e)g(the)f(ma)5 b(jorit)m(y)28 b(of)g(the)h(line.)38
b(Using)27 b(these)i(editing)e(commands,)h(y)m(ou)h(mo)m(v)m(e)g(the)g
(cursor)150 3179 y(to)35 b(the)f(place)h(that)f(needs)g(correction,)i
(and)e(delete)g(or)g(insert)g(the)g(text)h(of)g(the)f(corrections.)53
b(Then,)150 3288 y(when)30 b(y)m(ou)i(are)f(satis\014ed)f(with)g(the)h
(line,)f(y)m(ou)i(simply)c(press)2320 3285 y Fj(h)p 2344
3232 309 4 v 2344 3288 a Fi(RETURN)p 2344 3304 V 2648
3285 a Fj(i)2678 3288 y Fu(.)43 b(Y)-8 b(ou)31 b(do)g(not)h(ha)m(v)m(e)
g(to)g(b)s(e)e(at)150 3398 y(the)j(end)f(of)h(the)g(line)f(to)h(press)
1267 3395 y Fj(h)p 1291 3342 V 1291 3398 a Fi(RETURN)p
1291 3413 V 1596 3395 a Fj(i)1626 3398 y Fu(;)h(the)f(en)m(tire)g(line)
e(is)h(accepted)i(regardless)e(of)h(the)g(lo)s(cation)150
3507 y(of)e(the)f(cursor)g(within)e(the)i(line.)150 3732
y Fk(18.2.1)63 b(Readline)41 b(Bare)g(Essen)m(tials)275
3925 y Fu(In)22 b(order)g(to)i(en)m(ter)g(c)m(haracters)g(in)m(to)f
(the)h(line,)f(simply)d(t)m(yp)s(e)k(them.)38 b(The)22
b(t)m(yp)s(ed)h(c)m(haracter)i(app)s(ears)150 4034 y(where)32
b(the)h(cursor)e(w)m(as,)j(and)e(then)g(the)h(cursor)e(mo)m(v)m(es)j
(one)f(space)g(to)g(the)g(righ)m(t.)46 b(If)32 b(y)m(ou)h(mist)m(yp)s
(e)f(a)150 4144 y(c)m(haracter,)g(y)m(ou)f(can)g(use)f(y)m(our)g(erase)
h(c)m(haracter)h(to)f(bac)m(k)g(up)f(and)f(delete)i(the)g(mist)m(yp)s
(ed)d(c)m(haracter.)275 4279 y(Sometimes)36 b(y)m(ou)i(ma)m(y)f(miss)f
(t)m(yping)g(a)i(c)m(haracter)g(that)g(y)m(ou)f(w)m(an)m(ted)h(to)g(t)m
(yp)s(e,)h(and)d(not)i(notice)150 4388 y(y)m(our)28 b(error)g(un)m(til)
f(y)m(ou)h(ha)m(v)m(e)i(t)m(yp)s(ed)e(sev)m(eral)g(other)h(c)m
(haracters.)41 b(In)28 b(that)h(case,)h(y)m(ou)e(can)h(t)m(yp)s(e)3477
4385 y Fj(h)p 3502 4332 114 4 v 3502 4388 a Fi(C-b)p
3502 4403 V 3611 4385 a Fj(i)3669 4388 y Fu(to)150 4498
y(mo)m(v)m(e)k(the)f(cursor)g(to)g(the)g(left,)g(and)g(then)f(correct)i
(y)m(our)f(mistak)m(e.)46 b(Afterw)m(ards,)32 b(y)m(ou)g(can)g(mo)m(v)m
(e)i(the)150 4607 y(cursor)c(to)h(the)f(righ)m(t)g(with)1118
4604 y Fj(h)p 1143 4551 97 4 v 1143 4607 a Fi(C-f)p 1143
4623 V 1234 4604 a Fj(i)1264 4607 y Fu(.)275 4742 y(When)i(y)m(ou)h
(add)f(text)h(in)e(the)i(middle)d(of)j(a)g(line,)f(y)m(ou)g(will)e
(notice)j(that)g(c)m(haracters)h(to)g(the)e(righ)m(t)150
4852 y(of)d(the)g(cursor)f(are)h(`pushed)e(o)m(v)m(er')j(to)g(mak)m(e)f
(ro)s(om)g(for)f(the)h(text)h(that)f(y)m(ou)g(ha)m(v)m(e)h(inserted.)39
b(Lik)m(ewise,)150 4961 y(when)e(y)m(ou)g(delete)h(text)h(b)s(ehind)34
b(the)k(cursor,)h(c)m(haracters)g(to)f(the)g(righ)m(t)f(of)h(the)g
(cursor)e(are)i(`pulled)150 5071 y(bac)m(k')33 b(to)f(\014ll)e(in)g
(the)i(blank)f(space)h(created)h(b)m(y)f(the)g(remo)m(v)-5
b(al)32 b(of)g(the)g(text.)46 b(A)32 b(list)e(of)i(the)g(basic)f(bare)
150 5180 y(essen)m(tials)f(for)g(editing)f(the)i(text)g(of)g(an)f
(input)e(line)h(follo)m(ws.)150 5337 y Fj(h)p 174 5284
114 4 v 174 5340 a Fi(C-b)p 174 5355 V 284 5337 a Fj(i)630
5340 y Fu(Mo)m(v)m(e)j(bac)m(k)g(one)e(c)m(haracter.)p
eop
%%Page: 154 156
154 155 bop 150 -116 a Fu(154)2599 b(Debugging)31 b(with)e(GDB)150
296 y Fj(h)p 174 243 97 4 v 174 299 a Fi(C-f)p 174 314
V 266 296 a Fj(i)630 299 y Fu(Mo)m(v)m(e)j(forw)m(ard)e(one)h(c)m
(haracter.)150 453 y Fj(h)p 174 400 146 4 v 174 456 a
Fi(DEL)p 174 471 V 316 453 a Fj(i)630 456 y Fu(Delete)h(the)e(c)m
(haracter)i(to)f(the)g(left)f(of)g(the)h(cursor.)150
610 y Fj(h)p 174 557 114 4 v 174 613 a Fi(C-d)p 174 628
V 284 610 a Fj(i)630 613 y Fu(Delete)h(the)e(c)m(haracter)i(underneath)
d(the)i(cursor.)150 770 y(Prin)m(ting)e(c)m(haracters)630
879 y(Insert)h(the)g(c)m(haracter)i(in)m(to)f(the)f(line)f(at)i(the)g
(cursor.)150 1033 y Fj(h)p 174 980 100 4 v 174 1036 a
Fi(C-)p 253 1036 22 3 v 174 1052 100 4 v 270 1033 a Fj(i)630
1036 y Fu(Undo)i(the)h(last)f(editing)f(command.)50 b(Y)-8
b(ou)34 b(can)f(undo)g(all)f(the)h(w)m(a)m(y)i(bac)m(k)f(to)g(an)g
(empt)m(y)630 1146 y(line.)150 1366 y Fk(18.2.2)63 b(Readline)41
b(Mo)m(v)m(emen)m(t)e(Commands)275 1558 y Fu(The)31 b(ab)s(o)m(v)m(e)i
(table)f(describ)s(es)f(the)h(most)g(basic)g(p)s(ossible)d(k)m(eystrok)
m(es)34 b(that)f(y)m(ou)f(need)g(in)f(order)g(to)150
1667 y(do)d(editing)f(of)h(the)h(input)d(line.)38 b(F)-8
b(or)29 b(y)m(our)f(con)m(v)m(enience,)i(man)m(y)f(other)f(commands)g
(ha)m(v)m(e)h(b)s(een)f(added)150 1777 y(in)c(addition)g(to)712
1774 y Fj(h)p 736 1721 114 4 v 736 1777 a Fi(C-b)p 736
1792 V 846 1774 a Fj(i)875 1777 y Fu(,)927 1774 y Fj(h)p
952 1721 97 4 v 952 1777 a Fi(C-f)p 952 1792 V 1043 1774
a Fj(i)1073 1777 y Fu(,)1125 1774 y Fj(h)p 1149 1721
114 4 v 1149 1777 a Fi(C-d)p 1149 1792 V 1259 1774 a
Fj(i)1289 1777 y Fu(,)i(and)1513 1774 y Fj(h)p 1537 1721
146 4 v 1537 1777 a Fi(DEL)p 1537 1792 V 1679 1774 a
Fj(i)1708 1777 y Fu(.)40 b(Here)26 b(are)g(some)g(commands)f(for)h(mo)m
(ving)g(more)f(rapidly)150 1887 y(ab)s(out)30 b(the)h(line.)150
2040 y Fj(h)p 174 1987 110 4 v 174 2043 a Fi(C-a)p 174
2059 V 280 2040 a Fj(i)630 2043 y Fu(Mo)m(v)m(e)h(to)g(the)e(start)h
(of)g(the)f(line.)150 2197 y Fj(h)p 174 2144 106 4 v
174 2200 a Fi(C-e)p 174 2216 V 276 2197 a Fj(i)630 2200
y Fu(Mo)m(v)m(e)i(to)g(the)e(end)g(of)g(the)h(line.)150
2354 y Fj(h)p 174 2301 110 4 v 174 2357 a Fi(M-f)p 174
2373 V 280 2354 a Fj(i)630 2357 y Fu(Mo)m(v)m(e)h(forw)m(ard)e(a)h(w)m
(ord,)f(where)g(a)h(w)m(ord)f(is)f(comp)s(osed)h(of)h(letters)g(and)e
(digits.)150 2511 y Fj(h)p 174 2458 128 4 v 174 2514
a Fi(M-b)p 174 2530 V 297 2511 a Fj(i)630 2514 y Fu(Mo)m(v)m(e)j(bac)m
(kw)m(ard)f(a)g(w)m(ord.)150 2668 y Fj(h)p 174 2615 95
4 v 174 2671 a Fi(C-l)p 174 2687 V 264 2668 a Fj(i)630
2671 y Fu(Clear)f(the)g(screen,)h(reprin)m(ting)d(the)j(curren)m(t)f
(line)f(at)i(the)f(top.)275 2828 y(Notice)24 b(ho)m(w)735
2825 y Fj(h)p 759 2772 97 4 v 759 2828 a Fi(C-f)p 759
2844 V 851 2825 a Fj(i)904 2828 y Fu(mo)m(v)m(es)h(forw)m(ard)e(a)h(c)m
(haracter,)i(while)2210 2825 y Fj(h)p 2235 2772 110 4
v 2235 2828 a Fi(M-f)p 2235 2844 V 2340 2825 a Fj(i)2393
2828 y Fu(mo)m(v)m(es)f(forw)m(ard)e(a)g(w)m(ord.)39
b(It)23 b(is)f(a)i(lo)s(ose)150 2938 y(con)m(v)m(en)m(tion)31
b(that)g(con)m(trol)f(k)m(eystrok)m(es)i(op)s(erate)e(on)g(c)m
(haracters)h(while)d(meta)j(k)m(eystrok)m(es)h(op)s(erate)e(on)150
3047 y(w)m(ords.)150 3268 y Fk(18.2.3)63 b(Readline)41
b(Killing)h(Commands)275 3459 y Fn(Killing)f Fu(text)e(means)e(to)h
(delete)f(the)h(text)g(from)f(the)g(line,)h(but)f(to)h(sa)m(v)m(e)h(it)
d(a)m(w)m(a)m(y)k(for)d(later)g(use,)150 3569 y(usually)d(b)m(y)j
Fn(y)m(anking)44 b Fu(\(re-inserting\))36 b(it)g(bac)m(k)h(in)m(to)g
(the)f(line.)58 b(If)36 b(the)h(description)e(for)h(a)h(command)150
3678 y(sa)m(ys)c(that)h(it)e(`kills')f(text,)k(then)d(y)m(ou)h(can)g(b)
s(e)g(sure)f(that)h(y)m(ou)g(can)g(get)h(the)f(text)h(bac)m(k)g(in)d(a)
i(di\013eren)m(t)150 3788 y(\(or)e(the)f(same\))h(place)g(later.)275
3921 y(When)23 b(y)m(ou)g(use)g(a)h(kill)d(command,)j(the)g(text)g(is)e
(sa)m(v)m(ed)j(in)d(a)h Fn(kill-ring)p Fu(.)35 b(An)m(y)24
b(n)m(um)m(b)s(er)e(of)h(consecutiv)m(e)150 4031 y(kills)28
b(sa)m(v)m(e)33 b(all)d(of)h(the)g(killed)e(text)j(together,)g(so)g
(that)f(when)f(y)m(ou)h(y)m(ank)h(it)e(bac)m(k,)i(y)m(ou)g(get)g(it)e
(all.)41 b(The)150 4141 y(kill)30 b(ring)h(is)g(not)i(line)e(sp)s
(eci\014c;)h(the)h(text)g(that)g(y)m(ou)g(killed)c(on)k(a)f(previously)
e(t)m(yp)s(ed)j(line)d(is)i(a)m(v)-5 b(ailable)150 4250
y(to)31 b(b)s(e)f(y)m(ank)m(ed)h(bac)m(k)g(later,)g(when)e(y)m(ou)i
(are)g(t)m(yping)e(another)i(line.)275 4383 y(Here)f(is)g(the)g(list)f
(of)i(commands)f(for)g(killing)d(text.)150 4537 y Fj(h)p
174 4484 112 4 v 174 4540 a Fi(C-k)p 174 4556 V 282 4537
a Fj(i)630 4540 y Fu(Kill)h(the)i(text)i(from)e(the)g(curren)m(t)g
(cursor)g(p)s(osition)f(to)i(the)f(end)g(of)g(the)h(line.)150
4694 y Fj(h)p 174 4641 128 4 v 174 4697 a Fi(M-d)p 174
4713 V 297 4694 a Fj(i)630 4697 y Fu(Kill)25 b(from)j(the)g(cursor)f
(to)i(the)f(end)g(of)g(the)g(curren)m(t)g(w)m(ord,)g(or)g(if)f(b)s(et)m
(w)m(een)i(w)m(ords,)f(to)h(the)630 4807 y(end)h(of)g(the)h(next)f(w)m
(ord.)150 4961 y Fj(h)p 174 4908 235 4 v 174 4964 a Fi(M-DEL)p
174 4979 V 404 4961 a Fj(i)630 4964 y Fu(Kill)d(from)h(the)i(cursor)e
(the)h(start)h(of)f(the)h(previous)d(w)m(ord,)j(or)f(if)f(b)s(et)m(w)m
(een)i(w)m(ords,)f(to)h(the)630 5073 y(start)h(of)f(the)h(previous)e(w)
m(ord.)150 5227 y Fj(h)p 174 5174 126 4 v 174 5230 a
Fi(C-w)p 174 5246 V 295 5227 a Fj(i)630 5230 y Fu(Kill)g(from)i(the)h
(cursor)f(to)i(the)f(previous)e(whitespace.)45 b(This)30
b(is)g(di\013eren)m(t)i(than)3466 5227 y Fj(h)p 3490
5174 235 4 v 3490 5230 a Fi(M-DEL)p 3490 5246 V 3720
5227 a Fj(i)630 5340 y Fu(b)s(ecause)e(the)h(w)m(ord)f(b)s(oundaries)e
(di\013er.)p eop
%%Page: 155 157
155 156 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(155)275 299 y(Here)42 b(is)e(ho)m(w)i(to)g
Fn(y)m(ank)47 b Fu(the)42 b(text)g(bac)m(k)h(in)m(to)e(the)h(line.)72
b(Y)-8 b(anking)42 b(means)f(to)h(cop)m(y)h(the)e(most-)150
408 y(recen)m(tly-killed)29 b(text)i(from)f(the)g(kill)f(bu\013er.)150
573 y Fj(h)p 174 519 112 4 v 174 576 a Fi(C-y)p 174 591
V 282 573 a Fj(i)630 576 y Fu(Y)-8 b(ank)31 b(the)f(most)h(recen)m(tly)
g(killed)d(text)j(bac)m(k)g(in)m(to)g(the)f(bu\013er)g(at)h(the)f
(cursor.)150 737 y Fj(h)p 174 684 126 4 v 174 740 a Fi(M-y)p
174 755 V 295 737 a Fj(i)630 740 y Fu(Rotate)36 b(the)f(kill-ring,)e
(and)h(y)m(ank)h(the)f(new)g(top.)54 b(Y)-8 b(ou)35 b(can)g(only)e(do)i
(this)e(if)h(the)h(prior)630 850 y(command)30 b(is)1136
847 y Fj(h)p 1160 794 112 4 v 1160 850 a Fi(C-y)p 1160
865 V 1267 847 a Fj(i)1327 850 y Fu(or)1439 847 y Fj(h)p
1463 794 126 4 v 1463 850 a Fi(M-y)p 1463 865 V 1584
847 a Fj(i)1614 850 y Fu(.)150 1084 y Fk(18.2.4)63 b(Readline)41
b(Argumen)m(ts)275 1282 y Fu(Y)-8 b(ou)29 b(can)h(pass)f(n)m(umeric)f
(argumen)m(ts)h(to)h(Readline)e(commands.)40 b(Sometimes)29
b(the)g(argumen)m(t)h(acts)150 1391 y(as)40 b(a)h(rep)s(eat)f(coun)m
(t,)j(other)e(times)e(it)h(is)f(the)h Fr(sign)47 b Fu(of)41
b(the)f(argumen)m(t)g(that)h(is)e(signi\014can)m(t.)69
b(If)40 b(y)m(ou)150 1501 y(pass)33 b(a)h(negativ)m(e)h(argumen)m(t)f
(to)g(a)g(command)f(whic)m(h)f(normally)g(acts)i(in)e(a)i(forw)m(ard)f
(direction,)g(that)150 1610 y(command)i(will)e(act)j(in)e(a)i(bac)m(kw)
m(ard)f(direction.)55 b(F)-8 b(or)36 b(example,)g(to)g(kill)d(text)j
(bac)m(k)g(to)g(the)g(start)g(of)150 1720 y(the)31 b(line,)e(y)m(ou)h
(migh)m(t)g(t)m(yp)s(e)h(`)p Fo(M--)f(C-k)p Fu('.)275
1860 y(The)d(general)h(w)m(a)m(y)i(to)e(pass)g(n)m(umeric)f(argumen)m
(ts)i(to)g(a)f(command)g(is)f(to)i(t)m(yp)s(e)f(meta)i(digits)c(b)s
(efore)150 1969 y(the)32 b(command.)46 b(If)32 b(the)g(\014rst)f
(`digit')h(t)m(yp)s(ed)g(is)f(a)h(min)m(us)f(sign)g(\()2387
1966 y Fj(h)p 2411 1913 24 4 v 2411 1969 a Fi(-)p 2411
1985 V 2431 1966 a Fj(i)2461 1969 y Fu(\),)i(then)e(the)i(sign)e(of)h
(the)g(argumen)m(t)150 2079 y(will)26 b(b)s(e)h(negativ)m(e.)41
b(Once)29 b(y)m(ou)f(ha)m(v)m(e)i(t)m(yp)s(ed)e(one)g(meta)h(digit)e
(to)i(get)h(the)e(argumen)m(t)h(started,)g(y)m(ou)g(can)150
2188 y(t)m(yp)s(e)38 b(the)f(remainder)f(of)i(the)f(digits,)h(and)f
(then)g(the)h(command.)61 b(F)-8 b(or)39 b(example,)g(to)f(giv)m(e)g
(the)3586 2185 y Fj(h)p 3611 2132 114 4 v 3611 2188 a
Fi(C-d)p 3611 2204 V 3720 2185 a Fj(i)150 2298 y Fu(command)30
b(an)g(argumen)m(t)h(of)g(10,)g(y)m(ou)g(could)e(t)m(yp)s(e)i(`)p
Fo(M-1)f(0)g(C-d)p Fu('.)150 2532 y Fk(18.2.5)63 b(Searc)m(hing)41
b(for)g(Commands)f(in)h(the)g(History)275 2730 y Fu(Readline)30
b(pro)m(vides)i(commands)g(for)g(searc)m(hing)g(through)f(the)i
(command)f(history)f(for)h(lines)e(con-)150 2840 y(taining)f(a)i(sp)s
(eci\014ed)e(string.)39 b(There)30 b(are)h(t)m(w)m(o)h(searc)m(h)f(mo)s
(des:)40 b Fn(incremen)m(tal)33 b Fu(and)d Fn(non-incremen)m(tal)p
Fu(.)275 2979 y(Incremen)m(tal)25 b(searc)m(hes)i(b)s(egin)d(b)s(efore)
h(the)h(user)f(has)h(\014nished)d(t)m(yping)i(the)h(searc)m(h)g
(string.)38 b(As)26 b(eac)m(h)150 3089 y(c)m(haracter)37
b(of)e(the)h(searc)m(h)g(string)e(is)h(t)m(yp)s(ed,)h(Readline)e
(displa)m(ys)g(the)h(next)h(en)m(try)g(from)e(the)i(history)150
3198 y(matc)m(hing)c(the)h(string)e(t)m(yp)s(ed)h(so)g(far.)46
b(An)32 b(incremen)m(tal)f(searc)m(h)i(requires)e(only)g(as)h(man)m(y)g
(c)m(haracters)150 3308 y(as)42 b(needed)f(to)i(\014nd)d(the)i(desired)
e(history)g(en)m(try)-8 b(.)76 b(The)41 b(c)m(haracters)i(presen)m(t)f
(in)e(the)i(v)-5 b(alue)41 b(of)h(the)150 3418 y Fn(isearc)m
(h-terminators)c Fu(v)-5 b(ariable)33 b(are)h(used)g(to)g(terminate)h
(an)f(incremen)m(tal)f(searc)m(h.)53 b(If)33 b(that)i(v)-5
b(ariable)150 3527 y(has)31 b(not)h(b)s(een)f(assigned)f(a)i(v)-5
b(alue,)32 b(the)1549 3524 y Fj(h)p 1573 3471 139 4 v
1573 3527 a Fi(ESC)p 1573 3542 V 1707 3524 a Fj(i)1768
3527 y Fu(and)1946 3524 y Fj(h)p 1970 3471 111 4 v 1970
3527 a Fi(C-J)p 1970 3542 V 2077 3524 a Fj(i)2138 3527
y Fu(c)m(haracters)h(will)c(terminate)i(an)h(incremen)m(tal)150
3637 y(searc)m(h.)460 3634 y Fj(h)p 484 3581 110 4 v
484 3637 a Fi(C-g)p 484 3652 V 590 3634 a Fj(i)646 3637
y Fu(will)24 b(ab)s(ort)i(an)h(incremen)m(tal)f(searc)m(h)h(and)f
(restore)h(the)g(original)d(line.)38 b(When)27 b(the)f(searc)m(h)150
3746 y(is)32 b(terminated,)h(the)h(history)e(en)m(try)h(con)m(taining)f
(the)i(searc)m(h)f(string)f(b)s(ecomes)i(the)f(curren)m(t)f(line.)47
b(T)-8 b(o)150 3856 y(\014nd)33 b(other)j(matc)m(hing)f(en)m(tries)g
(in)e(the)i(history)f(list,)h(t)m(yp)s(e)2251 3853 y
Fj(h)p 2275 3800 103 4 v 2275 3856 a Fi(C-s)p 2275 3871
V 2373 3853 a Fj(i)2438 3856 y Fu(or)2554 3853 y Fj(h)p
2578 3800 102 4 v 2578 3856 a Fi(C-r)p 2578 3871 V 2676
3853 a Fj(i)2740 3856 y Fu(as)h(appropriate.)53 b(This)34
b(will)150 3965 y(searc)m(h)39 b(bac)m(kw)m(ard)f(or)g(forw)m(ard)g(in)
f(the)h(history)f(for)h(the)g(next)g(en)m(try)h(matc)m(hing)f(the)g
(searc)m(h)h(string)150 4075 y(t)m(yp)s(ed)e(so)h(far.)63
b(An)m(y)38 b(other)f(k)m(ey)i(sequence)f(b)s(ound)e(to)i(a)g(Readline)
f(command)g(will)e(terminate)j(the)150 4185 y(searc)m(h)k(and)e
(execute)i(that)g(command.)72 b(F)-8 b(or)41 b(instance,)j(a)2301
4182 y Fj(h)p 2325 4129 151 4 v 2325 4185 a Fi(RET)p
2325 4200 V 2472 4182 a Fj(i)2543 4185 y Fu(will)38 b(terminate)j(the)g
(searc)m(h)h(and)150 4294 y(accept)32 b(the)e(line,)f(thereb)m(y)i
(executing)f(the)h(command)f(from)g(the)h(history)e(list.)275
4434 y(Non-incremen)m(tal)46 b(searc)m(hes)i(read)e(the)h(en)m(tire)g
(searc)m(h)g(string)f(b)s(efore)g(starting)g(to)i(searc)m(h)f(for)150
4543 y(matc)m(hing)c(history)e(lines.)76 b(The)42 b(searc)m(h)h(string)
f(ma)m(y)h(b)s(e)f(t)m(yp)s(ed)g(b)m(y)g(the)h(user)f(or)h(b)s(e)f
(part)g(of)h(the)150 4653 y(con)m(ten)m(ts)32 b(of)f(the)f(curren)m(t)g
(line.)150 4923 y Fs(18.3)68 b(Readline)47 b(Init)e(File)275
5121 y Fu(Although)34 b(the)h(Readline)f(library)e(comes)k(with)e(a)h
(set)h(of)f Fo(emacs)p Fu(-lik)m(e)f(k)m(eybindings)e(installed)h(b)m
(y)150 5230 y(default,)25 b(it)g(is)e(p)s(ossible)g(to)i(use)f(a)i
(di\013eren)m(t)e(set)h(of)g(k)m(eybindings.)36 b(An)m(y)25
b(user)f(can)h(customize)g(programs)150 5340 y(that)k(use)e(Readline)g
(b)m(y)g(putting)g(commands)h(in)e(an)i Fn(inputrc)k
Fu(\014le)27 b(in)f(his)h(home)h(directory)-8 b(.)39
b(The)28 b(name)p eop
%%Page: 156 158
156 157 bop 150 -116 a Fu(156)2599 b(Debugging)31 b(with)e(GDB)150
299 y(of)i(this)f(\014le)h(is)f(tak)m(en)i(from)f(the)g(v)-5
b(alue)30 b(of)i(the)f(en)m(vironmen)m(t)g(v)-5 b(ariable)30
b Fo(INPUTRC)p Fu(.)41 b(If)30 b(that)i(v)-5 b(ariable)30
b(is)150 408 y(unset,)g(the)h(default)e(is)h(`)p Fo(~/.inputrc)p
Fu('.)275 557 y(When)f(a)h(program)f(whic)m(h)g(uses)g(the)h(Readline)e
(library)f(starts)j(up,)f(the)h(init)e(\014le)g(is)h(read,)h(and)f(the)
150 667 y(k)m(ey)i(bindings)c(are)k(set.)275 815 y(In)26
b(addition,)g(the)h Fo(C-x)i(C-r)d Fu(command)h(re-reads)g(this)e(init)
g(\014le,)i(th)m(us)g(incorp)s(orating)e(an)m(y)i(c)m(hanges)150
925 y(that)k(y)m(ou)g(migh)m(t)f(ha)m(v)m(e)h(made)g(to)g(it.)150
1177 y Fk(18.3.1)63 b(Readline)41 b(Init)f(File)h(Syn)m(tax)275
1384 y Fu(There)33 b(are)h(only)f(a)h(few)f(basic)g(constructs)h(allo)m
(w)m(ed)f(in)g(the)h(Readline)e(init)g(\014le.)50 b(Blank)33
b(lines)f(are)150 1494 y(ignored.)71 b(Lines)40 b(b)s(eginning)e(with)i
(a)h(`)p Fo(#)p Fu(')g(are)h(commen)m(ts.)73 b(Lines)40
b(b)s(eginning)e(with)h(a)j(`)p Fo($)p Fu(')f(indicate)150
1603 y(conditional)32 b(constructs)i(\(see)h(Section)f(18.3.2)i
([Conditional)c(Init)h(Constructs],)i(page)f(160\).)53
b(Other)150 1713 y(lines)29 b(denote)i(v)-5 b(ariable)29
b(settings)h(and)g(k)m(ey)h(bindings.)150 1894 y(V)-8
b(ariable)30 b(Settings)630 2003 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)d
(the)j(run-time)e(b)s(eha)m(vior)g(of)i(Readline)e(b)m(y)h(altering)f
(the)i(v)-5 b(alues)40 b(of)630 2113 y(v)-5 b(ariables)23
b(in)f(Readline)h(using)g(the)h Fo(set)f Fu(command)h(within)d(the)j
(init)f(\014le.)38 b(Here)24 b(is)f(ho)m(w)h(to)630 2222
y(c)m(hange)e(from)d(the)i(default)f(Emacs-lik)m(e)g(k)m(ey)h(binding)c
(to)k(use)g Fo(vi)e Fu(line)g(editing)g(commands:)870
2358 y Fo(set)47 b(editing-mode)d(vi)630 2500 y Fu(A)30
b(great)i(deal)e(of)h(run-time)e(b)s(eha)m(vior)g(is)g(c)m(hangeable)j
(with)d(the)h(follo)m(wing)f(v)-5 b(ariables.)630 2673
y Fo(bell-style)1110 2783 y Fu(Con)m(trols)43 b(what)h(happ)s(ens)e
(when)h(Readline)g(w)m(an)m(ts)h(to)h(ring)d(the)i(termi-)1110
2892 y(nal)36 b(b)s(ell.)59 b(If)37 b(set)h(to)g(`)p
Fo(none)p Fu(',)g(Readline)e(nev)m(er)i(rings)d(the)j(b)s(ell.)59
b(If)36 b(set)i(to)1110 3002 y(`)p Fo(visible)p Fu(',)32
b(Readline)g(uses)h(a)g(visible)d(b)s(ell)h(if)h(one)h(is)f(a)m(v)-5
b(ailable.)48 b(If)33 b(set)g(to)1110 3112 y(`)p Fo(audible)p
Fu(')j(\(the)i(default\),)h(Readline)d(attempts)i(to)h(ring)d(the)h
(terminal's)1110 3221 y(b)s(ell.)630 3395 y Fo(comment-begin)1110
3504 y Fu(The)29 b(string)f(to)i(insert)e(at)i(the)f(b)s(eginning)e(of)
i(the)h(line)d(when)h(the)i Fo(insert-)1110 3614 y(comment)e
Fu(command)j(is)e(executed.)42 b(The)29 b(default)h(v)-5
b(alue)30 b(is)f Fo("#")p Fu(.)630 3787 y Fo(completion-ignore-case)
1110 3897 y Fu(If)e(set)h(to)g(`)p Fo(on)p Fu(',)g(Readline)e(p)s
(erforms)g(\014lename)g(matc)m(hing)i(and)f(completion)1110
4007 y(in)i(a)i(case-insensitiv)m(e)f(fashion.)39 b(The)30
b(default)g(v)-5 b(alue)29 b(is)h(`)p Fo(off)p Fu('.)630
4180 y Fo(completion-query-items)1110 4290 y Fu(The)c(n)m(um)m(b)s(er)f
(of)h(p)s(ossible)e(completions)h(that)i(determines)e(when)g(the)i
(user)1110 4399 y(is)41 b(ask)m(ed)h(whether)g(he)f(w)m(an)m(ts)i(to)g
(see)f(the)g(list)f(of)h(p)s(ossibilities.)70 b(If)42
b(the)1110 4509 y(n)m(um)m(b)s(er)26 b(of)h(p)s(ossible)d(completions)i
(is)g(greater)i(than)e(this)g(v)-5 b(alue,)27 b(Readline)1110
4618 y(will)d(ask)j(the)f(user)g(whether)g(or)g(not)h(he)f(wishes)f(to)
j(view)d(them;)j(otherwise,)1110 4728 y(they)j(are)f(simply)e(listed.)
40 b(The)29 b(default)h(limit)e(is)i Fo(100)p Fu(.)630
4902 y Fo(convert-meta)1110 5011 y Fu(If)22 b(set)g(to)h(`)p
Fo(on)p Fu(',)h(Readline)d(will)e(con)m(v)m(ert)24 b(c)m(haracters)f
(with)e(the)h(eigh)m(th)g(bit)f(set)1110 5121 y(to)28
b(an)f(ASCI)s(I)f(k)m(ey)i(sequence)g(b)m(y)f(stripping)e(the)i(eigh)m
(th)h(bit)e(and)h(prep)s(end-)1110 5230 y(ing)k(an)1391
5227 y Fj(h)p 1415 5174 139 4 v 1415 5230 a Fi(ESC)p
1415 5246 V 1549 5227 a Fj(i)1611 5230 y Fu(c)m(haracter,)j(con)m(v)m
(erting)f(them)f(to)g(a)h(meta-pre\014xed)f(k)m(ey)g(se-)1110
5340 y(quence.)41 b(The)30 b(default)f(v)-5 b(alue)30
b(is)g(`)p Fo(on)p Fu('.)p eop
%%Page: 157 159
157 158 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(157)630 299 y Fo(disable-completion)1110
408 y Fu(If)36 b(set)h(to)h(`)p Fo(On)p Fu(',)g(Readline)d(will)f
(inhibit)f(w)m(ord)k(completion.)58 b(Completion)1110
518 y(c)m(haracters)28 b(will)23 b(b)s(e)i(inserted)g(in)m(to)h(the)h
(line)d(as)i(if)f(they)i(had)e(b)s(een)g(mapp)s(ed)1110
628 y(to)31 b Fo(self-insert)p Fu(.)38 b(The)30 b(default)f(is)h(`)p
Fo(off)p Fu('.)630 806 y Fo(editing-mode)1110 915 y Fu(The)e
Fo(editing-mode)e Fu(v)-5 b(ariable)27 b(con)m(trols)i(whic)m(h)e
(default)h(set)i(of)e(k)m(ey)i(bind-)1110 1025 y(ings)24
b(is)g(used.)38 b(By)26 b(default,)f(Readline)f(starts)h(up)f(in)g
(Emacs)h(editing)f(mo)s(de,)1110 1134 y(where)29 b(the)g(k)m(eystrok)m
(es)i(are)e(most)h(similar)c(to)k(Emacs.)40 b(This)28
b(v)-5 b(ariable)28 b(can)1110 1244 y(b)s(e)i(set)h(to)g(either)f(`)p
Fo(emacs)p Fu(')f(or)h(`)p Fo(vi)p Fu('.)630 1422 y Fo(enable-keypad)
1110 1532 y Fu(When)23 b(set)h(to)g(`)p Fo(on)p Fu(',)h(Readline)d
(will)f(try)i(to)h(enable)f(the)g(application)f(k)m(eypad)1110
1641 y(when)k(it)g(is)f(called.)39 b(Some)27 b(systems)f(need)h(this)e
(to)i(enable)f(the)h(arro)m(w)g(k)m(eys.)1110 1751 y(The)j(default)f
(is)h(`)p Fo(off)p Fu('.)630 1929 y Fo(expand-tilde)1110
2039 y Fu(If)d(set)h(to)h(`)p Fo(on)p Fu(',)f(tilde)e(expansion)h(is)f
(p)s(erformed)g(when)h(Readline)f(attempts)1110 2148
y(w)m(ord)k(completion.)40 b(The)30 b(default)f(is)h(`)p
Fo(off)p Fu('.)630 2326 y Fo(horizontal-scroll-mode)1110
2436 y Fu(This)k(v)-5 b(ariable)35 b(can)h(b)s(e)f(set)h(to)h(either)e
(`)p Fo(on)p Fu(')h(or)g(`)p Fo(off)p Fu('.)57 b(Setting)35
b(it)g(to)i(`)p Fo(on)p Fu(')1110 2545 y(means)26 b(that)h(the)f(text)h
(of)g(the)f(lines)e(b)s(eing)h(edited)h(will)d(scroll)i(horizon)m
(tally)1110 2655 y(on)32 b(a)g(single)e(screen)i(line)e(when)g(they)i
(are)g(longer)g(than)f(the)h(width)e(of)i(the)1110 2765
y(screen,)27 b(instead)f(of)g(wrapping)e(on)m(to)j(a)f(new)g(screen)g
(line.)37 b(By)27 b(default,)f(this)1110 2874 y(v)-5
b(ariable)29 b(is)h(set)g(to)i(`)p Fo(off)p Fu('.)630
3052 y Fo(input-meta)1110 3162 y Fu(If)f(set)h(to)g(`)p
Fo(on)p Fu(',)g(Readline)f(will)d(enable)j(eigh)m(t-bit)h(input)d(\(it)
j(will)d(not)i(strip)1110 3271 y(the)f(eigh)m(th)g(bit)f(from)g(the)h
(c)m(haracters)i(it)d(reads\),)i(regardless)e(of)h(what)g(the)1110
3381 y(terminal)38 b(claims)h(it)h(can)g(supp)s(ort.)68
b(The)39 b(default)g(v)-5 b(alue)39 b(is)g(`)p Fo(off)p
Fu('.)69 b(The)1110 3491 y(name)30 b Fo(meta-flag)e Fu(is)i(a)g(synon)m
(ym)g(for)g(this)g(v)-5 b(ariable.)630 3669 y Fo(isearch-terminators)
1110 3778 y Fu(The)51 b(string)g(of)h(c)m(haracters)h(that)f(should)d
(terminate)j(an)g(incremen)m(tal)1110 3888 y(searc)m(h)d(without)f
(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)j(as)e(a)g(com-)1110
3998 y(mand)39 b(\(see)i(Section)f(18.2.5)i([Searc)m(hing],)h(page)e
(155\).)71 b(If)39 b(this)g(v)-5 b(ariable)1110 4107
y(has)49 b(not)g(b)s(een)g(giv)m(en)g(a)h(v)-5 b(alue,)53
b(the)d(c)m(haracters)2966 4104 y Fj(h)p 2990 4051 139
4 v 2990 4107 a Fi(ESC)p 2990 4122 V 3124 4104 a Fj(i)3203
4107 y Fu(and)3399 4104 y Fj(h)p 3423 4051 111 4 v 3423
4107 a Fi(C-J)p 3423 4122 V 3530 4104 a Fj(i)3609 4107
y Fu(will)1110 4217 y(terminate)30 b(an)h(incremen)m(tal)e(searc)m(h.)
630 4395 y Fo(keymap)192 b Fu(Sets)39 b(Readline's)e(idea)i(of)g(the)g
(curren)m(t)f(k)m(eymap)h(for)g(k)m(ey)g(binding)d(com-)1110
4504 y(mands.)81 b(Acceptable)46 b Fo(keymap)c Fu(names)i(are)h
Fo(emacs)p Fu(,)i Fo(emacs-standard)p Fu(,)1110 4614
y Fo(emacs-meta)p Fu(,)32 b Fo(emacs-ctlx)p Fu(,)g Fo(vi)p
Fu(,)i Fo(vi-command)p Fu(,)d(and)i Fo(vi-insert)p Fu(.)48
b Fo(vi)33 b Fu(is)1110 4724 y(equiv)-5 b(alen)m(t)25
b(to)h Fo(vi-command)p Fu(;)f Fo(emacs)f Fu(is)g(equiv)-5
b(alen)m(t)25 b(to)i Fo(emacs-standard)p Fu(.)1110 4833
y(The)21 b(default)h(v)-5 b(alue)21 b(is)g Fo(emacs)p
Fu(.)36 b(The)22 b(v)-5 b(alue)21 b(of)h(the)h Fo(editing-mode)18
b Fu(v)-5 b(ariable)1110 4943 y(also)30 b(a\013ects)i(the)f(default)e
(k)m(eymap.)630 5121 y Fo(mark-directories)1110 5230
y Fu(If)38 b(set)g(to)h(`)p Fo(on)p Fu(',)i(completed)d(directory)f
(names)h(ha)m(v)m(e)i(a)e(slash)f(app)s(ended.)1110 5340
y(The)30 b(default)f(is)h(`)p Fo(on)p Fu('.)p eop
%%Page: 158 160
158 159 bop 150 -116 a Fu(158)2599 b(Debugging)31 b(with)e(GDB)630
299 y Fo(mark-modified-lines)1110 408 y Fu(This)34 b(v)-5
b(ariable,)36 b(when)f(set)h(to)h(`)p Fo(on)p Fu(',)g(causes)g
(Readline)d(to)j(displa)m(y)d(an)h(as-)1110 518 y(terisk)e(\(`)p
Fo(*)p Fu('\))i(at)f(the)g(start)g(of)g(history)f(lines)f(whic)m(h)g
(ha)m(v)m(e)j(b)s(een)e(mo)s(di\014ed.)1110 628 y(This)c(v)-5
b(ariable)29 b(is)g(`)p Fo(off)p Fu(')h(b)m(y)g(default.)630
791 y Fo(output-meta)1110 900 y Fu(If)35 b(set)h(to)g(`)p
Fo(on)p Fu(',)h(Readline)d(will)f(displa)m(y)g(c)m(haracters)k(with)d
(the)i(eigh)m(th)f(bit)1110 1010 y(set)i(directly)e(rather)h(than)g(as)
h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59 b(The)1110
1120 y(default)30 b(is)f(`)p Fo(off)p Fu('.)630 1283
y Fo(print-completions-horizo)o(ntal)o(ly)1110 1392 y
Fu(If)23 b(set)i(to)g(`)p Fo(on)p Fu(',)g(Readline)e(will)e(displa)m(y)
h(completions)h(with)g(matc)m(hes)i(sorted)1110 1502
y(horizon)m(tally)42 b(in)g(alphab)s(etical)g(order,)47
b(rather)c(than)g(do)m(wn)g(the)h(screen.)1110 1612 y(The)30
b(default)f(is)h(`)p Fo(off)p Fu('.)630 1775 y Fo
(show-all-if-ambiguous)1110 1884 y Fu(This)e(alters)i(the)g(default)f
(b)s(eha)m(vior)g(of)h(the)h(completion)e(functions.)39
b(If)29 b(set)1110 1994 y(to)f(`)p Fo(on)p Fu(',)g(w)m(ords)f(whic)m(h)
f(ha)m(v)m(e)j(more)f(than)f(one)h(p)s(ossible)d(completion)h(cause)
1110 2104 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)f(immediately)h
(instead)g(of)h(ringing)e(the)i(b)s(ell.)1110 2213 y(The)30
b(default)f(v)-5 b(alue)30 b(is)g(`)p Fo(off)p Fu('.)630
2376 y Fo(visible-stats)1110 2486 y Fu(If)h(set)i(to)f(`)p
Fo(on)p Fu(',)h(a)f(c)m(haracter)i(denoting)d(a)h(\014le's)f(t)m(yp)s
(e)h(is)f(app)s(ended)f(to)j(the)1110 2596 y(\014lename)d(when)f
(listing)f(p)s(ossible)g(completions.)40 b(The)30 b(default)f(is)h(`)p
Fo(off)p Fu('.)150 2759 y(Key)g(Bindings)630 2868 y(The)d(syn)m(tax)h
(for)g(con)m(trolling)e(k)m(ey)j(bindings)24 b(in)j(the)g(init)f
(\014le)h(is)g(simple.)38 b(First)27 b(y)m(ou)h(ha)m(v)m(e)630
2978 y(to)39 b(kno)m(w)f(the)h(name)f(of)h(the)g(command)f(that)h(y)m
(ou)f(w)m(an)m(t)i(to)f(c)m(hange.)66 b(The)37 b(follo)m(wing)630
3088 y(sections)f(con)m(tain)g(tables)g(of)g(the)g(command)f(name,)j
(the)e(default)f(k)m(eybinding,)g(if)g(an)m(y)-8 b(,)630
3197 y(and)30 b(a)h(short)f(description)e(of)j(what)f(the)g(command)h
(do)s(es.)630 3334 y(Once)k(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g(the)g
(command,)h(simply)c(place)j(the)g(name)g(of)g(the)g(k)m(ey)630
3443 y(y)m(ou)27 b(wish)e(to)j(bind)d(the)i(command)g(to,)h(a)g(colon,)
g(and)e(then)h(the)g(name)g(of)g(the)g(command)630 3553
y(on)39 b(a)g(line)e(in)g(the)i(init)e(\014le.)64 b(The)38
b(name)h(of)g(the)g(k)m(ey)g(can)g(b)s(e)f(expressed)g(in)f(di\013eren)
m(t)630 3662 y(w)m(a)m(ys,)31 b(dep)s(ending)d(on)j(whic)m(h)e(is)g
(most)i(comfortable)g(for)f(y)m(ou.)630 3826 y Fn(k)m(eyname)5
b Fu(:)42 b Fn(function-name)34 b Fu(or)d Fn(macro)1110
3935 y(k)m(eyname)k Fu(is)28 b(the)g(name)h(of)g(a)g(k)m(ey)h(sp)s
(elled)c(out)j(in)f(English.)37 b(F)-8 b(or)30 b(example:)1350
4066 y Fo(Control-u:)45 b(universal-argument)1350 4169
y(Meta-Rubout:)f(backward-kill-word)1350 4273 y(Control-o:)h(">)i
(output")1110 4410 y Fu(In)36 b(the)h(ab)s(o)m(v)m(e)h(example,)2046
4407 y Fj(h)p 2070 4354 114 4 v 2070 4410 a Fi(C-u)p
2070 4425 V 2179 4407 a Fj(i)2246 4410 y Fu(is)e(b)s(ound)e(to)k(the)e
(function)g Fo(universal-)1110 4519 y(argument)p Fu(,)j(and)1743
4516 y Fj(h)p 1768 4463 110 4 v 1768 4519 a Fi(C-o)p
1768 4535 V 1873 4516 a Fj(i)1942 4519 y Fu(is)f(b)s(ound)f(to)i(run)f
(the)h(macro)h(expressed)e(on)h(the)1110 4629 y(righ)m(t)27
b(hand)f(side)g(\(that)i(is,)f(to)h(insert)f(the)g(text)h(`)p
Fo(>)j(output)p Fu(')25 b(in)m(to)j(the)f(line\).)630
4792 y Fo(")p Fn(k)m(eyseq)r Fo(")p Fu(:)41 b Fn(function-name)35
b Fu(or)30 b Fn(macro)1110 4902 y(k)m(eyseq)k Fu(di\013ers)c(from)g
Fn(k)m(eyname)37 b Fu(ab)s(o)m(v)m(e)32 b(in)e(that)i(strings)e
(denoting)g(an)h(en-)1110 5011 y(tire)i(k)m(ey)i(sequence)f(can)g(b)s
(e)f(sp)s(eci\014ed,)g(b)m(y)g(placing)g(the)h(k)m(ey)g(sequence)g(in)
1110 5121 y(double)24 b(quotes.)40 b(Some)26 b(GNU)g(Emacs)g(st)m(yle)g
(k)m(ey)g(escap)s(es)h(can)f(b)s(e)f(used,)h(as)1110
5230 y(in)32 b(the)i(follo)m(wing)f(example,)h(but)f(the)h(sp)s(ecial)f
(c)m(haracter)i(names)f(are)g(not)1110 5340 y(recognized.)p
eop
%%Page: 159 161
159 160 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(159)1350 299 y Fo("\\C-u":)46
b(universal-argument)1350 403 y("\\C-x\\C-r":)f(re-read-init-file)1350
506 y("\\e[11~":)g("Function)h(Key)g(1")1110 649 y Fu(In)36
b(the)h(ab)s(o)m(v)m(e)h(example,)2046 646 y Fj(h)p 2070
593 114 4 v 2070 649 a Fi(C-u)p 2070 665 V 2179 646 a
Fj(i)2246 649 y Fu(is)e(b)s(ound)e(to)k(the)e(function)g
Fo(universal-)1110 759 y(argument)19 b Fu(\(just)i(as)g(it)g(w)m(as)h
(in)d(the)j(\014rst)e(example\),)k(`)2926 756 y Fj(h)p
2950 703 112 4 v 2950 759 a Fi(C-x)p 2950 774 V 3058
756 a Fj(i)30 b(h)p 3142 703 102 4 v 3142 759 a Fi(C-r)p
3142 774 V 3240 756 a Fj(i)3270 759 y Fu(')21 b(is)f(b)s(ound)f(to)1110
868 y(the)33 b(function)e Fo(re-read-init-file)p Fu(,)e(and)j(`)2701
865 y Fj(h)p 2726 812 139 4 v 2726 868 a Fi(ESC)p 2726
884 V 2860 865 a Fj(i)e(h)p 2944 812 20 4 v 2944 868
a Fi([)p 2944 885 V 2960 865 a Fj(i)g(h)p 3044 812 36
4 v 3044 868 a Fi(1)p 3044 884 V 3075 865 a Fj(i)g(h)p
3159 812 V 3159 868 a Fi(1)p 3159 884 V 3191 865 a Fj(i)g(h)p
3275 812 48 4 v 3275 868 a Fo(~)p 3275 884 V 3318 865
a Fj(i)3348 868 y Fu(')j(is)f(b)s(ound)1110 978 y(to)f(insert)e(the)i
(text)g(`)p Fo(Function)e(Key)g(1)p Fu('.)630 1154 y(The)c(follo)m
(wing)g(GNU)h(Emacs)h(st)m(yle)f(escap)s(e)g(sequences)g(are)h(a)m(v)-5
b(ailable)25 b(when)g(sp)s(ecifying)630 1263 y(k)m(ey)31
b(sequences:)630 1439 y Fl(\\C-)336 b Fu(con)m(trol)31
b(pre\014x)630 1615 y Fl(\\M-)336 b Fu(meta)31 b(pre\014x)630
1791 y Fl(\\e)384 b Fu(an)30 b(escap)s(e)h(c)m(haracter)630
1967 y Fl(\\\\)384 b Fu(bac)m(kslash)630 2143 y Fl(\\)p
Fo(")1110 2140 y Fj(h)p 1134 2086 V 1134 2143 a Fo(")p
1134 2158 V 1178 2140 a Fj(i)630 2318 y Fl(\\')1110 2315
y Fj(h)p 1134 2262 20 4 v 1134 2318 a Fi(')p 1134 2334
V 1150 2315 a Fj(i)630 2494 y Fu(In)24 b(addition)f(to)i(the)g(GNU)g
(Emacs)g(st)m(yle)g(escap)s(e)g(sequences,)i(a)e(second)f(set)h(of)g
(bac)m(kslash)630 2604 y(escap)s(es)31 b(is)e(a)m(v)-5
b(ailable:)630 2780 y Fo(\\a)384 b Fu(alert)30 b(\(b)s(ell\))630
2955 y Fo(\\b)384 b Fu(bac)m(kspace)630 3131 y Fo(\\d)g
Fu(delete)630 3307 y Fo(\\f)g Fu(form)30 b(feed)630 3483
y Fo(\\n)384 b Fu(newline)630 3659 y Fo(\\r)g Fu(carriage)31
b(return)630 3835 y Fo(\\t)384 b Fu(horizon)m(tal)30
b(tab)630 4010 y Fo(\\v)384 b Fu(v)m(ertical)30 b(tab)630
4186 y Fo(\\)p Fn(nnn)279 b Fu(the)24 b(c)m(haracter)h(whose)f(ASCI)s
(I)e(co)s(de)i(is)f(the)h(o)s(ctal)g(v)-5 b(alue)24 b
Fn(nnn)e Fu(\(one)i(to)h(three)1110 4296 y(digits\))630
4472 y Fo(\\x)p Fn(nnn)231 b Fu(the)28 b(c)m(haracter)h(whose)e(ASCI)s
(I)f(co)s(de)i(is)f(the)g(hexadecimal)g(v)-5 b(alue)27
b Fn(nnn)f Fu(\(one)1110 4581 y(to)31 b(three)g(digits\))630
4757 y(When)37 b(en)m(tering)g(the)h(text)g(of)g(a)g(macro,)i(single)c
(or)h(double)f(quotes)i(m)m(ust)f(b)s(e)g(used)f(to)630
4867 y(indicate)21 b(a)g(macro)h(de\014nition.)36 b(Unquoted)21
b(text)i(is)d(assumed)h(to)h(b)s(e)f(a)h(function)e(name.)38
b(In)630 4976 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
b(the)e(bac)m(kslash)g(escap)s(es)h(describ)s(ed)d(ab)s(o)m(v)m(e)k
(are)e(expanded.)37 b(Bac)m(kslash)630 5086 y(will)g(quote)k(an)m(y)f
(other)g(c)m(haracter)i(in)c(the)j(macro)f(text,)k(including)36
b(`)p Fo(")p Fu(')k(and)g(`)p Fo(')p Fu('.)69 b(F)-8
b(or)630 5195 y(example,)27 b(the)f(follo)m(wing)e(binding)e(will)h
(mak)m(e)k(`)p Fo(C-x)j(\\)p Fu(')c(insert)e(a)i(single)f(`)p
Fo(\\)p Fu(')h(in)m(to)f(the)h(line:)870 5332 y Fo("\\C-x\\\\":)45
b("\\\\")p eop
%%Page: 160 162
160 161 bop 150 -116 a Fu(160)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fk(18.3.2)63 b(Conditional)41 b(Init)g(Constructs)275
491 y Fu(Readline)34 b(implemen)m(ts)f(a)j(facilit)m(y)f(similar)d(in)i
(spirit)f(to)j(the)g(conditional)e(compilation)g(features)150
601 y(of)h(the)f(C)g(prepro)s(cessor)g(whic)m(h)f(allo)m(ws)h(k)m(ey)h
(bindings)c(and)j(v)-5 b(ariable)33 b(settings)i(to)g(b)s(e)f(p)s
(erformed)f(as)150 711 y(the)e(result)e(of)h(tests.)42
b(There)30 b(are)h(four)e(parser)h(directiv)m(es)g(used.)150
870 y Fo($if)336 b Fu(The)31 b Fo($if)f Fu(construct)i(allo)m(ws)f
(bindings)d(to)k(b)s(e)e(made)i(based)f(on)g(the)g(editing)f(mo)s(de,)i
(the)630 980 y(terminal)37 b(b)s(eing)f(used,)k(or)e(the)g(application)
e(using)h(Readline.)62 b(The)38 b(text)h(of)f(the)g(test)630
1089 y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)e(no)h(c)m
(haracters)i(are)f(required)d(to)j(isolate)g(it.)630
1249 y Fo(mode)288 b Fu(The)20 b Fo(mode=)g Fu(form)g(of)h(the)g
Fo($if)f Fu(directiv)m(e)h(is)f(used)g(to)h(test)h(whether)e(Readline)
1110 1358 y(is)28 b(in)h Fo(emacs)f Fu(or)h Fo(vi)g Fu(mo)s(de.)40
b(This)28 b(ma)m(y)i(b)s(e)e(used)h(in)f(conjunction)h(with)f(the)1110
1468 y(`)p Fo(set)i(keymap)p Fu(')c(command,)i(for)f(instance,)h(to)g
(set)g(bindings)d(in)h(the)i Fo(emacs-)1110 1577 y(standard)23
b Fu(and)h Fo(emacs-ctlx)f Fu(k)m(eymaps)i(only)f(if)g(Readline)g(is)g
(starting)h(out)1110 1687 y(in)k Fo(emacs)g Fu(mo)s(de.)630
1846 y Fo(term)288 b Fu(The)26 b Fo(term=)g Fu(form)g(ma)m(y)i(b)s(e)e
(used)g(to)i(include)d(terminal-sp)s(eci\014c)f(k)m(ey)k(bind-)1110
1956 y(ings,)37 b(p)s(erhaps)d(to)j(bind)d(the)i(k)m(ey)h(sequences)f
(output)g(b)m(y)g(the)g(terminal's)1110 2066 y(function)23
b(k)m(eys.)39 b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)e(side)g(of)h
(the)g(`)p Fo(=)p Fu(')g(is)f(tested)i(against)1110 2175
y(b)s(oth)k(the)h(full)e(name)i(of)g(the)g(terminal)f(and)g(the)i(p)s
(ortion)d(of)i(the)g(terminal)1110 2285 y(name)k(b)s(efore)f(the)g
(\014rst)g(`)p Fo(-)p Fu('.)50 b(This)32 b(allo)m(ws)h
Fo(sun)g Fu(to)h(matc)m(h)g(b)s(oth)f Fo(sun)g Fu(and)1110
2394 y Fo(sun-cmd)p Fu(,)c(for)h(instance.)630 2554 y
Fo(application)1110 2663 y Fu(The)21 b Fn(application)g
Fu(construct)h(is)f(used)g(to)i(include)d(application-sp)s(eci\014c)f
(set-)1110 2773 y(tings.)38 b(Eac)m(h)26 b(program)e(using)f(the)i
(Readline)e(library)g(sets)i(the)g Fn(application)1110
2883 y(name)p Fu(,)34 b(and)f(y)m(ou)g(can)g(test)h(for)f(it.)49
b(This)31 b(could)h(b)s(e)h(used)f(to)i(bind)d(k)m(ey)i(se-)1110
2992 y(quences)24 b(to)h(functions)d(useful)g(for)i(a)g(sp)s(eci\014c)f
(program.)38 b(F)-8 b(or)25 b(instance,)g(the)1110 3102
y(follo)m(wing)h(command)i(adds)f(a)i(k)m(ey)g(sequence)f(that)h
(quotes)f(the)g(curren)m(t)g(or)1110 3211 y(previous)h(w)m(ord)h(in)f
(Bash:)1350 3340 y Fo($if)47 b(Bash)1350 3444 y(#)g(Quote)g(the)g
(current)f(or)h(previous)e(word)1350 3548 y("\\C-xq":)h
("\\eb\\"\\ef\\"")1350 3651 y($endif)150 3811 y($endif)192
b Fu(This)28 b(command,)j(as)f(seen)h(in)e(the)h(previous)f(example,)h
(terminates)g(an)h Fo($if)e Fu(command.)150 3970 y Fo($else)240
b Fu(Commands)29 b(in)g(this)h(branc)m(h)f(of)i(the)f
Fo($if)g Fu(directiv)m(e)g(are)h(executed)g(if)e(the)i(test)g(fails.)
150 4130 y Fo($include)96 b Fu(This)26 b(directiv)m(e)h(tak)m(es)i(a)f
(single)e(\014lename)h(as)h(an)g(argumen)m(t)g(and)f(reads)g(commands)h
(and)630 4239 y(bindings)f(from)j(that)h(\014le.)870
4368 y Fo($include)46 b(/etc/inputrc)150 4592 y Fk(18.3.3)63
b(Sample)40 b(Init)h(File)275 4785 y Fu(Here)31 b(is)f(an)g(example)h
(of)g(an)g(inputrc)e(\014le.)41 b(This)29 b(illustrates)g(k)m(ey)i
(binding,)d(v)-5 b(ariable)30 b(assignmen)m(t,)150 4894
y(and)g(conditional)e(syn)m(tax.)p eop
%%Page: 161 163
161 162 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(161)390 403 y Fo(#)47 b(This)g(file)g(controls)
e(the)i(behaviour)e(of)j(line)e(input)h(editing)e(for)390
506 y(#)i(programs)f(that)h(use)g(the)f(Gnu)h(Readline)f(library.)93
b(Existing)46 b(programs)390 610 y(#)h(include)f(FTP,)h(Bash,)f(and)h
(Gdb.)390 714 y(#)390 818 y(#)g(You)g(can)g(re-read)f(the)h(inputrc)f
(file)g(with)h(C-x)g(C-r.)390 922 y(#)g(Lines)g(beginning)e(with)i('#')
g(are)g(comments.)390 1025 y(#)390 1129 y(#)g(First,)g(include)e(any)i
(systemwide)e(bindings)h(and)h(variable)e(assignments)g(from)390
1233 y(#)i(/etc/Inputrc)390 1337 y($include)f(/etc/Inputrc)390
1544 y(#)390 1648 y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.)
390 1856 y(set)h(editing-mode)d(emacs)390 2063 y($if)j(mode=emacs)390
2271 y(Meta-Control-h:)91 b(backward-kill-word)43 b(Text)k(after)f(the)
h(function)f(name)g(is)h(ignored)390 2478 y(#)390 2582
y(#)g(Arrow)g(keys)f(in)i(keypad)e(mode)390 2686 y(#)390
2790 y(#"\\M-OD":)379 b(backward-char)390 2893 y(#"\\M-OC":)g
(forward-char)390 2997 y(#"\\M-OA":)g(previous-history)390
3101 y(#"\\M-OB":)g(next-history)390 3205 y(#)390 3308
y(#)47 b(Arrow)g(keys)f(in)i(ANSI)e(mode)390 3412 y(#)390
3516 y("\\M-[D":)380 b(backward-char)390 3620 y("\\M-[C":)g
(forward-char)390 3724 y("\\M-[A":)g(previous-history)390
3827 y("\\M-[B":)g(next-history)390 3931 y(#)390 4035
y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(keypad)f(mode)390
4139 y(#)390 4242 y(#"\\M-\\C-OD":)331 b(backward-char)390
4346 y(#"\\M-\\C-OC":)g(forward-char)390 4450 y(#"\\M-\\C-OA":)g
(previous-history)390 4554 y(#"\\M-\\C-OB":)g(next-history)390
4658 y(#)390 4761 y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(ANSI)g(mode)
390 4865 y(#)390 4969 y(#"\\M-\\C-[D":)331 b(backward-char)390
5073 y(#"\\M-\\C-[C":)g(forward-char)390 5176 y(#"\\M-\\C-[A":)g
(previous-history)390 5280 y(#"\\M-\\C-[B":)g(next-history)p
eop
%%Page: 162 164
162 163 bop 150 -116 a Fu(162)2599 b(Debugging)31 b(with)e(GDB)390
403 y Fo(C-q:)47 b(quoted-insert)390 610 y($endif)390
818 y(#)g(An)h(old-style)d(binding.)93 b(This)47 b(happens)f(to)h(be)g
(the)g(default.)390 922 y(TAB:)g(complete)390 1129 y(#)g(Macros)g(that)
f(are)h(convenient)e(for)i(shell)f(interaction)390 1233
y($if)h(Bash)390 1337 y(#)g(edit)g(the)g(path)390 1440
y("\\C-xp":)f("PATH=${PATH}\\e\\C-e\\C-a)o(\\ef)o(\\C-f)o(")390
1544 y(#)h(prepare)f(to)h(type)g(a)h(quoted)e(word)g(--)h(insert)g
(open)f(and)h(close)f(double)h(quotes)390 1648 y(#)g(and)g(move)g(to)g
(just)g(after)f(the)h(open)g(quote)390 1752 y("\\C-x\\"":)e
("\\"\\"\\C-b")390 1856 y(#)i(insert)g(a)g(backslash)e(\(testing)h
(backslash)f(escapes)h(in)h(sequences)e(and)i(macros\))390
1959 y("\\C-x\\\\":)e("\\\\")390 2063 y(#)i(Quote)g(the)g(current)f(or)
h(previous)e(word)390 2167 y("\\C-xq":)h("\\eb\\"\\ef\\"")390
2271 y(#)h(Add)g(a)h(binding)e(to)h(refresh)f(the)h(line,)f(which)g(is)
h(unbound)390 2374 y("\\C-xr":)f(redraw-current-line)390
2478 y(#)h(Edit)g(variable)f(on)h(current)f(line.)390
2582 y("\\M-\\C-v":)f("\\C-a\\C-k$\\C-y\\M-\\C-e\\C-)o(a\\C-)o(y=")390
2686 y($endif)390 2893 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h
(available)390 2997 y(set)f(bell-style)e(visible)390
3205 y(#)i(don't)g(strip)f(characters)f(to)i(7)h(bits)e(when)h(reading)
390 3308 y(set)g(input-meta)e(on)390 3516 y(#)i(allow)g(iso-latin1)e
(characters)g(to)i(be)g(inserted)f(rather)g(than)g(converted)g(to)390
3620 y(#)h(prefix-meta)e(sequences)390 3724 y(set)i(convert-meta)d(off)
390 3931 y(#)j(display)f(characters)f(with)i(the)g(eighth)f(bit)h(set)g
(directly)e(rather)h(than)390 4035 y(#)h(as)h(meta-prefixed)c
(characters)390 4139 y(set)j(output-meta)e(on)390 4346
y(#)i(if)h(there)e(are)h(more)g(than)f(150)h(possible)f(completions)e
(for)j(a)h(word,)e(ask)h(the)390 4450 y(#)g(user)g(if)g(he)g(wants)g
(to)g(see)g(all)g(of)g(them)390 4554 y(set)g(completion-query-items)42
b(150)390 4761 y(#)47 b(For)g(FTP)390 4865 y($if)g(Ftp)390
4969 y("\\C-xg":)f("get)g(\\M-?")390 5073 y("\\C-xt":)g("put)g(\\M-?")
390 5176 y("\\M-.":)g(yank-last-arg)390 5280 y($endif)p
eop
%%Page: 163 165
163 164 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(163)150 299 y Fs(18.4)68 b(Bindable)45
b(Readline)i(Commands)275 490 y Fu(This)28 b(section)j(describ)s(es)d
(Readline)h(commands)h(that)h(ma)m(y)g(b)s(e)f(b)s(ound)e(to)j(k)m(ey)h
(sequences.)150 708 y Fk(18.4.1)63 b(Commands)40 b(F)-10
b(or)41 b(Mo)m(ving)150 945 y Fo(beginning-of-line)26
b(\(C-a\))630 1055 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(start)h(of)g(the)f
(curren)m(t)g(line.)150 1234 y Fo(end-of-line)d(\(C-e\))630
1343 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(line.)150
1522 y Fo(forward-char)c(\(C-f\))630 1632 y Fu(Mo)m(v)m(e)32
b(forw)m(ard)e(a)h(c)m(haracter.)150 1810 y Fo(backward-char)c(\(C-b\))
630 1920 y Fu(Mo)m(v)m(e)32 b(bac)m(k)g(a)e(c)m(haracter.)150
2099 y Fo(forward-word)d(\(M-f\))630 2208 y Fu(Mo)m(v)m(e)32
b(forw)m(ard)e(to)h(the)f(end)g(of)g(the)h(next)f(w)m(ord.)41
b(W)-8 b(ords)30 b(are)h(comp)s(osed)f(of)g(letters)h(and)630
2318 y(digits.)150 2497 y Fo(backward-word)c(\(M-b\))630
2606 y Fu(Mo)m(v)m(e)34 b(bac)m(k)g(to)f(the)f(start)h(of)g(this,)f(or)
g(the)g(previous,)g(w)m(ord.)46 b(W)-8 b(ords)33 b(are)g(comp)s(osed)f
(of)630 2716 y(letters)f(and)e(digits.)150 2895 y Fo(clear-screen)e
(\(C-l\))630 3004 y Fu(Clear)f(the)h(screen)f(and)h(redra)m(w)f(the)h
(curren)m(t)f(line,)g(lea)m(ving)g(the)h(curren)m(t)g(line)e(at)i(the)g
(top)630 3114 y(of)k(the)f(screen.)150 3293 y Fo(redraw-current-line)25
b(\(\))630 3402 y Fu(Refresh)30 b(the)g(curren)m(t)h(line.)39
b(By)30 b(default,)g(this)f(is)h(un)m(b)s(ound.)150 3621
y Fk(18.4.2)63 b(Commands)40 b(F)-10 b(or)41 b(Manipulating)h(The)f
(History)150 3858 y Fo(accept-line)27 b(\(Newline,)h(Return\))630
3967 y Fu(Accept)j(the)f(line)e(regardless)h(of)h(where)f(the)h(cursor)
f(is.)40 b(If)29 b(this)g(line)f(is)h(non-empt)m(y)-8
b(,)31 b(add)630 4077 y(it)d(to)g(the)g(history)f(list.)39
b(If)27 b(this)g(line)g(w)m(as)h(a)g(history)f(line,)g(then)h(restore)h
(the)f(history)f(line)630 4186 y(to)k(its)f(original)e(state.)150
4365 y Fo(previous-history)e(\(C-p\))630 4475 y Fu(Mo)m(v)m(e)32
b(`up')e(through)g(the)g(history)g(list.)150 4654 y Fo(next-history)d
(\(C-n\))630 4763 y Fu(Mo)m(v)m(e)32 b(`do)m(wn')f(through)f(the)g
(history)f(list.)150 4942 y Fo(beginning-of-history)c(\(M-<\))630
5052 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)e(in)i(the)g
(history)-8 b(.)150 5230 y Fo(end-of-history)26 b(\(M->\))630
5340 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(input)d(history)
-8 b(,)30 b(i.e.,)h(the)g(line)d(curren)m(tly)i(b)s(eing)f(en)m(tered.)
p eop
%%Page: 164 166
164 165 bop 150 -116 a Fu(164)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(reverse-search-history)24 b(\(C-r\))630 408
y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)f(at)h(the)f(curren)m(t)g
(line)e(and)i(mo)m(ving)g(`up')f(through)h(the)g(his-)630
518 y(tory)g(as)f(necessary)-8 b(.)42 b(This)28 b(is)i(an)g(incremen)m
(tal)g(searc)m(h.)150 695 y Fo(forward-search-history)24
b(\(C-s\))630 804 y Fu(Searc)m(h)30 b(forw)m(ard)f(starting)g(at)h(the)
g(curren)m(t)f(line)f(and)h(mo)m(ving)g(`do)m(wn')g(through)g(the)h
(the)630 914 y(history)f(as)i(necessary)-8 b(.)41 b(This)29
b(is)g(an)i(incremen)m(tal)e(searc)m(h.)150 1090 y Fo
(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
b(\(M-p\))630 1200 y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)f(at)h
(the)f(curren)m(t)g(line)e(and)i(mo)m(ving)g(`up')f(through)h(the)g
(his-)630 1309 y(tory)36 b(as)g(necessary)h(using)d(a)j(non-incremen)m
(tal)e(searc)m(h)h(for)g(a)g(string)f(supplied)e(b)m(y)j(the)630
1419 y(user.)150 1596 y Fo(non-incremental-forward-)o(sear)o(ch-h)o
(ist)o(ory)24 b(\(M-n\))630 1705 y Fu(Searc)m(h)30 b(forw)m(ard)f
(starting)g(at)h(the)g(curren)m(t)f(line)f(and)h(mo)m(ving)g(`do)m(wn')
g(through)g(the)h(the)630 1815 y(history)c(as)g(necessary)i(using)d(a)i
(non-incremen)m(tal)e(searc)m(h)j(for)e(a)h(string)f(supplied)d(b)m(y)k
(the)630 1924 y(user.)150 2101 y Fo(history-search-forward)d(\(\))630
2210 y Fu(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)e(for)h
(the)h(string)e(of)i(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
2320 y(start)33 b(of)g(the)g(curren)m(t)g(line)e(and)h(the)h(curren)m
(t)f(cursor)h(p)s(osition)d(\(the)k Fn(p)s(oin)m(t)r
Fu(\).)47 b(This)31 b(is)h(a)630 2430 y(non-incremen)m(tal)d(searc)m
(h.)42 b(By)30 b(default,)g(this)g(command)g(is)f(un)m(b)s(ound.)150
2606 y Fo(history-search-backward)24 b(\(\))630 2716
y Fu(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)f(for)h
(the)f(string)g(of)h(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
2825 y(start)g(of)f(the)g(curren)m(t)g(line)e(and)i(the)g(p)s(oin)m(t.)
54 b(This)33 b(is)i(a)g(non-incremen)m(tal)f(searc)m(h.)56
b(By)630 2935 y(default,)30 b(this)f(command)h(is)g(un)m(b)s(ound.)150
3111 y Fo(yank-nth-arg)d(\(M-C-y\))630 3221 y Fu(Insert)e(the)i
(\014rst)e(argumen)m(t)h(to)h(the)f(previous)f(command)g(\(usually)f
(the)i(second)g(w)m(ord)g(on)630 3331 y(the)j(previous)e(line\).)39
b(With)28 b(an)h(argumen)m(t)g Fn(n)p Fu(,)g(insert)f(the)h
Fn(n)p Fu(th)f(w)m(ord)g(from)g(the)h(previous)630 3440
y(command)e(\(the)h(w)m(ords)e(in)g(the)i(previous)d(command)i(b)s
(egin)f(with)g(w)m(ord)h(0\).)40 b(A)28 b(negativ)m(e)630
3550 y(argumen)m(t)j(inserts)e(the)i Fn(n)p Fu(th)e(w)m(ord)h(from)g
(the)h(end)e(of)i(the)f(previous)f(command.)150 3726
y Fo(yank-last-arg)e(\(M-.,)i(M-_\))630 3836 y Fu(Insert)34
b(last)h(argumen)m(t)h(to)g(the)f(previous)e(command)i(\(the)h(last)e
(w)m(ord)h(of)g(the)g(previous)630 3945 y(history)30
b(en)m(try\).)41 b(With)30 b(an)h(argumen)m(t,)g(b)s(eha)m(v)m(e)g
(exactly)h(lik)m(e)e Fo(yank-nth-arg)p Fu(.)38 b(Succes-)630
4055 y(siv)m(e)c(calls)g(to)h Fo(yank-last-arg)c Fu(mo)m(v)m(e)36
b(bac)m(k)g(through)d(the)i(history)f(list,)g(inserting)f(the)630
4165 y(last)d(argumen)m(t)h(of)g(eac)m(h)g(line)e(in)g(turn.)150
4381 y Fk(18.4.3)63 b(Commands)40 b(F)-10 b(or)41 b(Changing)h(T)-10
b(ext)150 4616 y Fo(delete-char)27 b(\(C-d\))630 4725
y Fu(Delete)34 b(the)e(c)m(haracter)j(under)c(the)h(cursor.)47
b(If)32 b(the)h(cursor)f(is)f(at)i(the)g(b)s(eginning)d(of)j(the)630
4835 y(line,)h(there)g(are)h(no)f(c)m(haracters)i(in)d(the)h(line,)g
(and)g(the)g(last)g(c)m(haracter)i(t)m(yp)s(ed)e(w)m(as)h(not)630
4944 y(b)s(ound)28 b(to)j Fo(delete-char)p Fu(,)d(then)i(return)f
Fo(EOF)p Fu(.)150 5121 y Fo(backward-delete-char)c(\(Rubout\))630
5230 y Fu(Delete)31 b(the)g(c)m(haracter)g(b)s(ehind)d(the)i(cursor.)40
b(A)30 b(n)m(umeric)f(argumen)m(t)i(means)f(to)h(kill)d(the)630
5340 y(c)m(haracters)k(instead)d(of)i(deleting)e(them.)p
eop
%%Page: 165 167
165 166 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(165)150 299 y Fo(forward-backward-delete-)o
(char)24 b(\(\))630 408 y Fu(Delete)39 b(the)g(c)m(haracter)h(under)c
(the)j(cursor,)h(unless)c(the)j(cursor)e(is)g(at)i(the)g(end)e(of)i
(the)630 518 y(line,)31 b(in)f(whic)m(h)g(case)j(the)f(c)m(haracter)h
(b)s(ehind)c(the)j(cursor)f(is)f(deleted.)45 b(By)32
b(default,)f(this)630 628 y(is)e(not)i(b)s(ound)d(to)j(a)g(k)m(ey)-8
b(.)150 797 y Fo(quoted-insert)27 b(\(C-q,)i(C-v\))630
907 y Fu(Add)k(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f
(line)f(v)m(erbatim.)52 b(This)32 b(is)i(ho)m(w)g(to)h(insert)e(k)m(ey)
630 1016 y(sequences)e(lik)m(e)1209 1013 y Fj(h)p 1234
960 112 4 v 1234 1016 a Fi(C-q)p 1234 1032 V 1341 1013
a Fj(i)1371 1016 y Fu(,)f(for)h(example.)150 1186 y Fo(tab-insert)d
(\(M-TAB\))630 1295 y Fu(Insert)i(a)h(tab)f(c)m(haracter.)150
1465 y Fo(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...\))630
1574 y Fu(Insert)g(y)m(ourself.)150 1744 y Fo(transpose-chars)c
(\(C-t\))630 1854 y Fu(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
(cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e(the)g
(cursor,)630 1963 y(mo)m(ving)j(the)h(cursor)f(forw)m(ard)g(as)g(w)m
(ell.)55 b(If)35 b(the)h(insertion)e(p)s(oin)m(t)g(is)g(at)j(the)e(end)
g(of)h(the)630 2073 y(line,)22 b(then)g(this)f(transp)s(oses)g(the)h
(last)g(t)m(w)m(o)h(c)m(haracters)g(of)f(the)h(line.)36
b(Negativ)m(e)24 b(argumen)m(ts)630 2182 y(don't)30 b(w)m(ork.)150
2352 y Fo(transpose-words)c(\(M-t\))630 2461 y Fu(Drag)35
b(the)f(w)m(ord)g(b)s(ehind)d(the)j(cursor)g(past)g(the)g(w)m(ord)g(in)
f(fron)m(t)h(of)g(the)h(cursor)e(mo)m(ving)630 2571 y(the)e(cursor)e(o)
m(v)m(er)j(that)f(w)m(ord)f(as)h(w)m(ell.)150 2740 y
Fo(upcase-word)c(\(M-u\))630 2850 y Fu(Upp)s(ercase)32
b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))f(w)m(ord.)45
b(With)31 b(a)h(negativ)m(e)i(argumen)m(t,)f(upp)s(er-)630
2960 y(case)e(the)g(previous)e(w)m(ord,)h(but)g(do)g(not)h(mo)m(v)m(e)h
(the)e(cursor.)150 3129 y Fo(downcase-word)d(\(M-l\))630
3239 y Fu(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))f
(w)m(ord.)37 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h(lo)m(w)m
(ercase)630 3348 y(the)31 b(previous)d(w)m(ord,)j(but)e(do)i(not)f(mo)m
(v)m(e)i(the)f(cursor.)150 3518 y Fo(capitalize-word)26
b(\(M-c\))630 3627 y Fu(Capitalize)20 b(the)i(curren)m(t)f(\(or)g
(follo)m(wing\))f(w)m(ord.)38 b(With)20 b(a)i(negativ)m(e)g(argumen)m
(t,)i(capitalize)630 3737 y(the)31 b(previous)d(w)m(ord,)j(but)e(do)i
(not)f(mo)m(v)m(e)i(the)f(cursor.)150 3946 y Fk(18.4.4)63
b(Killing)42 b(And)f(Y)-10 b(anking)150 4174 y Fo(kill-line)28
b(\(C-k\))630 4284 y Fu(Kill)g(the)i(text)i(from)e(the)g(curren)m(t)g
(cursor)g(p)s(osition)f(to)i(the)f(end)g(of)g(the)h(line.)150
4453 y Fo(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
4563 y Fu(Kill)e(bac)m(kw)m(ard)j(to)g(the)f(b)s(eginning)e(of)i(the)h
(line.)150 4732 y Fo(unix-line-discard)26 b(\(C-u\))630
4842 y Fu(Kill)j(bac)m(kw)m(ard)k(from)e(the)h(cursor)f(to)i(the)f(b)s
(eginning)d(of)j(the)g(curren)m(t)g(line.)43 b(The)31
b(killed)630 4951 y(text)g(is)f(sa)m(v)m(ed)h(on)g(the)f(kill-ring.)150
5121 y Fo(kill-whole-line)c(\(\))630 5230 y Fu(Kill)20
b(all)i(c)m(haracters)i(on)f(the)g(curren)m(t)f(line,)h(no)g(matter)h
(where)e(the)h(cursor)f(is.)37 b(By)23 b(default,)630
5340 y(this)29 b(is)h(un)m(b)s(ound.)p eop
%%Page: 166 168
166 167 bop 150 -116 a Fu(166)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fo(kill-word)f(\(M-d\))630 408 y Fu(Kill)d(from)j(the)g(cursor)f
(to)i(the)f(end)g(of)g(the)g(curren)m(t)g(w)m(ord,)g(or)g(if)f(b)s(et)m
(w)m(een)i(w)m(ords,)f(to)h(the)630 518 y(end)h(of)g(the)h(next)f(w)m
(ord.)41 b(W)-8 b(ord)30 b(b)s(oundaries)e(are)j(the)g(same)f(as)h
Fo(forward-word)p Fu(.)150 702 y Fo(backward-kill-word)25
b(\(M-DEL\))630 811 y Fu(Kill)j(the)j(w)m(ord)g(b)s(ehind)d(the)j
(cursor.)42 b(W)-8 b(ord)31 b(b)s(oundaries)e(are)i(the)g(same)g(as)g
Fo(backward-)630 921 y(word)p Fu(.)150 1104 y Fo(unix-word-rubout)26
b(\(C-w\))630 1214 y Fu(Kill)32 b(the)k(w)m(ord)e(b)s(ehind)f(the)i
(cursor,)h(using)d(white)h(space)i(as)f(a)h(w)m(ord)e(b)s(oundary)-8
b(.)53 b(The)630 1324 y(killed)28 b(text)j(is)f(sa)m(v)m(ed)h(on)f(the)
h(kill-ring.)150 1507 y Fo(delete-horizontal-space)24
b(\(\))630 1617 y Fu(Delete)32 b(all)d(spaces)i(and)e(tabs)i(around)e
(p)s(oin)m(t.)40 b(By)31 b(default,)e(this)h(is)f(un)m(b)s(ound.)150
1800 y Fo(kill-region)e(\(\))630 1910 y Fu(Kill)c(the)j(text)g(b)s(et)m
(w)m(een)g(the)g(p)s(oin)m(t)e(and)h(the)h Fr(mark)36
b Fu(\(sa)m(v)m(ed)27 b(cursor)e(p)s(osition\).)37 b(This)24
b(text)630 2020 y(is)29 b(referred)h(to)h(as)g(the)f
Fn(region)p Fu(.)41 b(By)30 b(default,)g(this)f(command)i(is)e(un)m(b)s
(ound.)150 2203 y Fo(copy-region-as-kill)c(\(\))630 2313
y Fu(Cop)m(y)34 b(the)g(text)h(in)e(the)h(region)f(to)i(the)f(kill)e
(bu\013er,)i(so)g(it)g(can)g(b)s(e)f(y)m(ank)m(ed)i(righ)m(t)e(a)m(w)m
(a)m(y)-8 b(.)630 2422 y(By)31 b(default,)e(this)h(command)g(is)f(un)m
(b)s(ound.)150 2606 y Fo(copy-backward-word)c(\(\))630
2716 y Fu(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)f(to)j
(the)e(kill)e(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)e(are)j
(the)630 2825 y(same)31 b(as)f Fo(backward-word)p Fu(.)38
b(By)30 b(default,)g(this)f(command)h(is)g(un)m(b)s(ound.)150
3009 y Fo(copy-forward-word)c(\(\))630 3118 y Fu(Cop)m(y)31
b(the)g(w)m(ord)g(follo)m(wing)e(p)s(oin)m(t)h(to)i(the)f(kill)e
(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)d(are)k(the)630
3228 y(same)f(as)f Fo(forward-word)p Fu(.)38 b(By)30
b(default,)g(this)g(command)g(is)f(un)m(b)s(ound.)150
3412 y Fo(yank)g(\(C-y\))630 3521 y Fu(Y)-8 b(ank)31
b(the)f(top)h(of)g(the)f(kill)e(ring)h(in)m(to)i(the)f(bu\013er)g(at)h
(the)f(curren)m(t)g(cursor)g(p)s(osition.)150 3705 y
Fo(yank-pop)e(\(M-y\))630 3814 y Fu(Rotate)36 b(the)f(kill-ring,)e(and)
h(y)m(ank)h(the)f(new)g(top.)54 b(Y)-8 b(ou)35 b(can)g(only)e(do)i
(this)e(if)h(the)h(prior)630 3924 y(command)30 b(is)g(y)m(ank)g(or)h(y)
m(ank-p)s(op.)150 4147 y Fk(18.4.5)63 b(Sp)s(ecifying)41
b(Numeric)f(Argumen)m(ts)150 4389 y Fo(digit-argument)26
b(\(M-0,)j(M-1,)h(...)f(M--\))630 4499 y Fu(Add)d(this)g(digit)f(to)j
(the)f(argumen)m(t)g(already)g(accum)m(ulating,)g(or)g(start)h(a)f(new)
f(argumen)m(t.)630 4605 y Fj(h)p 654 4552 100 4 v 654
4608 a Fi(M{)p 654 4624 V 750 4605 a Fj(i)810 4608 y
Fu(starts)31 b(a)g(negativ)m(e)g(argumen)m(t.)150 4792
y Fo(universal-argument)25 b(\(\))630 4902 y Fu(This)f(is)g(another)i
(w)m(a)m(y)g(to)h(sp)s(ecify)d(an)h(argumen)m(t.)40 b(If)25
b(this)f(command)i(is)e(follo)m(w)m(ed)h(b)m(y)h(one)630
5011 y(or)k(more)f(digits,)g(optionally)f(with)g(a)i(leading)f(min)m
(us)f(sign,)h(those)h(digits)e(de\014ne)h(the)h(ar-)630
5121 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)f(follo)m(w)m(ed)g(b)
m(y)h(digits,)g(executing)g Fo(universal-argument)630
5230 y Fu(again)j(ends)f(the)h(n)m(umeric)e(argumen)m(t,)j(but)e(is)g
(otherwise)g(ignored.)44 b(As)32 b(a)g(sp)s(ecial)f(case,)630
5340 y(if)h(this)g(command)g(is)g(immediately)f(follo)m(w)m(ed)i(b)m(y)
f(a)h(c)m(haracter)i(that)e(is)f(neither)g(a)h(digit)p
eop
%%Page: 167 169
167 168 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(167)630 299 y(or)28 b(min)m(us)e(sign,)i(the)g
(argumen)m(t)g(coun)m(t)h(for)e(the)i(next)f(command)f(is)g(m)m
(ultiplied)e(b)m(y)i(four.)630 408 y(The)37 b(argumen)m(t)h(coun)m(t)f
(is)g(initially)d(one,)39 b(so)f(executing)f(this)f(function)g(the)i
(\014rst)e(time)630 518 y(mak)m(es)d(the)e(argumen)m(t)i(coun)m(t)f
(four,)f(a)i(second)e(time)h(mak)m(es)g(the)g(argumen)m(t)g(coun)m(t)h
(six-)630 628 y(teen,)e(and)f(so)h(on.)40 b(By)31 b(default,)f(this)f
(is)g(not)i(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 855
y Fk(18.4.6)63 b(Letting)41 b(Readline)f(T)m(yp)s(e)i(F)-10
b(or)41 b(Y)-10 b(ou)150 1101 y Fo(complete)28 b(\(TAB\))630
1210 y Fu(A)m(ttempt)37 b(to)f(do)f(completion)g(on)g(the)g(text)i(b)s
(efore)e(the)g(cursor.)55 b(This)34 b(is)g(application-)630
1320 y(sp)s(eci\014c.)39 b(Generally)-8 b(,)30 b(if)e(y)m(ou)i(are)f(t)
m(yping)g(a)h(\014lename)f(argumen)m(t,)h(y)m(ou)g(can)f(do)h
(\014lename)630 1429 y(completion;)g(if)g(y)m(ou)h(are)g(t)m(yping)f(a)
h(command,)g(y)m(ou)g(can)g(do)f(command)h(completion;)f(if)630
1539 y(y)m(ou)37 b(are)g(t)m(yping)e(in)h(a)g(sym)m(b)s(ol)g(to)h(GDB,)
h(y)m(ou)e(can)h(do)f(sym)m(b)s(ol)g(name)g(completion;)j(if)630
1649 y(y)m(ou)27 b(are)f(t)m(yping)g(in)f(a)h(v)-5 b(ariable)25
b(to)i(Bash,)h(y)m(ou)e(can)h(do)f(v)-5 b(ariable)25
b(name)h(completion,)h(and)630 1758 y(so)k(on.)150 1945
y Fo(possible-completions)25 b(\(M-?\))630 2054 y Fu(List)30
b(the)g(p)s(ossible)e(completions)i(of)g(the)h(text)g(b)s(efore)f(the)h
(cursor.)150 2241 y Fo(insert-completions)25 b(\(M-*\))630
2350 y Fu(Insert)30 b(all)f(completions)h(of)h(the)g(text)g(b)s(efore)f
(p)s(oin)m(t)g(that)h(w)m(ould)e(ha)m(v)m(e)j(b)s(een)e(generated)630
2460 y(b)m(y)g Fo(possible-completions)p Fu(.)150 2646
y Fo(menu-complete)d(\(\))630 2756 y Fu(Similar)21 b(to)j
Fo(complete)p Fu(,)f(but)h(replaces)f(the)h(w)m(ord)g(to)g(b)s(e)f
(completed)h(with)e(a)j(single)d(matc)m(h)630 2865 y(from)37
b(the)h(list)f(of)h(p)s(ossible)d(completions.)62 b(Rep)s(eated)39
b(execution)f(of)g Fo(menu-complete)630 2975 y Fu(steps)i(through)g
(the)g(list)f(of)h(p)s(ossible)e(completions,)k(inserting)c(eac)m(h)k
(matc)m(h)f(in)e(turn.)630 3085 y(A)m(t)d(the)f(end)f(of)h(the)g(list)e
(of)i(completions,)h(the)f(b)s(ell)d(is)i(rung)g(and)g(the)h(original)e
(text)j(is)630 3194 y(restored.)53 b(An)35 b(argumen)m(t)g(of)f
Fn(n)g Fu(mo)m(v)m(es)i Fn(n)e Fu(p)s(ositions)f(forw)m(ard)h(in)f(the)
i(list)e(of)i(matc)m(hes;)630 3304 y(a)40 b(negativ)m(e)h(argumen)m(t)g
(ma)m(y)f(b)s(e)f(used)g(to)i(mo)m(v)m(e)g(bac)m(kw)m(ard)g(through)e
(the)h(list.)68 b(This)630 3413 y(command)30 b(is)g(in)m(tended)f(to)i
(b)s(e)f(b)s(ound)e(to)j Fo(TAB)p Fu(,)f(but)f(is)h(un)m(b)s(ound)e(b)m
(y)i(default.)150 3600 y Fo(delete-char-or-list)25 b(\(\))630
3709 y Fu(Deletes)j(the)f(c)m(haracter)h(under)e(the)h(cursor)f(if)g
(not)h(at)g(the)g(b)s(eginning)e(or)h(end)h(of)g(the)g(line)630
3819 y(\(lik)m(e)i Fo(delete-char)p Fu(\).)37 b(If)29
b(at)h(the)f(end)f(of)i(the)f(line,)f(b)s(eha)m(v)m(es)i(iden)m
(tically)d(to)i Fo(possible-)630 3929 y(completions)p
Fu(.)38 b(This)28 b(command)i(is)g(un)m(b)s(ound)e(b)m(y)i(default.)150
4156 y Fk(18.4.7)63 b(Keyb)s(oard)42 b(Macros)150 4401
y Fo(start-kbd-macro)26 b(\(C-x)j(\(\))630 4511 y Fu(Begin)h(sa)m(ving)
h(the)f(c)m(haracters)i(t)m(yp)s(ed)e(in)m(to)g(the)h(curren)m(t)f(k)m
(eyb)s(oard)g(macro.)150 4698 y Fo(end-kbd-macro)d(\(C-x)i(\)\))630
4807 y Fu(Stop)e(sa)m(ving)g(the)h(c)m(haracters)g(t)m(yp)s(ed)f(in)m
(to)h(the)f(curren)m(t)g(k)m(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i
(the)630 4917 y(de\014nition.)150 5103 y Fo(call-last-kbd-macro)c
(\(C-x)k(e\))630 5213 y Fu(Re-execute)37 b(the)e(last)g(k)m(eyb)s(oard)
g(macro)h(de\014ned,)f(b)m(y)h(making)e(the)h(c)m(haracters)i(in)d(the)
630 5322 y(macro)d(app)s(ear)f(as)g(if)g(t)m(yp)s(ed)g(at)h(the)f(k)m
(eyb)s(oard.)p eop
%%Page: 168 170
168 169 bop 150 -116 a Fu(168)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fk(18.4.8)63 b(Some)41 b(Miscellaneous)h(Commands)150
530 y Fo(re-read-init-file)26 b(\(C-x)j(C-r\))630 639
y Fu(Read)23 b(in)e(the)h(con)m(ten)m(ts)i(of)f(the)f(inputrc)e
(\014le,)k(and)d(incorp)s(orate)h(an)m(y)h(bindings)c(or)j(v)-5
b(ariable)630 749 y(assignmen)m(ts)30 b(found)f(there.)150
921 y Fo(abort)g(\(C-g\))630 1031 y Fu(Ab)s(ort)d(the)h(curren)m(t)f
(editing)f(command)h(and)g(ring)g(the)g(terminal's)f(b)s(ell)g(\(sub)5
b(ject)26 b(to)i(the)630 1140 y(setting)i(of)h Fo(bell-style)p
Fu(\).)150 1313 y Fo(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p
Fn(x)p Fo(,)g(...\))630 1423 y Fu(If)e(the)h(meta\014ed)g(c)m(haracter)
h Fn(x)34 b Fu(is)27 b(lo)m(w)m(ercase,)i(run)e(the)g(command)h(that)g
(is)f(b)s(ound)e(to)k(the)630 1532 y(corresp)s(onding)f(upp)s(ercase)i
(c)m(haracter.)150 1705 y Fo(prefix-meta)d(\(ESC\))630
1814 y Fu(Mak)m(e)38 b(the)e(next)h(c)m(haracter)g(t)m(yp)s(ed)f(b)s(e)
g(meta\014ed.)59 b(This)34 b(is)h(for)h(k)m(eyb)s(oards)g(without)g(a)
630 1924 y(meta)31 b(k)m(ey)-8 b(.)42 b(T)m(yping)29
b(`)p Fo(ESC)h(f)p Fu(')g(is)g(equiv)-5 b(alen)m(t)30
b(to)h(t)m(yping)f(`)p Fo(M-f)p Fu('.)150 2096 y Fo(undo)f(\(C-_,)g
(C-x)h(C-u\))630 2206 y Fu(Incremen)m(tal)g(undo,)g(separately)g(remem)
m(b)s(ered)g(for)g(eac)m(h)i(line.)150 2379 y Fo(revert-line)27
b(\(M-r\))630 2488 y Fu(Undo)33 b(all)f(c)m(hanges)i(made)f(to)h(this)e
(line.)47 b(This)31 b(is)h(lik)m(e)h(executing)g(the)g
Fo(undo)f Fu(command)630 2598 y(enough)e(times)g(to)h(get)h(bac)m(k)f
(to)g(the)f(b)s(eginning.)150 2770 y Fo(tilde-expand)d(\(M-~\))630
2880 y Fu(P)m(erform)j(tilde)f(expansion)h(on)g(the)g(curren)m(t)h(w)m
(ord.)150 3053 y Fo(set-mark)d(\(C-@\))630 3162 y Fu(Set)f(the)h(mark)f
(to)h(the)f(curren)m(t)g(p)s(oin)m(t.)39 b(If)26 b(a)i(n)m(umeric)e
(argumen)m(t)i(is)e(supplied,)f(the)i(mark)630 3272 y(is)i(set)i(to)g
(that)g(p)s(osition.)150 3444 y Fo(exchange-point-and-mark)24
b(\(C-x)29 b(C-x\))630 3554 y Fu(Sw)m(ap)i(the)g(p)s(oin)m(t)f(with)g
(the)h(mark.)43 b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)g(is)g
(set)i(to)f(the)h(sa)m(v)m(ed)630 3663 y(p)s(osition,)d(and)g(the)i
(old)f(cursor)f(p)s(osition)g(is)g(sa)m(v)m(ed)j(as)e(the)h(mark.)150
3836 y Fo(character-search)26 b(\(C-]\))630 3946 y Fu(A)f(c)m(haracter)
h(is)e(read)h(and)f(p)s(oin)m(t)g(is)g(mo)m(v)m(ed)i(to)g(the)f(next)g
(o)s(ccurrence)g(of)g(that)g(c)m(haracter.)630 4055 y(A)30
b(negativ)m(e)i(coun)m(t)f(searc)m(hes)g(for)f(previous)f(o)s
(ccurrences.)150 4228 y Fo(character-search-backwar)o(d)24
b(\(M-C-]\))630 4337 y Fu(A)45 b(c)m(haracter)h(is)e(read)h(and)f(p)s
(oin)m(t)g(is)g(mo)m(v)m(ed)i(to)f(the)g(previous)e(o)s(ccurrence)i(of)
g(that)630 4447 y(c)m(haracter.)d(A)31 b(negativ)m(e)g(coun)m(t)g
(searc)m(hes)h(for)e(subsequen)m(t)f(o)s(ccurrences.)150
4619 y Fo(insert-comment)d(\(M-#\))630 4729 y Fu(The)38
b(v)-5 b(alue)38 b(of)g(the)h Fo(comment-begin)c Fu(v)-5
b(ariable)37 b(is)g(inserted)h(at)h(the)f(b)s(eginning)e(of)j(the)630
4839 y(curren)m(t)30 b(line,)f(and)h(the)g(line)f(is)h(accepted)h(as)g
(if)e(a)i(newline)d(had)i(b)s(een)g(t)m(yp)s(ed.)150
5011 y Fo(dump-functions)c(\(\))630 5121 y Fu(Prin)m(t)f(all)h(of)g
(the)h(functions)e(and)h(their)f(k)m(ey)i(bindings)c(to)28
b(the)e(Readline)f(output)h(stream.)630 5230 y(If)31
b(a)h(n)m(umeric)f(argumen)m(t)h(is)f(supplied,)e(the)j(output)f(is)g
(formatted)h(in)e(suc)m(h)i(a)g(w)m(a)m(y)g(that)630
5340 y(it)e(can)h(b)s(e)e(made)i(part)f(of)g(an)h Fn(inputrc)j
Fu(\014le.)40 b(This)28 b(command)i(is)g(un)m(b)s(ound)d(b)m(y)k
(default.)p eop
%%Page: 169 171
169 170 bop 150 -116 a Fu(Chapter)30 b(18:)41 b(Command)30
b(Line)f(Editing)2015 b(169)150 299 y Fo(dump-variables)26
b(\(\))630 408 y Fu(Prin)m(t)20 b(all)g(of)i(the)f(settable)h(v)-5
b(ariables)20 b(and)h(their)f(v)-5 b(alues)21 b(to)h(the)f(Readline)f
(output)h(stream.)630 518 y(If)31 b(a)h(n)m(umeric)f(argumen)m(t)h(is)f
(supplied,)e(the)j(output)f(is)g(formatted)h(in)e(suc)m(h)i(a)g(w)m(a)m
(y)g(that)630 628 y(it)e(can)h(b)s(e)e(made)i(part)f(of)g(an)h
Fn(inputrc)j Fu(\014le.)40 b(This)28 b(command)i(is)g(un)m(b)s(ound)d
(b)m(y)k(default.)150 812 y Fo(dump-macros)c(\(\))630
922 y Fu(Prin)m(t)33 b(all)f(of)i(the)g(Readline)e(k)m(ey)j(sequences)f
(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)f(they)630
1031 y(ouput.)60 b(If)37 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
(supplied,)f(the)j(output)e(is)g(formatted)i(in)e(suc)m(h)h(a)630
1141 y(w)m(a)m(y)31 b(that)g(it)e(can)h(b)s(e)g(made)g(part)f(of)i(an)e
Fn(inputrc)34 b Fu(\014le.)40 b(This)28 b(command)i(is)f(un)m(b)s(ound)
e(b)m(y)630 1250 y(default.)150 1508 y Fs(18.5)68 b(Readline)47
b(vi)e(Mo)t(de)275 1700 y Fu(While)22 b(the)i(Readline)e(library)f(do)s
(es)j(not)g(ha)m(v)m(e)g(a)h(full)c(set)j(of)g Fo(vi)f
Fu(editing)f(functions,)i(it)f(do)s(es)h(con)m(tain)150
1810 y(enough)34 b(to)h(allo)m(w)e(simple)f(editing)h(of)h(the)g(line.)
50 b(The)34 b(Readline)e Fo(vi)i Fu(mo)s(de)f(b)s(eha)m(v)m(es)i(as)f
(sp)s(eci\014ed)e(in)150 1919 y(the)f Ft(POSIX)e Fu(1003.2)k(standard.)
275 2054 y(In)28 b(order)g(to)i(switc)m(h)f(in)m(teractiv)m(ely)g(b)s
(et)m(w)m(een)g Fo(emacs)f Fu(and)g Fo(vi)h Fu(editing)e(mo)s(des,)i
(use)g(the)g(command)150 2164 y(M-C-j)i(\(toggle-editing-mo)s(de\).)41
b(The)30 b(Readline)f(default)h(is)f Fo(emacs)g Fu(mo)s(de.)275
2298 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)d(in)h Fo(vi)g
Fu(mo)s(de,)h(y)m(ou)h(are)f(already)g(placed)f(in)g(`insertion')f(mo)s
(de,)i(as)h(if)e(y)m(ou)150 2408 y(had)d(t)m(yp)s(ed)g(an)g(`)p
Fo(i)p Fu('.)39 b(Pressing)1215 2405 y Fj(h)p 1239 2352
139 4 v 1239 2408 a Fi(ESC)p 1239 2423 V 1373 2405 a
Fj(i)1429 2408 y Fu(switc)m(hes)26 b(y)m(ou)h(in)m(to)f(`command')g(mo)
s(de,)h(where)f(y)m(ou)h(can)f(edit)g(the)150 2517 y(text)35
b(of)f(the)g(line)e(with)g(the)i(standard)f Fo(vi)g Fu(mo)m(v)m(emen)m
(t)j(k)m(eys,)g(mo)m(v)m(e)f(to)f(previous)f(history)f(lines)g(with)150
2627 y(`)p Fo(k)p Fu(')f(and)e(subsequen)m(t)h(lines)f(with)g(`)p
Fo(j)p Fu(',)h(and)g(so)h(forth.)p eop
%%Page: 170 172
170 171 bop 150 -116 a Fu(170)2599 b(Debugging)31 b(with)e(GDB)p
eop
%%Page: 171 173
171 172 bop 150 -116 a Fu(Chapter)30 b(19:)41 b(Using)30
b(History)g(In)m(teractiv)m(ely)1877 b(171)150 299 y
Fp(19)80 b(Using)54 b(History)g(In)l(teractiv)l(ely)275
577 y Fu(This)28 b(c)m(hapter)j(describ)s(es)d(ho)m(w)j(to)g(use)f(the)
g(GNU)h(History)f(Library)e(in)m(teractiv)m(ely)-8 b(,)31
b(from)f(a)h(user's)150 687 y(standp)s(oin)m(t.)68 b(It)40
b(should)e(b)s(e)h(considered)g(a)h(user's)g(guide.)68
b(F)-8 b(or)41 b(information)d(on)i(using)e(the)i(GNU)150
797 y(History)30 b(Library)f(in)g(y)m(our)h(o)m(wn)h(programs,)f(see)i
Fq(h)p Fu(unde\014ned)p Fq(i)d Fu([Programming)g(with)h(GNU)h
(History],)150 906 y(page)g Fq(h)p Fu(unde\014ned)p Fq(i)p
Fu(.)150 1201 y Fs(19.1)68 b(History)46 b(Expansion)275
1408 y Fu(The)35 b(History)g(library)e(pro)m(vides)i(a)h(history)e
(expansion)h(feature)h(that)g(is)f(similar)e(to)j(the)g(history)150
1518 y(expansion)21 b(pro)m(vided)f(b)m(y)i Fo(csh)p
Fu(.)37 b(This)21 b(section)h(describ)s(es)e(the)i(syn)m(tax)h(used)e
(to)h(manipulate)f(the)h(history)150 1627 y(information.)275
1776 y(History)30 b(expansions)f(in)m(tro)s(duce)g(w)m(ords)h(from)g
(the)h(history)e(list)g(in)m(to)h(the)h(input)e(stream,)i(making)150
1886 y(it)f(easy)h(to)g(rep)s(eat)g(commands,)f(insert)f(the)i(argumen)
m(ts)f(to)h(a)g(previous)e(command)h(in)m(to)h(the)f(curren)m(t)150
1996 y(input)e(line,)h(or)i(\014x)f(errors)f(in)g(previous)g(commands)h
(quic)m(kly)-8 b(.)275 2145 y(History)36 b(expansion)f(tak)m(es)j
(place)f(in)e(t)m(w)m(o)j(parts.)59 b(The)36 b(\014rst)g(is)g(to)h
(determine)f(whic)m(h)f(line)g(from)150 2255 y(the)42
b(history)e(list)g(should)f(b)s(e)i(used)f(during)f(substitution.)72
b(The)40 b(second)i(is)e(to)i(select)g(p)s(ortions)e(of)150
2364 y(that)31 b(line)e(for)h(inclusion)e(in)m(to)i(the)h(curren)m(t)f
(one.)42 b(The)30 b(line)f(selected)i(from)f(the)h(history)e(is)h
(called)g(the)150 2474 y Fn(ev)m(en)m(t)p Fu(,)g(and)c(the)i(p)s
(ortions)d(of)j(that)f(line)f(that)i(are)f(acted)i(up)s(on)c(are)j
(called)e Fn(w)m(ords)p Fu(.)39 b(V)-8 b(arious)27 b
Fn(mo)s(di\014ers)150 2583 y Fu(are)33 b(a)m(v)-5 b(ailable)33
b(to)g(manipulate)f(the)h(selected)g(w)m(ords.)48 b(The)32
b(line)g(is)g(brok)m(en)g(in)m(to)h(w)m(ords)g(in)e(the)j(same)150
2693 y(fashion)22 b(that)h(Bash)g(do)s(es,)h(so)f(that)h(sev)m(eral)f
(w)m(ords)f(surrounded)e(b)m(y)j(quotes)g(are)g(considered)f(one)h(w)m
(ord.)150 2802 y(History)36 b(expansions)g(are)h(in)m(tro)s(duced)e(b)m
(y)i(the)g(app)s(earance)g(of)g(the)g(history)e(expansion)h(c)m
(haracter,)150 2912 y(whic)m(h)29 b(is)h(`)p Fo(!)p Fu(')g(b)m(y)g
(default.)150 3166 y Fk(19.1.1)63 b(Ev)m(en)m(t)39 b(Designators)275
3373 y Fu(An)30 b(ev)m(en)m(t)h(designator)g(is)e(a)i(reference)g(to)g
(a)f(command)h(line)d(en)m(try)j(in)e(the)i(history)e(list.)150
3555 y Fo(!)432 b Fu(Start)34 b(a)f(history)g(substitution,)f(except)i
(when)f(follo)m(w)m(ed)g(b)m(y)g(a)h(space,)h(tab,)f(the)g(end)f(of)630
3664 y(the)e(line,)e(`)p Fo(=)p Fu(')h(or)g(`)p Fo(\()p
Fu('.)150 3839 y Fo(!)p Fn(n)381 b Fu(Refer)30 b(to)i(command)e(line)e
Fn(n)p Fu(.)150 4013 y Fo(!-)p Fn(n)333 b Fu(Refer)30
b(to)i(the)e(command)g Fn(n)g Fu(lines)f(bac)m(k.)150
4187 y Fo(!!)384 b Fu(Refer)30 b(to)i(the)e(previous)f(command.)40
b(This)29 b(is)g(a)i(synon)m(ym)f(for)g(`)p Fo(!-1)p
Fu('.)150 4361 y Fo(!)p Fn(string)203 b Fu(Refer)30 b(to)i(the)e(most)h
(recen)m(t)g(command)f(starting)h(with)e Fn(string)p
Fu(.)150 4536 y Fo(!?)p Fn(string)8 b Fo([?])630 4645
y Fu(Refer)34 b(to)g(the)f(most)h(recen)m(t)h(command)e(con)m(taining)g
Fn(string)p Fu(.)49 b(The)33 b(trailing)f(`)p Fo(?)p
Fu(')h(ma)m(y)i(b)s(e)630 4755 y(omitted)30 b(if)g(the)g
Fn(string)37 b Fu(is)30 b(follo)m(w)m(ed)g(immediately)f(b)m(y)h(a)h
(newline.)150 4929 y Fo(^)p Fn(string1)7 b Fo(^)p Fn(string2)g
Fo(^)630 5038 y Fu(Quic)m(k)31 b(Substitution.)42 b(Rep)s(eat)32
b(the)g(last)g(command,)g(replacing)e Fn(string1)39 b
Fu(with)30 b Fn(string2)p Fu(.)630 5148 y(Equiv)-5 b(alen)m(t)29
b(to)i Fo(!!:s/)p Fn(string1)7 b Fo(/)p Fn(string2)g
Fo(/)p Fu(.)150 5322 y Fo(!#)384 b Fu(The)30 b(en)m(tire)g(command)g
(line)f(t)m(yp)s(ed)h(so)h(far.)p eop
%%Page: 172 174
172 173 bop 150 -116 a Fu(172)2599 b(Debugging)31 b(with)e(GDB)150
299 y Fk(19.1.2)63 b(W)-10 b(ord)41 b(Designators)275
491 y Fu(W)-8 b(ord)35 b(designators)f(are)h(used)f(to)h(select)g
(desired)e(w)m(ords)i(from)f(the)h(ev)m(en)m(t.)55 b(A)34
b(`)p Fo(:)p Fu(')h(separates)h(the)150 601 y(ev)m(en)m(t)41
b(sp)s(eci\014cation)d(from)i(the)f(w)m(ord)g(designator.)68
b(It)40 b(ma)m(y)g(b)s(e)f(omitted)h(if)e(the)i(w)m(ord)f(designator)
150 710 y(b)s(egins)32 b(with)h(a)i(`)p Fo(^)p Fu(',)g(`)p
Fo($)p Fu(',)g(`)p Fo(*)p Fu(',)h(`)p Fo(-)p Fu(',)f(or)f(`)p
Fo(\045)p Fu('.)52 b(W)-8 b(ords)35 b(are)f(n)m(um)m(b)s(ered)f(from)g
(the)i(b)s(eginning)c(of)j(the)g(line,)150 820 y(with)k(the)i(\014rst)f
(w)m(ord)g(b)s(eing)f(denoted)i(b)m(y)g(0)g(\(zero\).)70
b(W)-8 b(ords)39 b(are)h(inserted)f(in)m(to)g(the)h(curren)m(t)g(line)
150 929 y(separated)31 b(b)m(y)f(single)f(spaces.)150
1088 y Fo(0)h(\(zero\))114 b Fu(The)30 b Fo(0)p Fu(th)g(w)m(ord.)40
b(F)-8 b(or)31 b(man)m(y)g(applications,)e(this)g(is)g(the)i(command)f
(w)m(ord.)150 1247 y Fn(n)429 b Fu(The)30 b Fn(n)p Fu(th)g(w)m(ord.)150
1405 y Fo(^)432 b Fu(The)30 b(\014rst)f(argumen)m(t;)j(that)f(is,)e(w)m
(ord)h(1.)150 1564 y Fo($)432 b Fu(The)30 b(last)g(argumen)m(t.)150
1722 y Fo(\045)432 b Fu(The)30 b(w)m(ord)g(matc)m(hed)h(b)m(y)f(the)h
(most)g(recen)m(t)g(`)p Fo(?)p Fn(string)8 b Fo(?)p Fu(')29
b(searc)m(h.)150 1881 y Fn(x)p Fo(-)p Fn(y)336 b Fu(A)30
b(range)h(of)g(w)m(ords;)f(`)p Fo(-)p Fn(y)8 b Fu(')30
b(abbreviates)g(`)p Fo(0-)p Fn(y)8 b Fu('.)150 2040 y
Fo(*)432 b Fu(All)26 b(of)i(the)g(w)m(ords,)g(except)h(the)e
Fo(0)p Fu(th.)40 b(This)26 b(is)g(a)i(synon)m(ym)f(for)h(`)p
Fo(1-$)p Fu('.)39 b(It)28 b(is)f(not)h(an)f(error)630
2149 y(to)j(use)g(`)p Fo(*)p Fu(')f(if)g(there)h(is)f(just)g(one)h(w)m
(ord)f(in)f(the)i(ev)m(en)m(t;)i(the)d(empt)m(y)i(string)d(is)h
(returned)f(in)630 2259 y(that)j(case.)150 2417 y Fn(x)6
b Fo(*)378 b Fu(Abbreviates)30 b(`)p Fn(x)p Fo(-$)p Fu(')150
2576 y Fn(x)p Fo(-)384 b Fu(Abbreviates)30 b(`)p Fn(x)p
Fo(-$)p Fu(')g(lik)m(e)g(`)p Fn(x)6 b Fo(*)p Fu(',)31
b(but)e(omits)h(the)h(last)f(w)m(ord.)275 2735 y(If)j(a)h(w)m(ord)g
(designator)f(is)g(supplied)e(without)i(an)h(ev)m(en)m(t)h(sp)s
(eci\014cation,)f(the)g(previous)e(command)150 2844 y(is)d(used)h(as)h
(the)f(ev)m(en)m(t.)150 3067 y Fk(19.1.3)63 b(Mo)s(di\014ers)275
3259 y Fu(After)20 b(the)h(optional)f(w)m(ord)h(designator,)h(y)m(ou)f
(can)g(add)f(a)h(sequence)g(of)g(one)g(or)g(more)g(of)g(the)f(follo)m
(wing)150 3369 y(mo)s(di\014ers,)28 b(eac)m(h)k(preceded)e(b)m(y)g(a)h
(`)p Fo(:)p Fu('.)150 3528 y Fo(h)432 b Fu(Remo)m(v)m(e)32
b(a)f(trailing)d(pathname)j(comp)s(onen)m(t,)g(lea)m(ving)f(only)f(the)
i(head.)150 3686 y Fo(t)432 b Fu(Remo)m(v)m(e)32 b(all)d(leading)h
(pathname)g(comp)s(onen)m(ts,)h(lea)m(ving)f(the)g(tail.)150
3845 y Fo(r)432 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)d(su\016x)i(of)g
(the)h(form)f(`)p Fo(.)p Fn(su\016x)6 b Fu(',)30 b(lea)m(ving)g(the)h
(basename.)150 4003 y Fo(e)432 b Fu(Remo)m(v)m(e)32 b(all)d(but)h(the)h
(trailing)d(su\016x.)150 4162 y Fo(p)432 b Fu(Prin)m(t)29
b(the)i(new)f(command)g(but)g(do)g(not)g(execute)i(it.)150
4321 y Fo(s/)p Fn(old)t Fo(/)p Fn(new)8 b Fo(/)630 4430
y Fu(Substitute)31 b Fn(new)40 b Fu(for)32 b(the)h(\014rst)f(o)s
(ccurrence)h(of)f Fn(old)k Fu(in)31 b(the)i(ev)m(en)m(t)h(line.)46
b(An)m(y)32 b(delimiter)630 4540 y(ma)m(y)25 b(b)s(e)g(used)f(in)f
(place)i(of)g(`)p Fo(/)p Fu('.)39 b(The)24 b(delimiter)e(ma)m(y)k(b)s
(e)e(quoted)h(in)e Fn(old)28 b Fu(and)c Fn(new)32 b Fu(with)24
b(a)630 4649 y(single)j(bac)m(kslash.)39 b(If)28 b(`)p
Fo(&)p Fu(')g(app)s(ears)g(in)e Fn(new)p Fu(,)j(it)e(is)h(replaced)f(b)
m(y)h Fn(old)p Fu(.)39 b(A)28 b(single)f(bac)m(kslash)630
4759 y(will)32 b(quote)j(the)g(`)p Fo(&)p Fu('.)54 b(The)34
b(\014nal)f(delimiter)g(is)g(optional)h(if)g(it)g(is)f(the)i(last)g(c)m
(haracter)h(on)630 4868 y(the)31 b(input)d(line.)150
5027 y Fo(&)432 b Fu(Rep)s(eat)31 b(the)f(previous)f(substitution.)150
5186 y Fo(g)432 b Fu(Cause)38 b(c)m(hanges)i(to)f(b)s(e)f(applied)f(o)m
(v)m(er)j(the)f(en)m(tire)f(ev)m(en)m(t)i(line.)64 b(Used)39
b(in)e(conjunction)630 5295 y(with)29 b(`)p Fo(s)p Fu(',)i(as)f(in)g
Fo(gs/)p Fn(old)t Fo(/)p Fn(new)8 b Fo(/)p Fu(,)27 b(or)j(with)f(`)p
Fo(&)p Fu('.)p eop
%%Page: 173 175
173 174 bop 150 -116 a Fu(App)s(endix)28 b(A:)i(F)-8
b(ormatting)32 b(Do)s(cumen)m(tation)1838 b(173)150 299
y Fp(App)t(endix)53 b(A)81 b(F)-13 b(ormatting)53 b(Do)t(cumen)l
(tation)275 519 y Fu(The)43 b(GDB)i(4)f(release)g(includes)d(an)j
(already-formatted)g(reference)h(card,)i(ready)d(for)f(prin)m(ting)150
629 y(with)30 b(P)m(ostScript)i(or)f(Ghostscript,)h(in)f(the)g(`)p
Fo(gdb)p Fu(')h(sub)s(directory)d(of)j(the)g(main)f(source)h(directory)
3583 596 y Fh(1)3620 629 y Fu(.)44 b(If)150 738 y(y)m(ou)34
b(can)f(use)h(P)m(ostScript)e(or)i(Ghostscript)f(with)f(y)m(our)h(prin)
m(ter,)g(y)m(ou)h(can)g(prin)m(t)e(the)h(reference)h(card)150
848 y(immediately)29 b(with)g(`)p Fo(refcard.ps)p Fu('.)275
980 y(The)38 b(release)h(also)g(includes)e(the)i(source)g(for)g(the)g
(reference)h(card.)66 b(Y)-8 b(ou)40 b(can)f(format)g(it,)i(using)150
1089 y(T)201 1109 y(E)251 1089 y(X,)31 b(b)m(y)f(t)m(yping:)390
1215 y Fo(make)47 b(refcard.dvi)275 1347 y Fu(The)40
b(GDB)i(reference)f(card)g(is)f(designed)g(to)i(prin)m(t)d(in)h
Fn(landscap)s(e)45 b Fu(mo)s(de)40 b(on)h(US)g(\\letter")h(size)150
1457 y(pap)s(er;)34 b(that)f(is,)g(on)g(a)h(sheet)f(11)h(inc)m(hes)f
(wide)f(b)m(y)h(8.5)h(inc)m(hes)e(high.)48 b(Y)-8 b(ou)33
b(will)e(need)h(to)i(sp)s(ecify)e(this)150 1566 y(form)e(of)g(prin)m
(ting)f(as)h(an)h(option)e(to)i(y)m(our)g Ft(d)n(vi)f
Fu(output)g(program.)275 1698 y(All)22 b(the)j(do)s(cumen)m(tation)f
(for)g(GDB)h(comes)g(as)f(part)g(of)g(the)h(mac)m(hine-readable)e
(distribution.)35 b(The)150 1807 y(do)s(cumen)m(tation)e(is)e(written)h
(in)f(T)-8 b(exinfo)33 b(format,)g(whic)m(h)f(is)g(a)h(do)s(cumen)m
(tation)f(system)h(that)g(uses)g(a)150 1917 y(single)f(source)i(\014le)
f(to)i(pro)s(duce)d(b)s(oth)h(on-line)g(information)f(and)h(a)h(prin)m
(ted)f(man)m(ual.)50 b(Y)-8 b(ou)34 b(can)g(use)150 2027
y(one)k(of)f(the)h(Info)f(formatting)g(commands)g(to)h(create)h(the)e
(on-line)f(v)m(ersion)h(of)h(the)f(do)s(cumen)m(tation)150
2136 y(and)30 b(T)378 2156 y(E)428 2136 y(X)g(\(or)h
Fo(texi2roff)p Fu(\))d(to)j(t)m(yp)s(eset)g(the)g(prin)m(ted)e(v)m
(ersion.)275 2268 y(GDB)37 b(includes)c(an)j(already)g(formatted)g(cop)
m(y)h(of)f(the)g(on-line)f(Info)g(v)m(ersion)h(of)g(this)f(man)m(ual)g
(in)150 2378 y(the)f(`)p Fo(gdb)p Fu(')f(sub)s(directory)-8
b(.)49 b(The)33 b(main)g(Info)g(\014le)g(is)g(`)p Fo
(gdb-19990707/gdb/gdb.inf)o(o)p Fu(',)c(and)k(it)g(refers)150
2487 y(to)27 b(sub)s(ordinate)d(\014les)i(matc)m(hing)g(`)p
Fo(gdb.info*)p Fu(')f(in)g(the)h(same)h(directory)-8
b(.)40 b(If)26 b(necessary)-8 b(,)28 b(y)m(ou)f(can)f(prin)m(t)150
2597 y(out)37 b(these)g(\014les,)g(or)g(read)f(them)h(with)e(an)m(y)i
(editor;)i(but)d(they)h(are)g(easier)f(to)i(read)e(using)f(the)i
Fo(info)150 2706 y Fu(subsystem)h(in)f Ft(gnu)i Fu(Emacs)g(or)g(the)g
(standalone)f Fo(info)g Fu(program,)j(a)m(v)-5 b(ailable)38
b(as)h(part)f(of)h(the)g Ft(gnu)150 2816 y Fu(T)-8 b(exinfo)30
b(distribution.)275 2948 y(If)43 b(y)m(ou)g(w)m(an)m(t)i(to)f(format)g
(these)g(Info)f(\014les)f(y)m(ourself,)47 b(y)m(ou)d(need)f(one)h(of)f
(the)h(Info)f(formatting)150 3057 y(programs,)30 b(suc)m(h)g(as)h
Fo(texinfo-format-buffer)24 b Fu(or)31 b Fo(makeinfo)p
Fu(.)275 3189 y(If)19 b(y)m(ou)i(ha)m(v)m(e)g Fo(makeinfo)d
Fu(installed,)j(and)e(are)i(in)e(the)i(top)f(lev)m(el)g(GDB)h(source)g
(directory)f(\(`)p Fo(gdb-19990707)p Fu(',)150 3299 y(in)29
b(the)i(case)g(of)g(v)m(ersion)e(19990707\),)35 b(y)m(ou)c(can)f(mak)m
(e)i(the)e(Info)g(\014le)g(b)m(y)g(t)m(yping:)390 3424
y Fo(cd)47 b(gdb)390 3528 y(make)g(gdb.info)275 3660
y Fu(If)24 b(y)m(ou)i(w)m(an)m(t)g(to)g(t)m(yp)s(eset)g(and)e(prin)m(t)
g(copies)h(of)g(this)f(man)m(ual,)i(y)m(ou)g(need)e(T)2851
3680 y(E)2901 3660 y(X,)i(a)f(program)g(to)h(prin)m(t)150
3770 y(its)k Ft(d)n(vi)g Fu(output)g(\014les,)g(and)f(`)p
Fo(texinfo.tex)p Fu(',)f(the)j(T)-8 b(exinfo)30 b(de\014nitions)e
(\014le.)275 3901 y(T)326 3921 y(E)376 3901 y(X)k(is)g(a)h(t)m(yp)s
(esetting)g(program;)h(it)e(do)s(es)h(not)g(prin)m(t)e(\014les)h
(directly)-8 b(,)32 b(but)g(pro)s(duces)g(output)g(\014les)150
4011 y(called)26 b Ft(d)n(vi)h Fu(\014les.)39 b(T)-8
b(o)27 b(prin)m(t)f(a)h(t)m(yp)s(eset)h(do)s(cumen)m(t,)g(y)m(ou)f
(need)g(a)g(program)g(to)g(prin)m(t)f Ft(d)n(vi)h Fu(\014les.)38
b(If)27 b(y)m(our)150 4120 y(system)j(has)g(T)664 4140
y(E)714 4120 y(X)g(installed,)e(c)m(hances)j(are)f(it)f(has)h(suc)m(h)g
(a)g(program.)40 b(The)30 b(precise)f(command)h(to)g(use)150
4230 y(dep)s(ends)25 b(on)i(y)m(our)f(system;)j Fl(lpr)g(-d)d
Fu(is)g(common;)j(another)d(\(for)h(P)m(ostScript)g(devices\))g(is)e
Fl(dvips)p Fu(.)38 b(The)150 4340 y Ft(d)n(vi)30 b Fu(prin)m(t)f
(command)h(ma)m(y)h(require)e(a)i(\014le)f(name)g(without)f(an)m(y)i
(extension)f(or)h(a)f(`)p Fo(.dvi)p Fu(')g(extension.)275
4471 y(T)326 4491 y(E)376 4471 y(X)h(also)g(requires)f(a)h(macro)h
(de\014nitions)d(\014le)h(called)h(`)p Fo(texinfo.tex)p
Fu('.)41 b(This)29 b(\014le)h(tells)h(T)3442 4491 y(E)3492
4471 y(X)g(ho)m(w)150 4581 y(to)42 b(t)m(yp)s(eset)g(a)g(do)s(cumen)m
(t)f(written)f(in)g(T)-8 b(exinfo)40 b(format.)74 b(On)40
b(its)h(o)m(wn,)j(T)2841 4601 y(E)2891 4581 y(X)e(cannot)f(either)g
(read)150 4691 y(or)g(t)m(yp)s(eset)h(a)f(T)-8 b(exinfo)40
b(\014le.)71 b(`)p Fo(texinfo.tex)p Fu(')39 b(is)g(distributed)f(with)i
(GDB)i(and)e(is)g(lo)s(cated)h(in)f(the)150 4800 y(`)p
Fo(gdb-)p Fn(v)m(ersion-n)m(um)m(b)s(er)7 b Fo(/texinfo)p
Fu(')26 b(directory)-8 b(.)275 4932 y(If)38 b(y)m(ou)h(ha)m(v)m(e)g(T)
822 4951 y(E)872 4932 y(X)g(and)f(a)h Ft(d)n(vi)f Fu(prin)m(ter)g
(program)g(installed,)h(y)m(ou)g(can)f(t)m(yp)s(eset)i(and)e(prin)m(t)f
(this)150 5041 y(man)m(ual.)g(First)22 b(switc)m(h)f(to)i(the)f(the)g
(`)p Fo(gdb)p Fu(')g(sub)s(directory)e(of)i(the)g(main)f(source)h
(directory)g(\(for)g(example,)150 5151 y(to)31 b(`)p
Fo(gdb-19990707/gdb)p Fu('\))c(and)j(t)m(yp)s(e:)p 150
5241 1200 4 v 192 5307 a Fh(1)275 5340 y Fu(In)f(`)p
Fo(gdb-19990707/gdb/refcard.p)o(s)p Fu(')c(of)30 b(the)h(v)m(ersion)f
(19990707)j(release.)p eop
%%Page: 174 176
174 175 bop 150 -116 a Fu(174)2599 b(Debugging)31 b(with)e(GDB)390
299 y Fo(make)47 b(gdb.dvi)275 433 y Fu(Then)29 b(giv)m(e)i(`)p
Fo(gdb.dvi)p Fu(')e(to)i(y)m(our)f Ft(d)n(vi)g Fu(prin)m(ting)f
(program.)p eop
%%Page: 175 177
175 176 bop 150 -116 a Fu(App)s(endix)28 b(B:)j(Installing)d(GDB)2321
b(175)150 299 y Fp(App)t(endix)53 b(B)81 b(Installing)55
b(GDB)275 537 y Fu(GDB)32 b(comes)f(with)f(a)h Fo(configure)e
Fu(script)h(that)h(automates)i(the)e(pro)s(cess)g(of)g(preparing)e(GDB)
j(for)150 647 y(installation;)d(y)m(ou)h(can)h(then)f(use)g
Fo(make)f Fu(to)i(build)d(the)i Fo(gdb)g Fu(program.)2607
614 y Fh(1)275 783 y Fu(The)21 b(GDB)i(distribution)18
b(includes)h(all)h(the)i(source)g(co)s(de)g(y)m(ou)g(need)g(for)f(GDB)i
(in)d(a)i(single)f(directory)-8 b(,)150 892 y(whose)30
b(name)h(is)e(usually)f(comp)s(osed)i(b)m(y)h(app)s(ending)c(the)k(v)m
(ersion)f(n)m(um)m(b)s(er)f(to)i(`)p Fo(gdb)p Fu('.)275
1028 y(F)-8 b(or)27 b(example,)g(the)g(GDB)g(v)m(ersion)f(19990707)31
b(distribution)22 b(is)k(in)f(the)i(`)p Fo(gdb-19990707)p
Fu(')d(directory)-8 b(.)150 1138 y(That)30 b(directory)g(con)m(tains:)
150 1300 y Fo(gdb-19990707/configure)24 b Fu(\(and)30
b(supp)s(orting)e(\014les\))630 1409 y(script)h(for)h(con\014guring)f
(GDB)j(and)e(all)f(its)h(supp)s(orting)d(libraries)150
1570 y Fo(gdb-19990707/gdb)630 1680 y Fu(the)k(source)f(sp)s(eci\014c)f
(to)i(GDB)h(itself)150 1840 y Fo(gdb-19990707/bfd)630
1950 y Fu(source)f(for)f(the)g(Binary)g(File)f(Descriptor)h(library)150
2111 y Fo(gdb-19990707/include)630 2220 y Ft(gnu)g Fu(include)e
(\014les)150 2381 y Fo(gdb-19990707/libiberty)630 2491
y Fu(source)j(for)f(the)g(`)p Fo(-liberty)p Fu(')f(free)h(soft)m(w)m
(are)i(library)150 2652 y Fo(gdb-19990707/opcodes)630
2761 y Fu(source)f(for)f(the)g(library)e(of)j(op)s(co)s(de)f(tables)g
(and)g(disassem)m(blers)150 2922 y Fo(gdb-19990707/readline)630
3032 y Fu(source)h(for)f(the)g Ft(gnu)g Fu(command-line)f(in)m(terface)
150 3193 y Fo(gdb-19990707/glob)630 3302 y Fu(source)i(for)f(the)g
Ft(gnu)g Fu(\014lename)g(pattern-matc)m(hing)h(subroutine)150
3463 y Fo(gdb-19990707/mmalloc)630 3573 y Fu(source)g(for)f(the)g
Ft(gnu)g Fu(memory-mapp)s(ed)g(mallo)s(c)f(pac)m(k)-5
b(age)275 3734 y(The)21 b(simplest)f(w)m(a)m(y)i(to)h(con\014gure)e
(and)h(build)c(GDB)23 b(is)e(to)h(run)f Fo(configure)e
Fu(from)i(the)h(`)p Fo(gdb-)p Fn(v)m(ersion-)150 3844
y(n)m(um)m(b)s(er)7 b Fu(')29 b(source)h(directory)-8
b(,)31 b(whic)m(h)e(in)g(this)g(example)h(is)g(the)g(`)p
Fo(gdb-19990707)p Fu(')e(directory)-8 b(.)275 3980 y(First)35
b(switc)m(h)g(to)h(the)g(`)p Fo(gdb-)p Fn(v)m(ersion-n)m(um)m(b)s(er)7
b Fu(')34 b(source)i(directory)f(if)g(y)m(ou)h(are)g(not)g(already)g
(in)e(it;)150 4089 y(then)39 b(run)f Fo(configure)p Fu(.)64
b(P)m(ass)40 b(the)g(iden)m(ti\014er)d(for)i(the)g(platform)g(on)g
(whic)m(h)f(GDB)i(will)d(run)h(as)h(an)150 4199 y(argumen)m(t.)275
4335 y(F)-8 b(or)31 b(example:)390 4465 y Fo(cd)47 b(gdb-19990707)390
4569 y(./configure)e Fn(host)390 4672 y Fo(make)150 4808
y Fu(where)24 b Fn(host)i Fu(is)d(an)i(iden)m(ti\014er)d(suc)m(h)i(as)h
(`)p Fo(sun4)p Fu(')e(or)i(`)p Fo(decstation)p Fu(',)e(that)i(iden)m
(ti\014es)e(the)h(platform)f(where)150 4918 y(GDB)31
b(will)c(run.)39 b(\(Y)-8 b(ou)31 b(can)f(often)g(lea)m(v)m(e)h(o\013)f
Fn(host)r Fu(;)g Fo(configure)e Fu(tries)h(to)h(guess)g(the)g(correct)h
(v)-5 b(alue)29 b(b)m(y)150 5028 y(examining)g(y)m(our)h(system.\))p
150 5131 1200 4 v 192 5197 a Fh(1)275 5230 y Fu(If)c(y)m(ou)h(ha)m(v)m
(e)h(a)f(more)g(recen)m(t)h(v)m(ersion)e(of)h(GDB)h(than)f(19990707,)k
(lo)s(ok)26 b(at)i(the)f(`)p Fo(README)p Fu(')e(\014le)h(in)g(the)275
5340 y(sources;)h(w)m(e)g(ma)m(y)f(ha)m(v)m(e)i(impro)m(v)m(ed)d(the)h
(installation)e(pro)s(cedures)h(since)g(publishing)c(this)k(man)m(ual.)
p eop
%%Page: 176 178
176 177 bop 150 -116 a Fu(176)2599 b(Debugging)31 b(with)e(GDB)275
299 y(Running)17 b(`)p Fo(configure)28 b Fn(host)r Fu(')21
b(and)f(then)g(running)d Fo(make)i Fu(builds)e(the)k(`)p
Fo(bfd)p Fu(',)h(`)p Fo(readline)p Fu(',)f(`)p Fo(mmalloc)p
Fu(',)150 408 y(and)27 b(`)p Fo(libiberty)p Fu(')f(libraries,)g(then)h
Fo(gdb)g Fu(itself.)39 b(The)27 b(con\014gured)g(source)h(\014les,)g
(and)f(the)h(binaries,)f(are)150 518 y(left)j(in)f(the)i(corresp)s
(onding)d(source)j(directories.)275 646 y Fo(configure)36
b Fu(is)i(a)i(Bourne-shell)e(\()p Fo(/bin/sh)p Fu(\))f(script;)43
b(if)38 b(y)m(our)h(system)h(do)s(es)f(not)g(recognize)h(this)150
756 y(automatically)30 b(when)g(y)m(ou)g(run)f(a)i(di\013eren)m(t)f
(shell,)f(y)m(ou)h(ma)m(y)h(need)f(to)i(run)d Fo(sh)g
Fu(on)i(it)e(explicitly:)390 893 y Fo(sh)47 b(configure)e
Fn(host)275 1035 y Fu(If)f(y)m(ou)h(run)e Fo(configure)f
Fu(from)i(a)h(directory)f(that)i(con)m(tains)e(source)h(directories)f
(for)g(m)m(ultiple)150 1145 y(libraries)35 b(or)j(programs,)i(suc)m(h)d
(as)h(the)g(`)p Fo(gdb-19990707)p Fu(')e(source)i(directory)f(for)h(v)m
(ersion)f(19990707,)150 1254 y Fo(configure)32 b Fu(creates)k
(con\014guration)e(\014les)g(for)h(ev)m(ery)g(directory)f(lev)m(el)h
(underneath)e(\(unless)h(y)m(ou)h(tell)150 1364 y(it)30
b(not)h(to,)g(with)e(the)i(`)p Fo(--norecursion)p Fu(')c(option\).)275
1507 y(Y)-8 b(ou)33 b(can)g(run)e(the)i Fo(configure)d
Fu(script)h(from)i(an)m(y)g(of)g(the)f(sub)s(ordinate)f(directories)h
(in)f(the)i(GDB)150 1616 y(distribution)c(if)i(y)m(ou)i(only)f(w)m(an)m
(t)h(to)h(con\014gure)e(that)h(sub)s(directory)-8 b(,)32
b(but)g(b)s(e)g(sure)g(to)h(sp)s(ecify)e(a)i(path)150
1726 y(to)e(it.)275 1868 y(F)-8 b(or)29 b(example,)g(with)e(v)m(ersion)
h(19990707,)k(t)m(yp)s(e)d(the)f(follo)m(wing)f(to)j(con\014gure)e
(only)f(the)i Fo(bfd)f Fu(sub)s(di-)150 1978 y(rectory:)390
2115 y Fo(cd)47 b(gdb-19990707/bfd)390 2219 y(../configure)d
Fn(host)275 2354 y Fu(Y)-8 b(ou)36 b(can)h(install)d
Fo(gdb)i Fu(an)m(ywhere;)j(it)d(has)g(no)h(hardwired)c(paths.)59
b(Ho)m(w)m(ev)m(er,)40 b(y)m(ou)d(should)d(mak)m(e)150
2464 y(sure)g(that)i(the)f(shell)e(on)i(y)m(our)g(path)f(\(named)h(b)m
(y)g(the)g(`)p Fo(SHELL)p Fu(')f(en)m(vironmen)m(t)g(v)-5
b(ariable\))34 b(is)g(publicly)150 2573 y(readable.)40
b(Remem)m(b)s(er)30 b(that)h(GDB)g(uses)f(the)g(shell)f(to)i(start)g(y)
m(our)f(program|some)g(systems)g(refuse)150 2683 y(to)h(let)f(GDB)i
(debug)e(c)m(hild)e(pro)s(cesses)i(whose)h(programs)f(are)g(not)h
(readable.)150 2961 y Fs(B.1)67 b(Compiling)47 b(GDB)d(in)h(another)g
(directory)275 3162 y Fu(If)24 b(y)m(ou)h(w)m(an)m(t)h(to)f(run)f(GDB)i
(v)m(ersions)e(for)g(sev)m(eral)i(host)f(or)f(target)j(mac)m(hines,)e
(y)m(ou)h(need)e(a)h(di\013eren)m(t)150 3271 y Fo(gdb)j
Fu(compiled)g(for)h(eac)m(h)h(com)m(bination)f(of)g(host)g(and)g
(target.)42 b Fo(configure)27 b Fu(is)h(designed)g(to)i(mak)m(e)g(this)
150 3381 y(easy)f(b)m(y)f(allo)m(wing)g(y)m(ou)g(to)i(generate)g(eac)m
(h)f(con\014guration)f(in)f(a)i(separate)g(sub)s(directory)-8
b(,)28 b(rather)g(than)150 3490 y(in)e(the)h(source)h(directory)-8
b(.)39 b(If)27 b(y)m(our)g Fo(make)f Fu(program)h(handles)f(the)h(`)p
Fo(VPATH)p Fu(')g(feature)g(\()p Ft(gnu)h Fo(make)e Fu(do)s(es\),)150
3600 y(running)i Fo(make)h Fu(in)g(eac)m(h)i(of)g(these)g(directories)e
(builds)e(the)k Fo(gdb)e Fu(program)i(sp)s(eci\014ed)d(there.)275
3743 y(T)-8 b(o)43 b(build)e Fo(gdb)h Fu(in)h(a)g(separate)i(directory)
-8 b(,)47 b(run)42 b Fo(configure)f Fu(with)h(the)i(`)p
Fo(--srcdir)p Fu(')d(option)i(to)150 3852 y(sp)s(ecify)30
b(where)g(to)i(\014nd)e(the)h(source.)43 b(\(Y)-8 b(ou)32
b(also)f(need)g(to)h(sp)s(ecify)e(a)h(path)g(to)h(\014nd)e
Fo(configure)e Fu(itself)150 3962 y(from)g(y)m(our)g(w)m(orking)g
(directory)-8 b(.)40 b(If)28 b(the)g(path)g(to)h Fo(configure)d
Fu(w)m(ould)h(b)s(e)h(the)h(same)f(as)h(the)f(argumen)m(t)150
4071 y(to)j(`)p Fo(--srcdir)p Fu(',)e(y)m(ou)i(can)f(lea)m(v)m(e)i(out)
f(the)f(`)p Fo(--srcdir)p Fu(')f(option;)h(it)g(is)f(assumed.\))275
4214 y(F)-8 b(or)36 b(example,)h(with)d(v)m(ersion)h(19990707,)41
b(y)m(ou)36 b(can)g(build)d(GDB)k(in)d(a)i(separate)h(directory)e(for)h
(a)150 4324 y(Sun)29 b(4)i(lik)m(e)e(this:)390 4460 y
Fo(cd)47 b(gdb-19990707)390 4564 y(mkdir)f(../gdb-sun4)390
4668 y(cd)h(../gdb-sun4)390 4772 y(../gdb-19990707/configur)o(e)42
b(sun4)390 4876 y(make)275 5011 y Fu(When)d Fo(configure)e
Fu(builds)g(a)j(con\014guration)f(using)g(a)h(remote)h(source)f
(directory)-8 b(,)42 b(it)d(creates)j(a)150 5121 y(tree)30
b(for)e(the)h(binaries)e(with)g(the)j(same)f(structure)f(\(and)h(using)
e(the)i(same)h(names\))f(as)g(the)g(tree)g(under)150
5230 y(the)38 b(source)g(directory)-8 b(.)63 b(In)37
b(the)h(example,)i(y)m(ou'd)e(\014nd)e(the)i(Sun)e(4)j(library)c(`)p
Fo(libiberty.a)p Fu(')g(in)i(the)150 5340 y(directory)30
b(`)p Fo(gdb-sun4/libiberty)p Fu(',)c(and)k(GDB)h(itself)e(in)h(`)p
Fo(gdb-sun4/gdb)p Fu('.)p eop
%%Page: 177 179
177 178 bop 150 -116 a Fu(App)s(endix)28 b(B:)j(Installing)d(GDB)2321
b(177)275 299 y(One)40 b(p)s(opular)e(reason)j(to)g(build)c(sev)m(eral)
k(GDB)h(con\014gurations)d(in)h(separate)h(directories)f(is)f(to)150
408 y(con\014gure)28 b(GDB)i(for)e(cross-compiling)f(\(where)h(GDB)i
(runs)d(on)h(one)h(mac)m(hine|the)f Fn(host)p Fu(|while)f(de-)150
518 y(bugging)22 b(programs)h(that)h(run)e(on)i(another)f(mac)m
(hine|the)h Fn(target)r Fu(\).)40 b(Y)-8 b(ou)24 b(sp)s(ecify)e(a)h
(cross-debugging)150 628 y(target)32 b(b)m(y)e(giving)f(the)i(`)p
Fo(--target=)p Fn(target)r Fu(')f(option)g(to)h Fo(configure)p
Fu(.)275 760 y(When)42 b(y)m(ou)h(run)e Fo(make)g Fu(to)i(build)c(a)k
(program)f(or)h(library)-8 b(,)44 b(y)m(ou)e(m)m(ust)h(run)e(it)h(in)f
(a)i(con\014gured)150 869 y(directory|whatev)m(er)29
b(directory)e(y)m(ou)i(w)m(ere)g(in)e(when)g(y)m(ou)i(called)e
Fo(configure)f Fu(\(or)j(one)f(of)h(its)f(sub)s(di-)150
979 y(rectories\).)275 1111 y(The)j Fo(Makefile)f Fu(that)j
Fo(configure)c Fu(generates)k(in)e(eac)m(h)i(source)g(directory)e(also)
h(runs)f(recursiv)m(ely)-8 b(.)150 1221 y(If)39 b(y)m(ou)i(t)m(yp)s(e)f
Fo(make)f Fu(in)f(a)j(source)f(directory)f(suc)m(h)h(as)g(`)p
Fo(gdb-19990707)p Fu(')d(\(or)j(in)f(a)h(separate)h(con\014g-)150
1330 y(ured)30 b(directory)i(con\014gured)e(with)h(`)p
Fo(--srcdir=)p Fn(dirname)5 b Fo(/gdb-19990)o(707)o Fu('\),)27
b(y)m(ou)32 b(will)d(build)f(all)j(the)150 1440 y(required)e
(libraries,)e(and)j(then)g(build)d(GDB.)275 1572 y(When)h(y)m(ou)h(ha)m
(v)m(e)h(m)m(ultiple)c(hosts)j(or)g(targets)h(con\014gured)e(in)f
(separate)j(directories,)e(y)m(ou)h(can)g(run)150 1682
y Fo(make)d Fu(on)h(them)g(in)f(parallel)g(\(for)h(example,)h(if)e
(they)h(are)h(NFS-moun)m(ted)g(on)f(eac)m(h)h(of)f(the)h(hosts\);)h
(they)150 1791 y(will)f(not)i(in)m(terfere)g(with)f(eac)m(h)j(other.)
150 2042 y Fs(B.2)67 b(Sp)t(ecifying)45 b(names)h(for)f(hosts)g(and)g
(targets)275 2232 y Fu(The)38 b(sp)s(eci\014cations)g(used)g(for)h
(hosts)g(and)f(targets)j(in)d(the)h Fo(configure)d Fu(script)i(are)i
(based)f(on)g(a)150 2341 y(three-part)34 b(naming)f(sc)m(heme,)i(but)e
(some)h(short)g(prede\014ned)d(aliases)j(are)g(also)f(supp)s(orted.)49
b(The)33 b(full)150 2451 y(naming)c(sc)m(heme)i(enco)s(des)g(three)f
(pieces)g(of)h(information)e(in)g(the)h(follo)m(wing)f(pattern:)390
2577 y Fn(arc)m(hitecture)p Fo(-)p Fn(v)m(endor)p Fo(-)p
Fn(os)275 2710 y Fu(F)-8 b(or)33 b(example,)g(y)m(ou)g(can)g(use)f(the)
h(alias)f Fo(sun4)g Fu(as)h(a)g Fn(host)h Fu(argumen)m(t,)g(or)f(as)g
(the)g(v)-5 b(alue)32 b(for)g Fn(target)150 2819 y Fu(in)d(a)i
Fo(--target=)p Fn(target)g Fu(option.)40 b(The)30 b(equiv)-5
b(alen)m(t)30 b(full)e(name)j(is)e(`)p Fo(sparc-sun-sunos4)p
Fu('.)275 2951 y(The)38 b Fo(configure)e Fu(script)i(accompan)m(ying)h
(GDB)h(do)s(es)f(not)g(pro)m(vide)e(an)m(y)j(query)e(facilit)m(y)g(to)h
(list)150 3061 y(all)f(supp)s(orted)f(host)i(and)f(target)j(names)e(or)
g(aliases.)65 b Fo(configure)37 b Fu(calls)h(the)h(Bourne)g(shell)e
(script)150 3171 y Fo(config.sub)d Fu(to)j(map)f(abbreviations)f(to)i
(full)d(names;)40 b(y)m(ou)d(can)f(read)h(the)f(script,)h(if)f(y)m(ou)h
(wish,)f(or)150 3280 y(y)m(ou)31 b(can)f(use)g(it)g(to)h(test)h(y)m
(our)e(guesses)h(on)f(abbreviations|for)f(example:)390
3406 y Fo(\045)47 b(sh)h(config.sub)d(i386-linux)390
3510 y(i386-pc-linux-gnu)390 3614 y(\045)i(sh)h(config.sub)d
(alpha-linux)390 3718 y(alpha-unknown-linux-gnu)390 3822
y(\045)i(sh)h(config.sub)d(hp9k700)390 3925 y(hppa1.1-hp-hpux)390
4029 y(\045)i(sh)h(config.sub)d(sun4)390 4133 y(sparc-sun-sunos4.1.1)
390 4237 y(\045)i(sh)h(config.sub)d(sun3)390 4340 y
(m68k-sun-sunos4.1.1)390 4444 y(\045)i(sh)h(config.sub)d(i986v)390
4548 y(Invalid)h(configuration)e(`i986v':)i(machine)f(`i986v')h(not)h
(recognized)150 4680 y(config.sub)33 b Fu(is)h(also)i(distributed)c(in)
j(the)g(GDB)i(source)f(directory)f(\(`)p Fo(gdb-19990707)p
Fu(',)f(for)h(v)m(ersion)150 4790 y(19990707\).)150 5040
y Fs(B.3)67 b Fd(configure)41 b Fs(options)275 5230 y
Fu(Here)31 b(is)f(a)h(summary)f(of)h(the)g Fo(configure)d
Fu(options)i(and)g(argumen)m(ts)i(that)f(are)g(most)g(often)h(useful)
150 5340 y(for)e(building)d(GDB.)k Fo(configure)d Fu(also)j(has)f(sev)m
(eral)g(other)h(options)f(not)g(listed)f(here.)p eop
%%Page: 178 180
178 179 bop 150 -116 a Fu(178)2599 b(Debugging)31 b(with)e(GDB)390
299 y Fo(configure)45 b Fu([)p Fo(--help)p Fu(])867 403
y([)p Fo(--prefix=)p Fn(dir)7 b Fu(])867 506 y([)p Fo(--exec-prefix=)p
Fn(dir)g Fu(])867 610 y([)p Fo(--srcdir=)p Fn(dirname)e
Fu(])867 714 y([)p Fo(--norecursion)p Fu(])45 b([)p Fo(--rm)p
Fu(])867 818 y([)p Fo(--target=)p Fn(target)r Fu(])867
922 y Fn(host)150 1056 y Fu(Y)-8 b(ou)38 b(ma)m(y)h(in)m(tro)s(duce)d
(options)h(with)g(a)h(single)e(`)p Fo(-)p Fu(')i(rather)g(than)f(`)p
Fo(--)p Fu(')h(if)e(y)m(ou)i(prefer;)j(but)c(y)m(ou)h(ma)m(y)150
1166 y(abbreviate)30 b(option)g(names)g(if)g(y)m(ou)g(use)g(`)p
Fo(--)p Fu('.)150 1325 y Fo(--help)192 b Fu(Displa)m(y)30
b(a)g(quic)m(k)g(summary)f(of)i(ho)m(w)f(to)h(in)m(v)m(ok)m(e)h
Fo(configure)p Fu(.)150 1484 y Fo(--prefix=)p Fn(dir)630
1594 y Fu(Con\014gure)d(the)i(source)f(to)i(install)c(programs)i(and)g
(\014les)f(under)g(directory)h(`)p Fn(dir)7 b Fu('.)150
1753 y Fo(--exec-prefix=)p Fn(dir)630 1863 y Fu(Con\014gure)29
b(the)i(source)f(to)i(install)c(programs)i(under)f(directory)h(`)p
Fn(dir)7 b Fu('.)150 2003 y Fo(--srcdir=)p Fn(dirname)630
2112 y Fm(W)-8 b(arning:)57 b(using)37 b(this)i(option)g(requires)f
Ft(gnu)g Fo(make)p Fm(,)h(or)g(another)g Fo(make)e Fm(that)i(imple-)630
2222 y(men)m(ts)31 b(the)g Fo(VPATH)d Fm(feature.)630
2332 y Fu(Use)37 b(this)e(option)h(to)i(mak)m(e)f(con\014gurations)f
(in)f(directories)h(separate)h(from)f(the)h(GDB)630 2441
y(source)27 b(directories.)39 b(Among)28 b(other)f(things,)g(y)m(ou)h
(can)f(use)g(this)f(to)i(build)c(\(or)k(main)m(tain\))630
2551 y(sev)m(eral)c(con\014gurations)g(sim)m(ultaneously)-8
b(,)23 b(in)g(separate)i(directories.)37 b Fo(configure)22
b Fu(writes)630 2660 y(con\014guration)j(sp)s(eci\014c)g(\014les)g(in)f
(the)i(curren)m(t)g(directory)-8 b(,)27 b(but)e(arranges)h(for)g(them)g
(to)g(use)630 2770 y(the)35 b(source)h(in)e(the)h(directory)g
Fn(dirname)p Fu(.)53 b Fo(configure)33 b Fu(creates)k(directories)d
(under)g(the)630 2879 y(w)m(orking)c(directory)g(in)f(parallel)f(to)j
(the)g(source)f(directories)g(b)s(elo)m(w)f Fn(dirname)p
Fu(.)150 3039 y Fo(--norecursion)630 3148 y Fu(Con\014gure)g(only)g
(the)h(directory)f(lev)m(el)h(where)f Fo(configure)e
Fu(is)i(executed;)i(do)f(not)g(propa-)630 3258 y(gate)i
(con\014guration)e(to)h(sub)s(directories.)150 3417 y
Fo(--target=)p Fn(target)630 3527 y Fu(Con\014gure)h(GDB)i(for)e
(cross-debugging)h(programs)f(running)e(on)j(the)g(sp)s(eci\014ed)e
Fn(target)p Fu(.)630 3637 y(Without)39 b(this)f(option,)j(GDB)f(is)e
(con\014gured)h(to)g(debug)g(programs)f(that)i(run)e(on)h(the)630
3746 y(same)31 b(mac)m(hine)f(\()p Fn(host)r Fu(\))h(as)g(GDB)g
(itself.)630 3881 y(There)f(is)f(no)i(con)m(v)m(enien)m(t)g(w)m(a)m(y)g
(to)h(generate)f(a)g(list)e(of)i(all)e(a)m(v)-5 b(ailable)30
b(targets.)150 4040 y Fn(host)i Fo(...)137 b Fu(Con\014gure)29
b(GDB)j(to)f(run)e(on)h(the)h(sp)s(eci\014ed)d Fn(host)p
Fu(.)630 4175 y(There)i(is)f(no)i(con)m(v)m(enien)m(t)g(w)m(a)m(y)g(to)
h(generate)f(a)g(list)e(of)i(all)e(a)m(v)-5 b(ailable)30
b(hosts.)275 4334 y(There)25 b(are)i(man)m(y)g(other)f(options)g(a)m(v)
-5 b(ailable)26 b(as)g(w)m(ell,)h(but)e(they)i(are)g(generally)e
(needed)h(for)g(sp)s(ecial)150 4444 y(purp)s(oses)j(only)-8
b(.)p eop
%%Page: 179 181
179 180 bop 150 -116 a Fu(Index)3241 b(179)150 299 y
Fp(Index)275 658 y Fc(\(Index)24 b(is)i(nonexisten)n(t\))p
eop
%%Page: 180 182
180 181 bop 150 -116 a Fu(180)2599 b(Debugging)31 b(with)e(GDB)1286
1791 y(The)h(b)s(o)s(dy)f(of)i(this)e(man)m(ual)h(is)f(set)i(in)1599
1900 y(cmr10)g(at)g(10.95pt,)1262 2010 y(with)e(headings)g(in)g
Fm(cm)m(b10)j(at)f(10.95pt)1194 2119 y Fu(and)f(examples)g(in)f
Fo(cmtt10)46 b(at)h(10.95pt)p Fu(.)1583 2229 y Fr(cmti10)34
b(at)f(10.95pt)9 b Fu(,)1505 2339 y Fm(cm)m(b10)31 b(at)g(10.95pt)p
Fu(,)i(and)1598 2448 y Fn(cmsl10)d(at)h(10.95pt)1508
2558 y Fu(are)g(used)f(for)g(emphasis.)p eop
%%Page: -1 183
-1 182 bop 3725 -116 a Fu(i)150 299 y Fp(T)-13 b(able)54
b(of)g(Con)l(ten)l(ts)150 641 y Fs(Summary)45 b(of)g(GDB)15
b Fb(.)k(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)
h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)60 b
Fs(1)449 778 y Fu(F)-8 b(ree)31 b(soft)m(w)m(are)c Fr(.)15
b(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b
Fu(1)449 888 y(Con)m(tributors)29 b(to)i(GDB)11 b Fr(.)16
b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)41 b Fu(1)150 1130 y Fs(1)135 b(A)44
b(Sample)i(GDB)e(Session)35 b Fb(.)20 b(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f
(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)79 b Fs(5)150
1400 y(2)135 b(Getting)46 b(In)e(and)h(Out)g(of)g(GDB)26
b Fb(.)19 b(.)g(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)
70 b Fs(9)449 1537 y Fu(2.1)92 b(In)m(v)m(oking)30 b(GDB)d
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fu(9)748 1646 y(2.1.1)93
b(Cho)s(osing)29 b(\014les)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)h(.)f(.)g(.)g(.)54 b Fu(10)748 1756 y(2.1.2)93
b(Cho)s(osing)29 b(mo)s(des)19 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)48 b Fu(11)449 1866 y(2.2)92 b(Quitting)29
b(GDB)d Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fu(12)449 1975
y(2.3)92 b(Shell)28 b(commands)13 b Fr(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42
b Fu(12)150 2218 y Fs(3)135 b(GDB)44 b(Commands)37 b
Fb(.)19 b(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h
(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)81 b Fs(13)449 2355
y Fu(3.1)92 b(Command)29 b(syn)m(tax)f Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)56
b Fu(13)449 2464 y(3.2)92 b(Command)29 b(completion)d
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)
55 b Fu(13)449 2574 y(3.3)92 b(Getting)31 b(help)19 b
Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)
f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Fu(15)150 2816
y Fs(4)135 b(Running)44 b(Programs)i(Under)f(GDB)36 b
Fb(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)82 b
Fs(19)449 2953 y Fu(4.1)92 b(Compiling)27 b(for)j(debugging)15
b Fr(.)f(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44
b Fu(19)449 3063 y(4.2)92 b(Starting)30 b(y)m(our)g(program)15
b Fr(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45
b Fu(19)449 3172 y(4.3)92 b(Y)-8 b(our)30 b(program's)h(argumen)m(ts)19
b Fr(.)c(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48
b Fu(20)449 3282 y(4.4)92 b(Y)-8 b(our)30 b(program's)h(en)m(vironmen)m
(t)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51
b Fu(21)449 3391 y(4.5)92 b(Y)-8 b(our)30 b(program's)h(w)m(orking)e
(directory)d Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fu(22)449
3501 y(4.6)92 b(Y)-8 b(our)30 b(program's)h(input)d(and)i(output)11
b Fr(.)j(.)h(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Fu(22)449 3611 y(4.7)92
b(Debugging)30 b(an)g(already-running)e(pro)s(cess)23
b Fr(.)14 b(.)i(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)52 b Fu(23)449 3720 y(4.8)92 b(Killing)27
b(the)j(c)m(hild)f(pro)s(cess)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)h(.)f(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)55 b Fu(23)449 3830 y(4.9)92
b(Additional)28 b(pro)s(cess)i(information)19 b Fr(.)14
b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fu(24)449 3939 y(4.10)92
b(Debugging)31 b(programs)f(with)f(m)m(ultiple)f(threads)15
b Fr(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45
b Fu(24)449 4049 y(4.11)92 b(Debugging)31 b(programs)f(with)f(m)m
(ultiple)f(pro)s(cesses)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)53 b Fu(26)150 4291 y Fs(5)135 b(Stopping)45 b(and)f(Con)l(tin)l
(uing)19 b Fb(.)i(.)e(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f
(.)h(.)f(.)g(.)64 b Fs(27)449 4428 y Fu(5.1)92 b(Breakp)s(oin)m(ts,)30
b(w)m(atc)m(hp)s(oin)m(ts,)h(and)f(catc)m(hp)s(oin)m(ts)c
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55
b Fu(27)748 4538 y(5.1.1)93 b(Setting)30 b(breakp)s(oin)m(ts)19
b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)48 b Fu(28)748
4648 y(5.1.2)93 b(Setting)30 b(w)m(atc)m(hp)s(oin)m(ts)13
b Fr(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42 b Fu(31)748
4757 y(5.1.3)93 b(Setting)30 b(catc)m(hp)s(oin)m(ts)25
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54 b Fu(32)748
4867 y(5.1.4)93 b(Deleting)30 b(breakp)s(oin)m(ts)16
b Fr(.)e(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)45 b Fu(33)748
4976 y(5.1.5)93 b(Disabling)28 b(breakp)s(oin)m(ts)17
b Fr(.)d(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)46 b Fu(34)748 5086
y(5.1.6)93 b(Break)31 b(conditions)8 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)38 b Fu(35)748 5196 y(5.1.7)93
b(Breakp)s(oin)m(t)30 b(command)g(lists)15 b Fr(.)e(.)i(.)g(.)g(.)g(.)g
(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44
b Fu(36)748 5305 y(5.1.8)93 b(Breakp)s(oin)m(t)30 b(men)m(us)24
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54
b Fu(37)p eop
%%Page: -2 184
-2 183 bop 150 -116 a Fu(ii)2682 b(Debugging)31 b(with)e(GDB)449
83 y(5.2)92 b(Con)m(tin)m(uing)29 b(and)g(stepping)16
b Fr(.)e(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)
f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45
b Fu(38)449 193 y(5.3)92 b(Signals)23 b Fr(.)13 b(.)i(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)52 b Fu(40)449 302 y(5.4)92
b(Stopping)29 b(and)h(starting)g(m)m(ulti-thread)f(programs)16
b Fr(.)e(.)h(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45
b Fu(42)150 545 y Fs(6)135 b(Examining)46 b(the)f(Stac)l(k)20
b Fb(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)
h(.)f(.)g(.)h(.)f(.)65 b Fs(45)449 682 y Fu(6.1)92 b(Stac)m(k)31
b(frames)15 b Fr(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)44 b Fu(45)449
791 y(6.2)92 b(Bac)m(ktraces)12 b Fr(.)18 b(.)d(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)41 b Fu(46)449 901 y(6.3)92 b(Selecting)30 b(a)h(frame)13
b Fr(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)42 b Fu(47)449 1010 y(6.4)92 b(Information)29
b(ab)s(out)h(a)h(frame)18 b Fr(.)e(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)48 b Fu(48)449 1120 y(6.5)92 b(MIPS/Alpha)29
b(mac)m(hines)h(and)g(the)g(function)f(stac)m(k)22 b
Fr(.)17 b(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)51
b Fu(48)150 1362 y Fs(7)135 b(Examining)46 b(Source)e(Files)35
b Fb(.)20 b(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f
(.)h(.)f(.)79 b Fs(51)449 1499 y Fu(7.1)92 b(Prin)m(ting)29
b(source)h(lines)13 b Fr(.)h(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)h(.)f(.)g(.)42 b Fu(51)449 1609 y(7.2)92
b(Searc)m(hing)30 b(source)g(\014les)20 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)49 b Fu(52)449
1719 y(7.3)92 b(Sp)s(ecifying)28 b(source)i(directories)f
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)58 b Fu(53)449
1828 y(7.4)92 b(Source)30 b(and)g(mac)m(hine)g(co)s(de)25
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54
b Fu(53)150 2071 y Fs(8)135 b(Examining)46 b(Data)28
b Fb(.)21 b(.)e(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f
(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)73 b Fs(55)449
2208 y Fu(8.1)92 b(Expressions)15 b Fr(.)e(.)i(.)g(.)g(.)g(.)g(.)h(.)f
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g
(.)44 b Fu(55)449 2317 y(8.2)92 b(Program)30 b(v)-5 b(ariables)16
b Fr(.)e(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)45 b Fu(56)449 2427 y(8.3)92 b(Arti\014cial)29
b(arra)m(ys)21 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 b Fu(57)449
2536 y(8.4)92 b(Output)29 b(formats)22 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51
b Fu(58)449 2646 y(8.5)92 b(Examining)28 b(memory)9 b
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)38 b Fu(59)449 2755 y(8.6)92 b(Automatic)31
b(displa)m(y)12 b Fr(.)h(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Fu(60)449 2865 y(8.7)92
b(Prin)m(t)29 b(settings)21 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)50
b Fu(61)449 2975 y(8.8)92 b(V)-8 b(alue)30 b(history)c
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)56 b Fu(66)449 3084 y(8.9)92
b(Con)m(v)m(enience)31 b(v)-5 b(ariables)27 b Fr(.)15
b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)57
b Fu(67)449 3194 y(8.10)92 b(Registers)23 b Fr(.)16 b(.)f(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)52 b Fu(68)449 3303 y(8.11)92 b(Floating)31
b(p)s(oin)m(t)e(hardw)m(are)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)h(.)f(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)51 b Fu(70)150 3546 y Fs(9)135 b(Using)45
b(GDB)g(with)g(Di\013eren)l(t)i(Languages)27 b Fb(.)20
b(.)f(.)h(.)f(.)g(.)72 b Fs(71)449 3683 y Fu(9.1)92 b(Switc)m(hing)29
b(b)s(et)m(w)m(een)i(source)f(languages)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57
b Fu(71)748 3792 y(9.1.1)93 b(List)29 b(of)i(\014lename)e(extensions)h
(and)g(languages)15 b Fr(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)44
b Fu(71)748 3902 y(9.1.2)93 b(Setting)30 b(the)g(w)m(orking)g(language)
20 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)49 b Fu(72)748 4012 y(9.1.3)93 b(Ha)m(ving)30
b(GDB)i(infer)c(the)j(source)g(language)25 b Fr(.)15
b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54 b Fu(72)449 4121
y(9.2)92 b(Displa)m(ying)29 b(the)h(language)g Fr(.)15
b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)58
b Fu(72)449 4231 y(9.3)92 b(T)m(yp)s(e)30 b(and)g(range)g(c)m(hec)m
(king)8 b Fr(.)17 b(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
38 b Fu(73)748 4340 y(9.3.1)93 b(An)30 b(o)m(v)m(erview)h(of)f(t)m(yp)s
(e)h(c)m(hec)m(king)17 b Fr(.)f(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Fu(73)748 4450 y(9.3.2)93
b(An)30 b(o)m(v)m(erview)h(of)f(range)h(c)m(hec)m(king)17
b Fr(.)f(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)47 b Fu(74)449 4560 y(9.4)92 b(Supp)s(orted)28 b(languages)h
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)
g(.)57 b Fu(75)748 4669 y(9.4.1)93 b(C)29 b(and)h(C)p
Fo(++)18 b Fr(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)h(.)f(.)g(.)47 b Fu(75)1047 4779 y(9.4.1.1)93 b(C)30
b(and)g(C)p Fo(++)f Fu(op)s(erators)19 b Fr(.)d(.)f(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fu(76)1047
4888 y(9.4.1.2)93 b(C)30 b(and)g(C)p Fo(++)f Fu(constan)m(ts)19
b Fr(.)e(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)49 b Fu(77)1047 4998 y(9.4.1.3)93 b(C)p Fo(++)30
b Fu(expressions)12 b Fr(.)i(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42 b Fu(78)1047
5108 y(9.4.1.4)93 b(C)30 b(and)g(C)p Fo(++)f Fu(defaults)f
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)58 b Fu(79)1047 5217 y(9.4.1.5)93 b(C)30 b(and)g(C)p
Fo(++)f Fu(t)m(yp)s(e)i(and)f(range)g(c)m(hec)m(ks)c
Fr(.)15 b(.)g(.)g(.)g(.)g(.)53 b Fu(79)1047 5327 y(9.4.1.6)93
b(GDB)32 b(and)d(C)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)56
b Fu(79)p eop
%%Page: -3 185
-3 184 bop 3674 -116 a Fu(iii)1047 83 y(9.4.1.7)93 b(GDB)32
b(features)e(for)g(C)p Fo(++)20 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)50 b Fu(79)748 193
y(9.4.2)93 b(Mo)s(dula-2)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)53 b Fu(80)1047
302 y(9.4.2.1)93 b(Op)s(erators)23 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g
(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)53 b Fu(80)1047 412 y(9.4.2.2)93 b(Built-in)28
b(functions)h(and)h(pro)s(cedures)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)58
b Fu(82)1047 521 y(9.4.2.3)93 b(Constan)m(ts)24 b Fr(.)15
b(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)53 b Fu(83)1047
631 y(9.4.2.4)93 b(Mo)s(dula-2)30 b(defaults)13 b Fr(.)h(.)h(.)g(.)g(.)
g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42
b Fu(83)1047 741 y(9.4.2.5)93 b(Deviations)30 b(from)g(standard)g(Mo)s
(dula-2)c Fr(.)15 b(.)g(.)g(.)56 b Fu(83)1047 850 y(9.4.2.6)93
b(Mo)s(dula-2)30 b(t)m(yp)s(e)h(and)f(range)g(c)m(hec)m(ks)8
b Fr(.)17 b(.)e(.)g(.)g(.)g(.)g(.)g(.)38 b Fu(84)1047
960 y(9.4.2.7)93 b(The)30 b(scop)s(e)g(op)s(erators)h
Fo(::)f Fu(and)f Fo(.)17 b Fr(.)e(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)46
b Fu(84)1047 1069 y(9.4.2.8)93 b(GDB)32 b(and)d(Mo)s(dula-2)21
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)50 b Fu(84)748 1179 y(9.4.3)93 b(Chill)10
b Fr(.)i(.)j(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)39 b Fu(85)1047 1289 y(9.4.3.1)93
b(Ho)m(w)31 b(mo)s(des)f(are)h(displa)m(y)m(ed)20 b Fr(.)14
b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)50
b Fu(85)1047 1398 y(9.4.3.2)93 b(Lo)s(cations)31 b(and)e(their)h
(accesses)e Fr(.)15 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)56
b Fu(87)1047 1508 y(9.4.3.3)93 b(V)-8 b(alues)31 b(and)e(their)h(Op)s
(erations)c Fr(.)15 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)57
b Fu(87)1047 1617 y(9.4.3.4)93 b(Chill)27 b(t)m(yp)s(e)k(and)f(range)g
(c)m(hec)m(ks)16 b Fr(.)h(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45
b Fu(89)1047 1727 y(9.4.3.5)93 b(Chill)27 b(defaults)20
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)50 b Fu(90)748 1836
y(9.4.4)93 b(Ob)5 b(jectiv)m(e-C/C)p Fo(++)22 b Fr(.)15
b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52 b Fu(90)1047
1946 y(9.4.4.1)93 b(Metho)s(d)31 b(Names)f(in)g(Commands)17
b Fr(.)d(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46 b Fu(90)1047
2056 y(9.4.4.2)93 b(Command)30 b(Descriptions)16 b Fr(.)d(.)i(.)g(.)g
(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45 b Fu(91)1047
2165 y(9.4.4.3)93 b(Ob)5 b(jectiv)m(e-C/C)p Fo(++)30
b Fu(Expressions)20 b Fr(.)13 b(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)49
b Fu(91)748 2275 y(9.4.5)93 b(P)m(ostScript)27 b Fr(.)15
b(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
58 b Fu(91)150 2517 y Fs(10)135 b(Examining)46 b(the)f(Sym)l(b)t(ol)g
(T)-11 b(able)25 b Fb(.)20 b(.)g(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)
h(.)70 b Fs(93)150 2787 y(11)135 b(Altering)46 b(Execution)40
b Fb(.)20 b(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f
(.)h(.)f(.)h(.)f(.)g(.)85 b Fs(97)449 2924 y Fu(11.1)92
b(Assignmen)m(t)30 b(to)h(v)-5 b(ariables)9 b Fr(.)14
b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)38
b Fu(97)449 3034 y(11.2)92 b(Con)m(tin)m(uing)29 b(at)i(a)g(di\013eren)
m(t)f(address)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)51 b Fu(98)449
3143 y(11.3)92 b(Giving)29 b(y)m(our)i(program)f(a)h(signal)25
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)56 b Fu(98)449
3253 y(11.4)92 b(Returning)29 b(from)h(a)h(function)23
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)53
b Fu(99)449 3362 y(11.5)92 b(Calling)29 b(program)h(functions)d
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58
b Fu(99)449 3472 y(11.6)92 b(P)m(atc)m(hing)31 b(programs)22
b Fr(.)15 b(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)52 b Fu(99)150 3714 y Fs(12)135 b(GDB)44 b(Files)36
b Fb(.)20 b(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f
(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)79
b Fs(101)449 3851 y Fu(12.1)92 b(Commands)30 b(to)h(sp)s(ecify)e
(\014les)d Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57
b Fu(101)449 3961 y(12.2)92 b(Errors)30 b(reading)f(sym)m(b)s(ol)g
(\014les)13 b Fr(.)h(.)h(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43
b Fu(104)p eop
%%Page: -4 186
-4 185 bop 150 -116 a Fu(iv)2660 b(Debugging)31 b(with)e(GDB)150
83 y Fs(13)135 b(Sp)t(ecifying)45 b(a)g(Debugging)h(T)-11
b(arget)33 b Fb(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)77
b Fs(107)449 220 y Fu(13.1)92 b(Activ)m(e)32 b(targets)9
b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)39 b Fu(107)449 330 y(13.2)92
b(Commands)30 b(for)g(managing)g(targets)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)54
b Fu(107)449 439 y(13.3)92 b(Cho)s(osing)29 b(target)j(b)m(yte)f(order)
9 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)39
b Fu(111)449 549 y(13.4)92 b(Remote)32 b(debugging)26
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)
g(.)56 b Fu(111)748 658 y(13.4.1)93 b(The)30 b(GDB)h(remote)h(serial)d
(proto)s(col)18 b Fr(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)48 b Fu(112)1047 768 y(13.4.1.1)94 b(What)31 b(the)f(stub)g(can)g
(do)h(for)f(y)m(ou)13 b Fr(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)43
b Fu(113)1047 878 y(13.4.1.2)94 b(What)31 b(y)m(ou)f(m)m(ust)h(do)f
(for)g(the)h(stub)26 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)57
b Fu(113)1047 987 y(13.4.1.3)94 b(Putting)29 b(it)h(all)f(together)17
b Fr(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46
b Fu(115)1047 1097 y(13.4.1.4)94 b(Comm)m(unication)29
b(proto)s(col)f Fr(.)15 b(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)58
b Fu(116)1047 1206 y(13.4.1.5)94 b(Using)29 b(the)i Fo(gdbserver)d
Fu(program)d Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)56 b Fu(124)1047
1316 y(13.4.1.6)94 b(Using)29 b(the)i Fo(gdbserve.nlm)c
Fu(program)19 b Fr(.)14 b(.)h(.)g(.)49 b Fu(125)748 1425
y(13.4.2)93 b(GDB)31 b(with)f(a)g(remote)i(i960)f(\(Nindy\))21
b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51
b Fu(126)1047 1535 y(13.4.2.1)94 b(Startup)29 b(with)g(Nindy)22
b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)52 b Fu(126)1047 1645 y(13.4.2.2)94 b(Options)29 b(for)h(Nindy)d
Fr(.)15 b(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)59 b Fu(126)1047 1754 y(13.4.2.3)94 b(Nindy)28
b(reset)j(command)19 b Fr(.)d(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)49 b Fu(127)748 1864 y(13.4.3)93 b(The)30
b(UDI)h(proto)s(col)f(for)g(AMD29K)9 b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)
g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)38 b Fu(127)748 1973
y(13.4.4)93 b(The)30 b(EBMON)h(proto)s(col)f(for)g(AMD29K)f
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Fu(127)1047
2083 y(13.4.4.1)94 b(Comm)m(unications)29 b(setup)24
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54
b Fu(127)1047 2193 y(13.4.4.2)94 b(EB29K)31 b(cross-debugging)26
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57
b Fu(129)1047 2302 y(13.4.4.3)94 b(Remote)31 b(log)16
b Fr(.)f(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46 b Fu(129)748 2412
y(13.4.5)93 b(GDB)31 b(with)f(a)g(T)-8 b(andem)30 b(ST2000)15
b Fr(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)
44 b Fu(129)748 2521 y(13.4.6)93 b(GDB)31 b(and)f(VxW)-8
b(orks)15 b Fr(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45 b Fu(130)1047
2631 y(13.4.6.1)94 b(Connecting)29 b(to)i(VxW)-8 b(orks)21
b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)50
b Fu(130)1047 2741 y(13.4.6.2)94 b(VxW)-8 b(orks)31 b(do)m(wnload)26
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)57 b Fu(131)1047 2850 y(13.4.6.3)94 b(Running)28 b(tasks)21
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)51 b Fu(131)748 2960 y(13.4.7)93
b(GDB)31 b(and)f(Sparclet)15 b Fr(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
45 b Fu(132)1047 3069 y(13.4.7.1)94 b(Setting)30 b(\014le)f(to)i(debug)
10 b Fr(.)k(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g
(.)39 b Fu(132)1047 3179 y(13.4.7.2)94 b(Connecting)29
b(to)i(Sparclet)21 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)51 b Fu(132)1047 3289 y(13.4.7.3)94 b(Sparclet)29
b(do)m(wnload)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)57 b Fu(133)1047 3398 y(13.4.7.4)94
b(Running)28 b(and)h(debugging)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)54 b Fu(133)748 3508 y(13.4.8)93
b(GDB)31 b(and)f(Hitac)m(hi)g(micropro)s(cessors)d Fr(.)15
b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)57 b Fu(133)1047
3617 y(13.4.8.1)94 b(Connecting)29 b(to)i(Hitac)m(hi)g(b)s(oards)20
b Fr(.)13 b(.)i(.)g(.)g(.)g(.)h(.)f(.)49 b Fu(133)1047
3727 y(13.4.8.2)94 b(Using)29 b(the)i(E7000)h(in-circuit)c(em)m(ulator)
23 b Fr(.)15 b(.)53 b Fu(135)1047 3836 y(13.4.8.3)94
b(Sp)s(ecial)28 b(GDB)j(commands)e(for)h(Hitac)m(hi)g(micros)1253
3946 y Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fu(135)748 4056 y(13.4.9)93
b(GDB)31 b(and)f(remote)i(MIPS)d(b)s(oards)21 b Fr(.)15
b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51
b Fu(136)748 4165 y(13.4.10)93 b(Sim)m(ulated)29 b(CPU)h(target)23
b Fr(.)17 b(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)53 b Fu(137)150 4408 y Fs(14)135
b(Con)l(trolling)47 b(GDB)28 b Fb(.)18 b(.)i(.)f(.)h(.)f(.)g(.)h(.)f(.)
h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)72
b Fs(139)449 4545 y Fu(14.1)92 b(Prompt)28 b Fr(.)16
b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)
f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Fu(139)449 4654
y(14.2)92 b(Command)30 b(editing)18 b Fr(.)c(.)h(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Fu(139)449
4764 y(14.3)92 b(Command)30 b(history)17 b Fr(.)d(.)h(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)46 b
Fu(139)449 4873 y(14.4)92 b(Screen)31 b(size)9 b Fr(.)14
b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)h(.)38 b Fu(141)449 4983 y(14.5)92
b(Num)m(b)s(ers)23 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54
b Fu(141)449 5093 y(14.6)92 b(Optional)29 b(w)m(arnings)g(and)h
(messages)g Fr(.)15 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)59 b Fu(142)p eop
%%Page: -5 187
-5 186 bop 3702 -116 a Fu(v)150 83 y Fs(15)135 b(Canned)45
b(Sequences)g(of)g(Commands)33 b Fb(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)77
b Fs(143)449 220 y Fu(15.1)92 b(User-de\014ned)30 b(commands)10
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40
b Fu(143)449 330 y(15.2)92 b(User-de\014ned)30 b(command)g(ho)s(oks)e
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Fu(144)449 439
y(15.3)92 b(Command)30 b(\014les)14 b Fr(.)g(.)h(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44
b Fu(145)449 549 y(15.4)92 b(Commands)30 b(for)g(con)m(trolled)g
(output)23 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)53 b Fu(145)150 791
y Fs(16)135 b(Using)46 b(GDB)e(under)g Fa(gnu)h Fs(Emacs)28
b Fb(.)20 b(.)g(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)72
b Fs(147)150 1061 y(17)135 b(Rep)t(orting)46 b(Bugs)e(in)h(GDB)35
b Fb(.)19 b(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)
79 b Fs(149)449 1198 y Fu(17.1)92 b(Ha)m(v)m(e)33 b(y)m(ou)d(found)f(a)
i(bug?)22 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
52 b Fu(149)449 1308 y(17.2)92 b(Ho)m(w)31 b(to)h(rep)s(ort)d(bugs)g
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
59 b Fu(149)150 1550 y Fs(18)135 b(Command)45 b(Line)g(Editing)33
b Fb(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f
(.)76 b Fs(153)449 1687 y Fu(18.1)92 b(In)m(tro)s(duction)29
b(to)j(Line)d(Editing)21 b Fr(.)13 b(.)i(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51
b Fu(153)449 1797 y(18.2)92 b(Readline)29 b(In)m(teraction)13
b Fr(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)42
b Fu(153)748 1906 y(18.2.1)93 b(Readline)29 b(Bare)i(Essen)m(tials)22
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)52 b Fu(153)748 2016 y(18.2.2)93 b(Readline)29
b(Mo)m(v)m(emen)m(t)k(Commands)11 b Fr(.)i(.)i(.)g(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Fu(154)748 2125 y(18.2.3)93
b(Readline)29 b(Killing)e(Commands)18 b Fr(.)c(.)h(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Fu(154)748
2235 y(18.2.4)93 b(Readline)29 b(Argumen)m(ts)21 b Fr(.)15
b(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)51 b Fu(155)748 2345 y(18.2.5)93
b(Searc)m(hing)30 b(for)g(Commands)f(in)g(the)i(History)22
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)52 b Fu(155)449 2454
y(18.3)92 b(Readline)29 b(Init)h(File)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)54
b Fu(155)748 2564 y(18.3.1)93 b(Readline)29 b(Init)g(File)h(Syn)m(tax)
10 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)40 b Fu(156)748 2673 y(18.3.2)93
b(Conditional)28 b(Init)h(Constructs)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Fu(160)748
2783 y(18.3.3)93 b(Sample)29 b(Init)g(File)19 b Fr(.)c(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)49 b Fu(160)449 2892 y(18.4)92
b(Bindable)29 b(Readline)g(Commands)10 b Fr(.)k(.)h(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
40 b Fu(163)748 3002 y(18.4.1)93 b(Commands)29 b(F)-8
b(or)31 b(Mo)m(ving)25 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54 b Fu(163)748
3112 y(18.4.2)93 b(Commands)29 b(F)-8 b(or)31 b(Manipulating)e(The)g
(History)16 b Fr(.)f(.)g(.)g(.)g(.)45 b Fu(163)748 3221
y(18.4.3)93 b(Commands)29 b(F)-8 b(or)31 b(Changing)e(T)-8
b(ext)28 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
h(.)56 b Fu(164)748 3331 y(18.4.4)93 b(Killing)27 b(And)i(Y)-8
b(anking)15 b Fr(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)44 b Fu(165)748
3440 y(18.4.5)93 b(Sp)s(ecifying)28 b(Numeric)h(Argumen)m(ts)22
b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52
b Fu(166)748 3550 y(18.4.6)93 b(Letting)30 b(Readline)f(T)m(yp)s(e)h(F)
-8 b(or)31 b(Y)-8 b(ou)17 b Fr(.)f(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)47 b Fu(167)748 3660 y(18.4.7)93 b(Keyb)s(oard)29
b(Macros)9 b Fr(.)17 b(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)39
b Fu(167)748 3769 y(18.4.8)93 b(Some)30 b(Miscellaneous)g(Commands)11
b Fr(.)i(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)40
b Fu(168)449 3879 y(18.5)92 b(Readline)29 b(vi)h(Mo)s(de)24
b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)54 b Fu(169)150 4121 y Fs(19)135 b(Using)46 b(History)f(In)l
(teractiv)l(ely)11 b Fb(.)23 b(.)c(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h
(.)f(.)h(.)55 b Fs(171)449 4258 y Fu(19.1)92 b(History)30
b(Expansion)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)57 b Fu(171)748 4368 y(19.1.1)93 b(Ev)m(en)m(t)31
b(Designators)20 b Fr(.)c(.)f(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)50
b Fu(171)748 4477 y(19.1.2)93 b(W)-8 b(ord)31 b(Designators)c
Fr(.)15 b(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Fu(172)748
4587 y(19.1.3)93 b(Mo)s(di\014ers)25 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)56 b Fu(172)150
4829 y Fs(App)t(endix)44 b(A)134 b(F)-11 b(ormatting)46
b(Do)t(cumen)l(tation)33 b Fb(.)20 b(.)f(.)h(.)76 b Fs(173)p
eop
%%Page: -6 188
-6 187 bop 150 -116 a Fu(vi)2660 b(Debugging)31 b(with)e(GDB)150
83 y Fs(App)t(endix)44 b(B)134 b(Installing)46 b(GDB)13
b Fb(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)
57 b Fs(175)449 220 y Fu(B.1)92 b(Compiling)27 b(GDB)32
b(in)d(another)h(directory)18 b Fr(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Fu(176)449
330 y(B.2)92 b(Sp)s(ecifying)28 b(names)i(for)g(hosts)h(and)e(targets)g
Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)57 b Fu(177)449 439 y(B.3)92 b Fo(configure)28 b Fu(options)14
b Fr(.)g(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g
(.)g(.)43 b Fu(177)150 682 y Fs(Index)34 b Fb(.)20 b(.)f(.)h(.)f(.)h(.)
f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g
(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)79
b Fs(179)p eop
%%Trailer
end
userdict /end-hook known{end-hook}if
%%EOF