Using GNU CC
GNU GENERAL PUBLIC LICENSE
Preamble
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
How to Apply These Terms to Your New Programs
Contributors to GNU CC
Funding Free Software
Protect Your Freedom--Fight "Look And Feel"
Compile C, C++, or Objective C
GNU CC Command Options
Option Summary
Options Controlling the Kind of Output
Compiling C++ Programs
Options Controlling C Dialect
Options Controlling C++ Dialect
Options to Request or Suppress Warnings
Options for Debugging Your Program or GNU CC
Options That Control Optimization
Options Controlling the Preprocessor
Passing Options to the Assembler
Options for Linking
Options for Directory Search
Specifying Target Machine and Compiler Version
Hardware Models and Configurations
M680x0 Options
VAX Options
SPARC Options
Convex Options
AMD29K Options
ARM Options
M88K Options
IBM RS/6000 and PowerPC Options
IBM RT Options
MIPS Options
Intel 386 Options
HPPA Options
Intel 960 Options
DEC Alpha Options
Clipper Options
H8/300 Options
Options for System V
Zilog Z8000 Option
Options for the H8/500
Options for Code Generation Conventions
Environment Variables Affecting GNU CC
Running Protoize
Installing GNU CC
Configurations Supported by GNU CC
Compilation in a Separate Directory
Building and Installing a Cross-Compiler
Steps of Cross-Compilation
Configuring a Cross-Compiler
Tools and Libraries for a Cross-Compiler
`libgcc.a'
and Cross-Compilers
Cross-Compilers and Header Files
Actually Building the Cross-Compiler
Installing GNU CC on the Sun
Installing GNU CC on VMS
collect2
Standard Header File Directories
Extensions to the C Language Family
Statements and Declarations in Expressions
Locally Declared Labels
Labels as Values
Nested Functions
Constructing Function Calls
Naming an Expression's Type
Referring to a Type with
typeof
Generalized Lvalues
Conditionals with Omitted Operands
Double-Word Integers
Complex Numbers
Arrays of Length Zero
Arrays of Variable Length
Macros with Variable Numbers of Arguments
Non-Lvalue Arrays May Have Subscripts
Arithmetic on
void
- and Function-Pointers
Non-Constant Initializers
Constructor Expressions
Labeled Elements in Initializers
Case Ranges
Cast to a Union Type
Declaring Attributes of Functions
Prototypes and Old-Style Function Definitions
Compiling Functions for Interrupt Calls
C++ Style Comments
Dollar Signs in Identifier Names
The Character
ESC
in Constants
Inquiring on Alignment of Types or Variables
Specifying Attributes of Variables
Specifying Attributes of Types
An Inline Function is As Fast As a Macro
Assembler Instructions with C Expression Operands
Constraints for
asm
Operands
Simple Constraints
Multiple Alternative Constraints
Constraint Modifier Characters
Constraints for Particular Machines
Controlling Names Used in Assembler Code
Variables in Specified Registers
Defining Global Register Variables
Specifying Registers for Local Variables
Alternate Keywords
Incomplete
enum
Types
Function Names as Strings
Extensions to the C++ Language
Named Return Values in C++
Minimum and Maximum Operators in C++
goto
and Destructors in GNU C++
Declarations and Definitions in One Header
Where's the Template?
Type Abstraction using Signatures
gcov
: a Test Coverage Program
Introduction to
gcov
Invoking gcov
Using
gcov
with GCC Optimization
Known Causes of Trouble with GNU CC
Actual Bugs We Haven't Fixed Yet
Installation Problems
Cross-Compiler Problems
Interoperation
Problems Compiling Certain Programs
Incompatibilities of GNU CC
Fixed Header Files
Standard Libraries
Disappointments and Misunderstandings
Common Misunderstandings with GNU C++
Declare
and
Define Static Members
Temporaries May Vanish Before You Expect
Caveats of using
protoize
Certain Changes We Don't Want to Make
Warning Messages and Error Messages
Reporting Bugs
Have You Found a Bug?
Where to Report Bugs
How to Report Bugs
Sending Patches for GNU CC
How To Get Help with GNU CC
Using GNU CC on VMS
Include Files and VMS
Global Declarations and VMS
Other VMS Issues
Index
Footnotes
This document was generated using the
texi2html
translator version 1.31.