xref: /openbsd/gnu/usr.bin/gcc/gcc/doc/gcc.texi (revision c87b03e5)
1\input texinfo  @c -*-texinfo-*-
2@c %**start of header
3@setfilename gcc.info
4@c INTERNALS is used by md.texi to determine whether to include the
5@c whole of that file, in the internals manual, or only the part
6@c dealing with constraints, in the user manual.
7@clear INTERNALS
8
9@c NOTE: checks/things to do:
10@c
11@c -have bob do a search in all seven files for "mew" (ideally --mew,
12@c  but i may have forgotten the occasional "--"..).
13@c     Just checked... all have `--'!  Bob 22Jul96
14@c     Use this to search:   grep -n '\-\-mew' *.texi
15@c -item/itemx, text after all (sub/sub)section titles, etc..
16@c -consider putting the lists of options on pp 17--> etc in columns or
17@c  some such.
18@c -overfulls.  do a search for "mew" in the files, and you will see
19@c   overfulls that i noted but could not deal with.
20@c -have to add text:  beginning of chapter 8
21
22@c
23@c anything else?                       --mew 10feb93
24
25@include gcc-common.texi
26
27@settitle Using the GNU Compiler Collection (GCC)
28
29@c Create a separate index for command line options.
30@defcodeindex op
31@c Merge the standard indexes into a single one.
32@syncodeindex fn cp
33@syncodeindex vr cp
34@syncodeindex ky cp
35@syncodeindex pg cp
36@syncodeindex tp cp
37
38@c %**end of header
39
40@c Use with @@smallbook.
41
42@c Cause even numbered pages to be printed on the left hand side of
43@c the page and odd numbered pages to be printed on the right hand
44@c side of the page.  Using this, you can print on both sides of a
45@c sheet of paper and have the text on the same part of the sheet.
46
47@c The text on right hand pages is pushed towards the right hand
48@c margin and the text on left hand pages is pushed toward the left
49@c hand margin.
50@c (To provide the reverse effect, set bindingoffset to -0.75in.)
51
52@c @tex
53@c \global\bindingoffset=0.75in
54@c \global\normaloffset =0.75in
55@c @end tex
56
57@c Change the font used for @def... commands, since the default
58@c proportional one used is bad for names starting __.
59@tex
60\global\setfont\defbf\ttbshape{10}{\magstep1}
61@end tex
62
63@copying
64Copyright @copyright{} 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
651999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
66
67Permission is granted to copy, distribute and/or modify this document
68under the terms of the GNU Free Documentation License, Version 1.2 or
69any later version published by the Free Software Foundation; with the
70Invariant Sections being ``GNU General Public License'' and ``Funding
71Free Software'', the Front-Cover texts being (a) (see below), and with
72the Back-Cover Texts being (b) (see below).  A copy of the license is
73included in the section entitled ``GNU Free Documentation License''.
74
75(a) The FSF's Front-Cover Text is:
76
77     A GNU Manual
78
79(b) The FSF's Back-Cover Text is:
80
81     You have freedom to copy and modify this GNU Manual, like GNU
82     software.  Copies published by the Free Software Foundation raise
83     funds for GNU development.
84@end copying
85@ifnottex
86@dircategory Programming
87@direntry
88* gcc: (gcc).                  The GNU Compiler Collection.
89@end direntry
90This file documents the use of the GNU compilers.
91@sp 1
92Published by the Free Software Foundation@*
9359 Temple Place - Suite 330@*
94Boston, MA 02111-1307 USA
95@sp 1
96@insertcopying
97@sp 1
98@end ifnottex
99
100@setchapternewpage odd
101@titlepage
102@center @titlefont{Using the GNU Compiler Collection}
103@sp 2
104@center Richard M. Stallman
105@sp 3
106@center Last updated 30 December 2002
107@sp 1
108
109@center for GCC @value{version-GCC}
110@page
111@vskip 0pt plus 1filll
112For GCC Version @value{version-GCC}@*
113@sp 1
114Published by the Free Software Foundation @*
11559 Temple Place---Suite 330@*
116Boston, MA 02111-1307, USA@*
117Last printed April, 1998.@*
118Printed copies are available for $50 each.@*
119@c Update this ISBN when printing a new edition.
120@ifset FSFPRINT
121ISBN 1-882114-37-X
122@end ifset
123@sp 1
124@insertcopying
125@end titlepage
126@summarycontents
127@contents
128@page
129
130@node Top, G++ and GCC,, (DIR)
131@top Introduction
132@cindex introduction
133
134This manual documents how to use the GNU compilers,
135as well as their features and incompatibilities, and how to report
136bugs.  It corresponds to GCC version @value{version-GCC}.
137The internals of the GNU compilers, including how to port them to new
138targets and some information about how to write front ends for new
139languages, are documented in a separate manual.  @xref{Top,,
140Introduction, gccint, GNU Compiler Collection (GCC) Internals}.
141
142@menu
143* G++ and GCC::     You can compile C or C++ programs.
144* Standards::       Language standards supported by GCC.
145* Invoking GCC::    Command options supported by @samp{gcc}.
146* C Implementation:: How GCC implements the ISO C specification.
147* C Extensions::    GNU extensions to the C language family.
148* C++ Extensions::  GNU extensions to the C++ language.
149* Objective-C::     GNU Objective-C runtime features.
150* Compatibility::   Binary Compatibility
151* Gcov::            @command{gcov}---a test coverage program.
152* Trouble::         If you have trouble using GCC.
153* Bugs::            How, why and where to report bugs.
154* Service::         How to find suppliers of support for GCC.
155* Contributing::    How to contribute to testing and developing GCC.
156
157* Funding::         How to help assure funding for free software.
158* GNU Project::     The GNU Project and GNU/Linux.
159
160* Copying::         GNU General Public License says
161                     how you can copy and share GCC.
162* GNU Free Documentation License:: How you can copy and share this manual.
163* Contributors::    People who have contributed to GCC.
164
165* Option Index::    Index to command line options.
166* Keyword Index::    Index of concepts and symbol names.
167@end menu
168
169@include frontends.texi
170@include standards.texi
171@include invoke.texi
172@include extend.texi
173@include objc.texi
174@include compat.texi
175@include gcov.texi
176@include trouble.texi
177@include bugreport.texi
178@include service.texi
179@include contribute.texi
180
181@include funding.texi
182@include gnu.texi
183@include gpl.texi
184
185@c ---------------------------------------------------------------------
186@c GFDL
187@c ---------------------------------------------------------------------
188
189@include fdl.texi
190
191@include contrib.texi
192
193@c ---------------------------------------------------------------------
194@c Indexes
195@c ---------------------------------------------------------------------
196
197@node Option Index
198@unnumbered Option Index
199
200GCC's command line options are indexed here without any initial @samp{-}
201or @samp{--}.  Where an option has both positive and negative forms
202(such as @option{-f@var{option}} and @option{-fno-@var{option}}),
203relevant entries in the manual are indexed under the most appropriate
204form; it may sometimes be useful to look up both forms.
205
206@printindex op
207
208@node Keyword Index
209@unnumbered Keyword Index
210
211@printindex cp
212
213@c ---------------------------------------------------------------------
214@c Epilogue
215@c ---------------------------------------------------------------------
216
217@bye
218