-.\" Copyright (c) 1991, 1992, 1993, 1994 Free Software Foundation -*-Text-*-
+.\" Copyright (c) 1991, 1992, 1993, 1994, 2000 Free Software Foundation -*-Text-*-
.\" See section COPYING for conditions for redistribution
.\"
.\" Set up \*(lq, \*(rq if -man hasn't already set it up.
.if n .sp
.if t .sp 0.4
..
-.Id $Id: gcc.1,v 1.10 1999/06/02 01:37:02 law Exp $
+.Id $Id: gcc.1,v 1.13 1999/11/02 10:23:46 law Exp $
.TH GCC 1 "\*(Dt" "GNU Tools" "GNU Tools"
.SH NAME
gcc, g++ \- GNU project C and C++ Compiler (gcc-2.96)
.TP
.B Language Options
\-ansi
-\-fall\-virtual
\-fcond\-mismatch
\-fdollars\-in\-identifiers
-\-fenum\-int\-equiv
\-fexternal\-templates
\-fno\-asm
\-fno\-builtin
\-fno\-strict\-prototype
\-fsigned\-bitfields
\-fsigned\-char
-\-fthis\-is\-variable
\-funsigned\-bitfields
\-funsigned\-char
\-fwritable\-strings
\-Wchar\-subscript
\-Wcomment
\-Wconversion
-\-Wenum\-clash
\-Werror
\-Wformat
.RI \-Wid\-clash\- len
\-Wshadow
\-Wstrict\-prototypes
\-Wswitch
-\-Wtemplate\-debugging
\-Wtraditional
\-Wtrigraphs
\-Wuninitialized
\-mpa\-risc\-1\-0
\-mpa\-risc\-1\-1
\-mkernel
-\-mshared\-libs
-\-mno\-shared\-libs
\-mlong\-calls
\-mdisable\-fpregs
\-mdisable\-indexing
For details, see the GNU C Manual; the duplicate list here
has been deleted so that we won't get complaints when it
is out of date.
-.Sp
-But one note about C++ programs only (not C). `\|\c
-.B \-traditional\c
-\&\|' has one additional effect for C++: assignment to
-.B this
-is permitted. This is the same as the effect of `\|\c
-.B \-fthis\-is\-variable\c
-\&\|'.
.TP
.B \-traditional\-cpp
Attempt to support some aspects of traditional C preprocessors.
\&\|' by default on some target systems
but not others.)
.TP
-.B \-fenum\-int\-equiv
-Permit implicit conversion of \c
-.B int\c
-\& to enumeration types (C++
-only). Normally GNU C++ allows conversion of \c
-.B enum\c
-\& to \c
-.B int\c
-\&,
-but not the other way around.
-.TP
.B \-fexternal\-templates
Produce smaller code for template declarations, by generating only a
single copy of each template function where it is defined (C++ only).
\&\|', all template instantiations are
explicitly internal.
.TP
-.B \-fall\-virtual
-Treat all possible member functions as virtual, implicitly. All
-member functions (except for constructor functions and
-.B new
-or
-.B delete
-member operators) are treated as virtual functions of the class where
-they appear.
-.Sp
-This does not mean that all calls to these member functions will be
-made through the internal table of virtual functions. Under some
-circumstances, the compiler can determine that a call to a given
-virtual function can be made directly; in these cases the calls are
-direct in any case.
-.TP
.B \-fcond\-mismatch
Allow conditional expressions with mismatched types in the second and
third arguments. The value of such an expression is void.
.TP
-.B \-fthis\-is\-variable
-Permit assignment to \c
-.B this\c
-\& (C++ only). The incorporation of
-user-defined free store management into C++ has made assignment to
-`\|\c
-.B this\c
-\&\|' an anachronism. Therefore, by default it is invalid to
-assign to \c
-.B this\c
-\& within a class member function. However, for
-backwards compatibility, you can make it valid with
-`\|\c
-.B \-fthis-is-variable\c
-\&\|'.
-.TP
.B \-funsigned\-char
Let the type \c
.B char\c
.B \-Wparentheses
Warn if parentheses are omitted in certain contexts.
.TP
-.B \-Wtemplate\-debugging
-When using templates in a C++ program, warn if debugging is not yet
-fully available (C++ only).
-.TP
.B \-Wall
All of the above `\|\c
.B \-W\c
Warn if anything is declared more than once in the same scope, even in
cases where multiple declaration is valid and changes nothing.
.TP
-.B \-Wnested-externs
-Warn if an \c
-.B extern\c
-\& declaration is encountered within an function.
-.TP
-.B \-Wenum\-clash
-Warn about conversion between different enumeration types (C++ only).
-.TP
.B \-Wlong-long
Warn if
.B long long \c
\& instructions instead. This avoids a rather serious
bug in the HP-UX linker.
.TP
-.B \-mshared-libs
-Generate code that can be linked against HP-UX shared libraries. This option
-is not fully function yet, and is not on by default for any PA target. Using
-this option can cause incorrect code to be generated by the compiler.
-.TP
-.B \-mno-shared-libs
-Don't generate code that will be linked against shared libraries. This is
-the default for all PA targets.
-.TP
.B \-mlong-calls
Generate code which allows calls to functions greater than 256K away from
the caller when the caller and callee are in the same source file. Do
if available, else
.B /tmp\c
\&).
+.SH "EXIT STATUS"
+Normally the exit status is 0, if compilation or link edit are successful,
+and nonzero else. The option
+.B -Werror
+treats each warning as an error.
.SH "SEE ALSO"
cpp(1), as(1), ld(1), gdb(1), adb(1), dbx(1), sdb(1).
.br