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: 42106
gcc.i3: 72696
gcc.i4: 104877
gcc.i5: 151171
gcc.i6: 196514
gcc.i7: 244071
gcc.i8: 292862
gcc.i9: 328088
gcc.i10: 376478
gcc.i11: 424908
gcc.i12: 473283
gcc.i13: 522565
gcc.i14: 572050
gcc.i15: 615270
gcc.i16: 658606
gcc.i17: 698828
gcc.i18: 747832
gcc.i19: 782569
gcc.i20: 828524
gcc.i21: 871818
gcc.i22: 921750
gcc.i23: 971719
gcc.i24: 985350
gcc.i25: 1029817
gcc.i26: 1074211
gcc.i27: 1107334
gcc.i28: 1154724
gcc.i29: 1201943
gcc.i30: 1251618
gcc.i31: 1295221
gcc.i32: 1341493
gcc.i33: 1390685
gcc.i34: 1425372
gcc.i35: 1473633
gcc.i36: 1518044
gcc.i37: 1534916
gcc.i38: 1595103

Tag Table:
(Indirect)
Node: Top1239
Node: G++ and GCC3383
Node: Standards5794
Node: Invoking GCC12244
Node: Option Summary15889
Node: Overall Options34540
Node: Invoking G++40660
Node: C Dialect Options42106
Node: C++ Dialect Options56329
Node: Objective-C Dialect Options69285
Node: Language Independent Options70908
Node: Warning Options72696
Node: Debugging Options104877
Node: Optimize Options126587
Node: Preprocessor Options151171
Node: Assembler Options161408
Node: Link Options161775
Ref: Link Options-Footnote-1169028
Node: Directory Options169364
Node: Spec Files173370
Node: Target Options190876
Node: Submodel Options194863
Node: M680x0 Options196514
Node: M68hc1x Options202521
Node: VAX Options203701
Node: SPARC Options204237
Node: Convex Options214121
Node: AMD29K Options216302
Node: ARM Options219698
Node: MN10200 Options232219
Node: MN10300 Options232741
Node: M32R/D Options233792
Node: M88K Options236141
Node: RS/6000 and PowerPC Options244071
Node: RT Options263503
Node: MIPS Options265206
Node: i386 Options275391
Node: HPPA Options285855
Node: Intel 960 Options289920
Node: DEC Alpha Options292862
Node: Clipper Options302256
Node: H8/300 Options302656
Node: SH Options303585
Node: System V Options305901
Node: TMS320C3x/C4x Options306719
Node: V850 Options312231
Node: ARC Options314240
Node: NS32K Options315441
Node: AVR Options319690
Node: MCore Options321401
Node: IA-64 Options322545
Node: D30V Options324933
Node: S/390 and zSeries Options326176
Node: Code Gen Options328088
Node: Environment Variables344918
Node: Running Protoize351256
Node: Installation357613
Node: Configuration Files361194
Node: Configurations362798
Node: Cross-Compiler367022
Node: Steps of Cross368781
Node: Configure Cross369899
Node: Tools and Libraries370536
Node: Cross Headers372975
Node: Build Cross374972
Node: VMS Install376478
Node: Collect2386411
Node: Header Dirs388976
Node: C Extensions390399
Node: Statement Exprs394221
Node: Local Labels397313
Node: Labels as Values399378
Ref: Labels as Values-Footnote-1401437
Node: Nested Functions401622
Node: Constructing Calls405461
Node: Naming Types407548
Node: Typeof408642
Node: Lvalues410518
Node: Conditionals412958
Node: Long Long413849
Node: Complex415348
Node: Hex Floats418016
Node: Zero Length419045
Node: Variable Length422146
Node: Variadic Macros424908
Node: Escaped Newlines427298
Node: Multi-line Strings428181
Node: Subscripting428785
Node: Pointer Arith429418
Node: Initializers429983
Node: Compound Literals430466
Node: Designated Inits432505
Node: Case Ranges436179
Node: Cast to Union436859
Node: Mixed Declarations437942
Node: Function Attributes438437
Node: Attribute Syntax459797
Node: Function Prototypes468608
Node: C++ Comments470404
Node: Dollar Signs470999
Node: Character Escapes471457
Node: Alignment471744
Node: Variable Attributes473283
Node: Type Attributes482916
Node: Inline492204
Node: Extended Asm496940
Node: Asm Labels513069
Node: Explicit Reg Vars514746
Node: Global Reg Vars516200
Node: Local Reg Vars520765
Node: Alternate Keywords522565
Node: Incomplete Enums524252
Node: Function Names525008
Node: Return Address527335
Node: Other Builtins529477
Node: C++ Extensions535548
Node: Min and Max537109
Node: Volatiles538515
Node: Restricted Pointers541885
Node: Vague Linkage543455
Node: C++ Interface547113
Ref: C++ Interface-Footnote-1552201
Node: Template Instantiation552340
Node: Bound member functions561170
Node: C++ Attributes562721
Node: Java Exceptions564325
Node: Deprecated Features565730
Node: Backwards Compatibility567494
Node: Objective C568842
Node: Executing code before main569412
Node: What you can and what you cannot do in +load572050
Node: Type encoding574216
Node: Garbage Collection577468
Node: Constant string objects580132
Node: compatibility_alias581766
Node: Gcov582645
Node: Gcov Intro583162
Node: Invoking Gcov585837
Node: Gcov and Optimization591575
Node: Gcov Data Files592992
Node: Trouble596557
Node: Actual Bugs598151
Node: Cross-Compiler Problems599059
Node: Interoperation600520
Node: External Bugs613778
Node: Incompatibilities615270
Node: Fixed Headers624878
Node: Standard Libraries627187
Node: Disappointments628557
Node: C++ Misunderstandings633095
Node: Static Definitions633821
Node: Temporaries634868
Node: Copy Assignment636845
Node: Protoize Caveats638663
Node: Non-bugs642618
Node: Warnings and Errors652510
Node: Bugs654270
Node: Bug Criteria655623
Node: Bug Lists658047
Node: Bug Reporting658606
Node: gccbug670709
Node: Service671529
Node: Contributing672275
Node: VMS672980
Node: Include Files and VMS673363
Node: Global Declarations677228
Node: VMS Misc681532
Node: Makefile685835
Node: Portability692494
Node: Interface694248
Node: Passes698828
Node: Trees721679
Node: Deficiencies724419
Node: Tree overview724649
Node: Macros and Functions728784
Node: Identifiers728918
Node: Containers730434
Node: Types731578
Node: Scopes743358
Node: Namespaces744114
Node: Classes747832
Node: Declarations752475
Node: Functions758529
Node: Function Basics761059
Node: Function Bodies767805
Node: Attributes781180
Node: Expression trees782569
Node: RTL805018
Node: RTL Objects807049
Node: RTL Classes810082
Node: Accessors814588
Node: Flags816968
Node: Machine Modes828524
Node: Constants836308
Node: Regs and Memory841489
Node: Arithmetic854129
Node: Comparisons860390
Node: Bit-Fields864510
Node: Vector Operations865928
Node: Conversions867702
Node: RTL Declarations871009
Node: Side Effects871818
Node: Incdec886668
Node: Assembler890221
Node: Insns891743
Node: Calls916191
Node: Sharing918785
Node: Reading RTL921750
Node: Machine Desc922693
Node: Overview924897
Node: Patterns926936
Node: Example930172
Node: RTL Template931300
Node: Output Template943765
Node: Output Statement947747
Node: Constraints951459
Node: Simple Constraints952390
Node: Multi-Alternative964346
Node: Class Preferences967181
Node: Modifiers968061
Node: Machine Constraints971719
Node: Standard Names985350
Node: Pattern Ordering1025775
Node: Dependent Patterns1027002
Node: Jump Patterns1029817
Node: Looping Patterns1035564
Node: Insn Canonicalizations1040157
Node: Expander Definitions1043655
Node: Insn Splitting1051787
Node: Peephole Definitions1060437
Node: define_peephole1061680
Node: define_peephole21068055
Node: Insn Attributes1071116
Node: Defining Attributes1072199
Node: Expressions1074211
Node: Tagging Insns1080800
Node: Attr Example1085162
Node: Insn Lengths1087538
Node: Constant Attributes1090831
Node: Delay Slots1091991
Node: Function Units1095202
Node: Conditional Execution1100872
Node: Constant Definitions1103728
Node: Target Macros1105306
Node: Driver1107334
Node: Run-time Target1125769
Node: Per-Function Data1132799
Node: Storage Layout1136060
Node: Type Layout1154724
Node: Registers1164570
Node: Register Basics1165485
Node: Allocation Order1170685
Node: Values in Registers1172098
Node: Leaf Functions1177215
Node: Stack Registers1179980
Node: Register Classes1180777
Node: Stack and Calling1201458
Node: Frame Layout1201943
Node: Stack Checking1211713
Node: Frame Registers1215245
Node: Elimination1219659
Node: Stack Arguments1223914
Node: Register Arguments1230887
Node: Scalar Return1242129
Node: Aggregate Return1246367
Node: Caller Saves1250081
Node: Function Entry1251618
Node: Profiling1262539
Node: Inlining1270777
Node: Tail Calling1271329
Node: Varargs1271918
Node: Trampolines1279593
Node: Library Calls1286798
Node: Addressing Modes1295221
Node: Condition Code1306495
Node: Costs1313352
Node: Sections1326266
Node: PIC1333581
Node: Assembler Format1336290
Node: File Framework1337357
Node: Data Output1341493
Node: Uninitialized Data1349267
Node: Label Output1354664
Node: Initialization1367837
Node: Macros for Initialization1373977
Node: Instruction Output1379234
Node: Dispatch Tables1388133
Node: Exception Region Output1390685
Node: Alignment Output1394184
Node: Debugging Info1397741
Node: All Debuggers1398350
Node: DBX Options1401159
Node: DBX Hooks1406531
Node: File Names and DBX1410177
Node: SDB and DWARF1412150
Node: Cross-compilation1415559
Node: Mode Switching1422135
Node: Misc1425372
Node: Config1457340
Node: Fragments1465024
Node: Target Fragment1465619
Node: Host Fragment1470532
Node: Funding1471134
Node: GNU/Linux1473633
Node: Copying1478948
Node: GNU Free Documentation License1498159
Node: Contributors1518044
Node: Option Index1534916
Node: Index1595103

End Tag Table
