This is doc/gcc.info, produced by makeinfo version 4.0 from
doc/gcc.texi.

INFO-DIR-SECTION Programming
START-INFO-DIR-ENTRY
* gcc: (gcc).                  The GNU Compiler Collection.
END-INFO-DIR-ENTRY
   This file documents the use and the internals of the GNU compiler.


   Published by the Free Software Foundation
59 Temple Place - Suite 330
Boston, MA 02111-1307 USA


   Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 2001 Free Software Foundation, Inc.


   Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "GNU General Public License" and "Funding Free
Software", the Front-Cover texts being (a) (see below), and with the
Back-Cover Texts being (b) (see below).  A copy of the license is
included in the section entitled "GNU Free Documentation License".

   (a) The FSF's Front-Cover Text is:

   A GNU Manual

   (b) The FSF's Back-Cover Text is:

   You have freedom to copy and modify this GNU Manual, like GNU
software.  Copies published by the Free Software Foundation raise
funds for GNU development.


Indirect:
gcc.i1: 1239
gcc.i2: 42118
gcc.i3: 72708
gcc.i4: 104889
gcc.i5: 151183
gcc.i6: 196526
gcc.i7: 244083
gcc.i8: 292990
gcc.i9: 328216
gcc.i10: 376606
gcc.i11: 425036
gcc.i12: 473411
gcc.i13: 522693
gcc.i14: 572288
gcc.i15: 615508
gcc.i16: 658844
gcc.i17: 699066
gcc.i18: 748070
gcc.i19: 782807
gcc.i20: 828762
gcc.i21: 872056
gcc.i22: 921988
gcc.i23: 971957
gcc.i24: 985588
gcc.i25: 1030055
gcc.i26: 1074449
gcc.i27: 1107572
gcc.i28: 1154962
gcc.i29: 1202181
gcc.i30: 1251856
gcc.i31: 1295459
gcc.i32: 1341731
gcc.i33: 1390923
gcc.i34: 1425610
gcc.i35: 1473871
gcc.i36: 1518282
gcc.i37: 1535154
gcc.i38: 1595411

Tag Table:
(Indirect)
Node: Top1239
Node: G++ and GCC3383
Node: Standards5794
Node: Invoking GCC12244
Node: Option Summary15889
Node: Overall Options34552
Node: Invoking G++40672
Node: C Dialect Options42118
Node: C++ Dialect Options56341
Node: Objective-C Dialect Options69297
Node: Language Independent Options70920
Node: Warning Options72708
Node: Debugging Options104889
Node: Optimize Options126599
Node: Preprocessor Options151183
Node: Assembler Options161420
Node: Link Options161787
Ref: Link Options-Footnote-1169040
Node: Directory Options169376
Node: Spec Files173382
Node: Target Options190888
Node: Submodel Options194875
Node: M680x0 Options196526
Node: M68hc1x Options202533
Node: VAX Options203713
Node: SPARC Options204249
Node: Convex Options214133
Node: AMD29K Options216314
Node: ARM Options219710
Node: MN10200 Options232231
Node: MN10300 Options232753
Node: M32R/D Options233804
Node: M88K Options236153
Node: RS/6000 and PowerPC Options244083
Node: RT Options263631
Node: MIPS Options265334
Node: i386 Options275519
Node: HPPA Options285983
Node: Intel 960 Options290048
Node: DEC Alpha Options292990
Node: Clipper Options302384
Node: H8/300 Options302784
Node: SH Options303713
Node: System V Options306029
Node: TMS320C3x/C4x Options306847
Node: V850 Options312359
Node: ARC Options314368
Node: NS32K Options315569
Node: AVR Options319818
Node: MCore Options321529
Node: IA-64 Options322673
Node: D30V Options325061
Node: S/390 and zSeries Options326304
Node: Code Gen Options328216
Node: Environment Variables345046
Node: Running Protoize351384
Node: Installation357741
Node: Configuration Files361322
Node: Configurations362926
Node: Cross-Compiler367150
Node: Steps of Cross368909
Node: Configure Cross370027
Node: Tools and Libraries370664
Node: Cross Headers373103
Node: Build Cross375100
Node: VMS Install376606
Node: Collect2386539
Node: Header Dirs389104
Node: C Extensions390527
Node: Statement Exprs394349
Node: Local Labels397441
Node: Labels as Values399506
Ref: Labels as Values-Footnote-1401565
Node: Nested Functions401750
Node: Constructing Calls405589
Node: Naming Types407676
Node: Typeof408770
Node: Lvalues410646
Node: Conditionals413086
Node: Long Long413977
Node: Complex415476
Node: Hex Floats418144
Node: Zero Length419173
Node: Variable Length422274
Node: Variadic Macros425036
Node: Escaped Newlines427426
Node: Multi-line Strings428309
Node: Subscripting428913
Node: Pointer Arith429546
Node: Initializers430111
Node: Compound Literals430594
Node: Designated Inits432633
Node: Case Ranges436307
Node: Cast to Union436987
Node: Mixed Declarations438070
Node: Function Attributes438565
Node: Attribute Syntax459925
Node: Function Prototypes468736
Node: C++ Comments470532
Node: Dollar Signs471127
Node: Character Escapes471585
Node: Alignment471872
Node: Variable Attributes473411
Node: Type Attributes483044
Node: Inline492332
Node: Extended Asm497068
Node: Asm Labels513197
Node: Explicit Reg Vars514874
Node: Global Reg Vars516328
Node: Local Reg Vars520893
Node: Alternate Keywords522693
Node: Incomplete Enums524380
Node: Function Names525136
Node: Return Address527573
Node: Other Builtins529715
Node: C++ Extensions535786
Node: Min and Max537347
Node: Volatiles538753
Node: Restricted Pointers542123
Node: Vague Linkage543693
Node: C++ Interface547351
Ref: C++ Interface-Footnote-1552439
Node: Template Instantiation552578
Node: Bound member functions561408
Node: C++ Attributes562959
Node: Java Exceptions564563
Node: Deprecated Features565968
Node: Backwards Compatibility567732
Node: Objective C569080
Node: Executing code before main569650
Node: What you can and what you cannot do in +load572288
Node: Type encoding574454
Node: Garbage Collection577706
Node: Constant string objects580370
Node: compatibility_alias582004
Node: Gcov582883
Node: Gcov Intro583400
Node: Invoking Gcov586075
Node: Gcov and Optimization591813
Node: Gcov Data Files593230
Node: Trouble596795
Node: Actual Bugs598389
Node: Cross-Compiler Problems599297
Node: Interoperation600758
Node: External Bugs614016
Node: Incompatibilities615508
Node: Fixed Headers625116
Node: Standard Libraries627425
Node: Disappointments628795
Node: C++ Misunderstandings633333
Node: Static Definitions634059
Node: Temporaries635106
Node: Copy Assignment637083
Node: Protoize Caveats638901
Node: Non-bugs642856
Node: Warnings and Errors652748
Node: Bugs654508
Node: Bug Criteria655861
Node: Bug Lists658285
Node: Bug Reporting658844
Node: gccbug670947
Node: Service671767
Node: Contributing672513
Node: VMS673218
Node: Include Files and VMS673601
Node: Global Declarations677466
Node: VMS Misc681770
Node: Makefile686073
Node: Portability692732
Node: Interface694486
Node: Passes699066
Node: Trees721917
Node: Deficiencies724657
Node: Tree overview724887
Node: Macros and Functions729022
Node: Identifiers729156
Node: Containers730672
Node: Types731816
Node: Scopes743596
Node: Namespaces744352
Node: Classes748070
Node: Declarations752713
Node: Functions758767
Node: Function Basics761297
Node: Function Bodies768043
Node: Attributes781418
Node: Expression trees782807
Node: RTL805256
Node: RTL Objects807287
Node: RTL Classes810320
Node: Accessors814826
Node: Flags817206
Node: Machine Modes828762
Node: Constants836546
Node: Regs and Memory841727
Node: Arithmetic854367
Node: Comparisons860628
Node: Bit-Fields864748
Node: Vector Operations866166
Node: Conversions867940
Node: RTL Declarations871247
Node: Side Effects872056
Node: Incdec886906
Node: Assembler890459
Node: Insns891981
Node: Calls916429
Node: Sharing919023
Node: Reading RTL921988
Node: Machine Desc922931
Node: Overview925135
Node: Patterns927174
Node: Example930410
Node: RTL Template931538
Node: Output Template944003
Node: Output Statement947985
Node: Constraints951697
Node: Simple Constraints952628
Node: Multi-Alternative964584
Node: Class Preferences967419
Node: Modifiers968299
Node: Machine Constraints971957
Node: Standard Names985588
Node: Pattern Ordering1026013
Node: Dependent Patterns1027240
Node: Jump Patterns1030055
Node: Looping Patterns1035802
Node: Insn Canonicalizations1040395
Node: Expander Definitions1043893
Node: Insn Splitting1052025
Node: Peephole Definitions1060675
Node: define_peephole1061918
Node: define_peephole21068293
Node: Insn Attributes1071354
Node: Defining Attributes1072437
Node: Expressions1074449
Node: Tagging Insns1081038
Node: Attr Example1085400
Node: Insn Lengths1087776
Node: Constant Attributes1091069
Node: Delay Slots1092229
Node: Function Units1095440
Node: Conditional Execution1101110
Node: Constant Definitions1103966
Node: Target Macros1105544
Node: Driver1107572
Node: Run-time Target1126007
Node: Per-Function Data1133037
Node: Storage Layout1136298
Node: Type Layout1154962
Node: Registers1164808
Node: Register Basics1165723
Node: Allocation Order1170923
Node: Values in Registers1172336
Node: Leaf Functions1177453
Node: Stack Registers1180218
Node: Register Classes1181015
Node: Stack and Calling1201696
Node: Frame Layout1202181
Node: Stack Checking1211951
Node: Frame Registers1215483
Node: Elimination1219897
Node: Stack Arguments1224152
Node: Register Arguments1231125
Node: Scalar Return1242367
Node: Aggregate Return1246605
Node: Caller Saves1250319
Node: Function Entry1251856
Node: Profiling1262777
Node: Inlining1271015
Node: Tail Calling1271567
Node: Varargs1272156
Node: Trampolines1279831
Node: Library Calls1287036
Node: Addressing Modes1295459
Node: Condition Code1306733
Node: Costs1313590
Node: Sections1326504
Node: PIC1333819
Node: Assembler Format1336528
Node: File Framework1337595
Node: Data Output1341731
Node: Uninitialized Data1349505
Node: Label Output1354902
Node: Initialization1368075
Node: Macros for Initialization1374215
Node: Instruction Output1379472
Node: Dispatch Tables1388371
Node: Exception Region Output1390923
Node: Alignment Output1394422
Node: Debugging Info1397979
Node: All Debuggers1398588
Node: DBX Options1401397
Node: DBX Hooks1406769
Node: File Names and DBX1410415
Node: SDB and DWARF1412388
Node: Cross-compilation1415797
Node: Mode Switching1422373
Node: Misc1425610
Node: Config1457578
Node: Fragments1465262
Node: Target Fragment1465857
Node: Host Fragment1470770
Node: Funding1471372
Node: GNU/Linux1473871
Node: Copying1479186
Node: GNU Free Documentation License1498397
Node: Contributors1518282
Node: Option Index1535154
Node: Index1595411

End Tag Table
