Contents

# Index

## A

Actual Bugs We Haven't Fixed Yet

Actual Bugs We Haven't Fixed Yet

Actually Building the Cross-Compiler

Actually Building the Cross-Compiler

Alternate Keywords

Alternate Keywords

AMD29K Options

AMD29K Options

An inline Function is As Fast As a Macro

An inline Function is As Fast As a Macro

Arithmetic on void- and Function-Pointers

Arithmetic on void- and Function-Pointers

ARM Options

ARM Options

Arrays of Length Zero

Arrays of Length Zero

Arrays of Variable Length

Arrays of Variable Length

Assembler Instructions with C Expression Operands

Assembler Instructions with C Expression Operands

## B

Brief description of gcov data files

Brief description of gcov data files

Building and Installing a Cross-Compiler

Building and Installing a Cross-Compiler

## C

C++

Compile C, C++, or Objective C

C++ Style Comments

C++ Style Comments

Case Ranges

Case Ranges

Cast to a Union Type

Cast to a Union Type

Caveats of using protoize

Caveats of using protoize

Certain Changes We Don't Want to Make

Certain Changes We Don't Want to Make

Clipper Options

Clipper Options

collect2

collect2

Common Misunderstandings with GNU C++

Common Misunderstandings with GNU C++

Compilation in a Separate Directory

Compilation in a Separate Directory

Compile C, C++, or Objective C

Compile C, C++, or Objective C

Compiling C++ Programs

Compiling C++ Programs

Compiling Functions for Interrupt Calls

Compiling Functions for Interrupt Calls

Complex Numbers

Complex Numbers

Conditionals with Omitted Operands

Conditionals with Omitted Operands

Configurations Supported by GNU CC

Configurations Supported by GNU CC

Configuring a Cross-Compiler

Configuring a Cross-Compiler

Constraint Modifier Characters

Constraint Modifier Characters

Constraints for asm Operands

Constraints for asm Operands

Constraints for Particular Machines

Constraints for Particular Machines

Constructing Function Calls

Constructing Function Calls

Constructor Expressions

Constructor Expressions

contributors to GNU CC

Contributors to GNU CC
Contributors to GNU CC

Controlling Names Used in Assembler Code

Controlling Names Used in Assembler Code

Convex Options

Convex Options

Cross-Compiler Problems

Cross-Compiler Problems

Cross-Compilers and Header Files

Cross-Compilers and Header Files

## D

DEC Alpha Options

DEC Alpha Options

Declarations and Definitions in One Header

Declarations and Definitions in One Header

Declare and Define Static Members

Declare and Define Static Members

Declaring Attributes of Functions

Declaring Attributes of Functions

Defining Global Register Variables

Defining Global Register Variables

Disappointments and Misunderstandings

Disappointments and Misunderstandings

Dollar Signs in Identifier Names

Dollar Signs in Identifier Names

Double-Word Integers

Double-Word Integers

## E

Environment Variables Affecting GNU CC

Environment Variables Affecting GNU CC

Extensions to the C Language Family

Extensions to the C Language Family

Extensions to the C++ Language

Extensions to the C++ Language

## F

Fight "Look And Feel"

Protect Your Freedom; Fight "Look And Feel"

Fixed Header Files

Fixed Header Files

Function Names as Strings

Function Names as Strings

Funding Free Software

Funding Free Software

## G

G++, definition

Compile C, C++, or Objective C

gcov: a Test Coverage Program

gcov: a Test Coverage Program

Generalized Lvalues

Generalized Lvalues

Getting the Return or Frame Address of a Function

Getting the Return or Frame Address of a Function

Global Declarations and VMS

Global Declarations and VMS

GNU CC command options

GNU CC Command Options
GNU CC Command Options

GNU General Public License

GNU General Public License

goto and Destructors in GNU C++

goto and Destructors in GNU C++

## H

H8/300 Options

H8/300 Options

Hardware Models and Configurations

Hardware Models and Configurations

Have You Found a Bug?

Have You Found a Bug?

How to Apply These Terms to Your New Programs

How to Apply These Terms to Your New Programs

How To Get Help with GNU CC

How To Get Help with GNU CC

How to Report Bugs

How to Report Bugs

HPPA Options

HPPA Options

## I

IBM RS/6000 and PowerPC Options

IBM RS/6000 and PowerPC Options

IBM RT Options

IBM RT Options

Include Files and VMS

Include Files and VMS

Incompatibilities of GNU CC

Incompatibilities of GNU CC

Incomplete enum Types

Incomplete enum Types

Inquiring on Alignment of Types or Variables

Inquiring on Alignment of Types or Variables

Installation Problems

Installation Problems

Installing GNU CC

Installing GNU CC

Installing GNU CC on the Sun

Installing GNU CC on the Sun

Installing GNU CC on VMS

Installing GNU CC on VMS

Intel 386 Options

Intel 386 Options

Intel 960 Options

Intel 960 Options

Interoperation

Interoperation

Introduction to gcov

Introduction to gcov

Invoking gcov

Invoking gcov

## K

Known Causes of Trouble with GNU CC

Known Causes of Trouble with GNU CC

## L

Labeled Elements in Initializers

Labeled Elements in Initializers

Labels as Values

Labels as Values

libgcc.a and Cross-Compilers

libgcc.a and Cross-Compilers

Locally Declared Labels

Locally Declared Labels

## M

M680x0 Options

M680x0 Options

M88K Options

M88K Options

Macros with Variable Numbers of Arguments

Macros with Variable Numbers of Arguments

Minimum and Maximum Operators in C++

Minimum and Maximum Operators in C++

MIPS Options

MIPS Options

Multiple Alternative Constraints

Multiple Alternative Constraints

## N

Named Return Values in C++

Named Return Values in C++

Naming an Expression's Type

Naming an Expression's Type

Nested Functions

Nested Functions

Non-Constant Initializers

Non-Constant Initializers

Non-Lvalue Arrays May Have Subscripts

Non-Lvalue Arrays May Have Subscripts

## O

offset-info option

offset-info option

Option Summary

Option Summary

Options Controlling C Dialect

Options Controlling C Dialect

Options Controlling the Kind of Output

Options Controlling the Kind of Output

Options Controlling the Preprocessor

Options Controlling the Preprocessor

Options for Code Generation Conventions

Options for Code Generation Conventions

Options for Debugging Your Program or GNU CC

Options for Debugging Your Program or GNU CC

Options for Directory Search

Options for Directory Search

Options for Linking

Options for Linking

options list:C dialect

Option Summary

options list:C++

Option Summary

options list:overall

Option Summary

options list:warning

Option Summary

Options that Control C++ Dialect

Options that Control C++ Dialect

Options That Control Optimization

Options That Control Optimization

Options to Request or Suppress Warnings

Options to Request or Suppress Warnings

Other VMS Issues

Other VMS Issues

## P

Passing Options to the Assembler

Passing Options to the Assembler

Preamble

Preamble

Problems Compiling Certain Programs

Problems Compiling Certain Programs

Protect Your Freedom

Protect Your Freedom; Fight "Look And Feel"

Prototypes and Old-Style Function Definitions

Prototypes and Old-Style Function Definitions

## R

Referring to a Type with typeof

Referring to a Type with typeof

Reporting Bugs

Reporting Bugs

Running protoize

Running protoize

## S

Sending Patches for GNU CC

Sending Patches for GNU CC

SH Options

SH Options

Simple Constraints

Simple Constraints

SPARC Options

SPARC Options

Specifying Attributes of Types

Specifying Attributes of Types

Specifying Attributes of Variables

Specifying Attributes of Variables

Specifying Registers for Local Variables

Specifying Registers for Local Variables

Specifying Target Machine and Compiler Version

Specifying Target Machine and Compiler Version

Standard Header File Directories

Standard Header File Directories

Standard Libraries

Standard Libraries

Statements and Declarations in Expressions

Statements and Declarations in Expressions

Steps of Cross-Compilation

Steps of Cross-Compilation

System V Options

System V Options

## T

Temporaries May Vanish Before You Expect

Temporaries May Vanish Before You Expect

Terms & Conditions For Copying, Distribution And Modification

Terms & Conditions For Copying, Distribution And Modification

The Character ESC in Constants

The Character ESC in Constants

Tools and Libraries for a Cross-Compiler

Tools and Libraries for a Cross-Compiler

Type Abstraction using Signatures

Type Abstraction using Signatures

## U

Using gcov with GCC Optimization

Using gcov with GCC Optimization

Using GNU CC on VMS

Using GNU CC on VMS

## V

Variables in Specified Registers

Variables in Specified Registers

VAX Options

VAX Options

## W

Warning Messages and Error Messages

Warning Messages and Error Messages

Where to Report Bugs

Where to Report Bugs

Where's the Template?

Where's the Template?