Commit 8648c55f by Sandra Loosemore Committed by Sandra Loosemore

invoke.texi (-fgnu89-inline): Remove discussion about old GCC versions.

2015-03-11  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi (-fgnu89-inline): Remove discussion about 
	old GCC versions.
	(-fabi-compat-version): Likewise.
	(-ffriend-injection): Likewise.
	(-Wdeclaration-after-statement): Likewise.
	(-fomit-frame-pointer): Likewise.
	(-ftree-coalesce-inlined-vars): Likewise.
	(-fvisibility=): Likewise.
	* doc/extend.texi (Typeof): Likewise.
	(Zero Length): Likewise.
	(Escaped Newlines): Likewise.
	(Compound Literals): Likewise.
	(Function Attributes): Likewise.
	(Label Attributes): Likewise.
	(Type Attributes): Likewise.
	(Function Names): Likewise.
	(Other Builtins): Likewise.
	(Function Specific Option Pragmas): Likewise.
	(C++ Interface): Likewise.

From-SVN: r221364
parent 17abb5ac
2015-03-11 Sandra Loosemore <sandra@codesourcery.com>
* doc/invoke.texi (-fgnu89-inline): Remove discussion about
old GCC versions.
(-fabi-compat-version): Likewise.
(-ffriend-injection): Likewise.
(-Wdeclaration-after-statement): Likewise.
(-fomit-frame-pointer): Likewise.
(-ftree-coalesce-inlined-vars): Likewise.
(-fvisibility=): Likewise.
* doc/extend.texi (Typeof): Likewise.
(Zero Length): Likewise.
(Escaped Newlines): Likewise.
(Compound Literals): Likewise.
(Function Attributes): Likewise.
(Label Attributes): Likewise.
(Type Attributes): Likewise.
(Function Names): Likewise.
(Other Builtins): Likewise.
(Function Specific Option Pragmas): Likewise.
(C++ Interface): Likewise.
2015-03-11 Thomas Schwinge <thomas@codesourcery.com> 2015-03-11 Thomas Schwinge <thomas@codesourcery.com>
* config/nvptx/nvptx.h (LIBSTDCXX): Define to "gcc". * config/nvptx/nvptx.h (LIBSTDCXX): Define to "gcc".
......
...@@ -1777,17 +1777,15 @@ releases. ...@@ -1777,17 +1777,15 @@ releases.
@opindex fgnu89-inline @opindex fgnu89-inline
The option @option{-fgnu89-inline} tells GCC to use the traditional The option @option{-fgnu89-inline} tells GCC to use the traditional
GNU semantics for @code{inline} functions when in C99 mode. GNU semantics for @code{inline} functions when in C99 mode.
@xref{Inline,,An Inline Function is As Fast As a Macro}. This option @xref{Inline,,An Inline Function is As Fast As a Macro}.
is accepted and ignored by GCC versions 4.1.3 up to but not including Using this option is roughly equivalent to adding the
4.3. In GCC versions 4.3 and later it changes the behavior of GCC in
C99 mode. Using this option is roughly equivalent to adding the
@code{gnu_inline} function attribute to all inline functions @code{gnu_inline} function attribute to all inline functions
(@pxref{Function Attributes}). (@pxref{Function Attributes}).
The option @option{-fno-gnu89-inline} explicitly tells GCC to use the The option @option{-fno-gnu89-inline} explicitly tells GCC to use the
C99 semantics for @code{inline} when in C99 or gnu99 mode (i.e., it C99 semantics for @code{inline} when in C99 or gnu99 mode (i.e., it
specifies the default behavior). This option was first supported in specifies the default behavior).
GCC 4.3. This option is not supported in @option{-std=c90} or This option is not supported in @option{-std=c90} or
@option{-std=gnu90} mode. @option{-std=gnu90} mode.
The preprocessor macros @code{__GNUC_GNU_INLINE__} and The preprocessor macros @code{__GNUC_GNU_INLINE__} and
...@@ -2122,7 +2120,7 @@ See also @option{-Wabi}. ...@@ -2122,7 +2120,7 @@ See also @option{-Wabi}.
@item -fabi-compat-version=@var{n} @item -fabi-compat-version=@var{n}
@opindex fabi-compat-version @opindex fabi-compat-version
Starting with GCC 4.5, on targets that support strong aliases, G++ On targets that support strong aliases, G++
works around mangling changes by creating an alias with the correct works around mangling changes by creating an alias with the correct
mangled name when defining a symbol with an incorrect mangled name. mangled name when defining a symbol with an incorrect mangled name.
This switch specifies which ABI version to use for the alias. This switch specifies which ABI version to use for the alias.
...@@ -2183,11 +2181,10 @@ deprecated, and may be removed in a future version of G++. ...@@ -2183,11 +2181,10 @@ deprecated, and may be removed in a future version of G++.
Inject friend functions into the enclosing namespace, so that they are Inject friend functions into the enclosing namespace, so that they are
visible outside the scope of the class in which they are declared. visible outside the scope of the class in which they are declared.
Friend functions were documented to work this way in the old Annotated Friend functions were documented to work this way in the old Annotated
C++ Reference Manual, and versions of G++ before 4.1 always worked C++ Reference Manual.
that way. However, in ISO C++ a friend function that is not declared However, in ISO C++ a friend function that is not declared
in an enclosing scope can only be found using argument dependent in an enclosing scope can only be found using argument dependent
lookup. This option causes friends to be injected as they were in lookup. GCC defaults to the standard behavior.
earlier releases.
This option is for compatibility, and may be removed in a future This option is for compatibility, and may be removed in a future
release of G++. release of G++.
...@@ -4546,8 +4543,7 @@ except when the same as the default promotion. ...@@ -4546,8 +4543,7 @@ except when the same as the default promotion.
@opindex Wno-declaration-after-statement @opindex Wno-declaration-after-statement
Warn when a declaration is found after a statement in a block. This Warn when a declaration is found after a statement in a block. This
construct, known from C++, was introduced with ISO C99 and is by default construct, known from C++, was introduced with ISO C99 and is by default
allowed in GCC@. It is not supported by ISO C90 and was not supported by allowed in GCC@. It is not supported by ISO C90. @xref{Mixed Declarations}.
GCC versions before GCC 3.0. @xref{Mixed Declarations}.
@item -Wundef @item -Wundef
@opindex Wundef @opindex Wundef
...@@ -7594,11 +7590,10 @@ machine-description macro @code{FRAME_POINTER_REQUIRED} controls ...@@ -7594,11 +7590,10 @@ machine-description macro @code{FRAME_POINTER_REQUIRED} controls
whether a target machine supports this flag. @xref{Registers,,Register whether a target machine supports this flag. @xref{Registers,,Register
Usage, gccint, GNU Compiler Collection (GCC) Internals}. Usage, gccint, GNU Compiler Collection (GCC) Internals}.
Starting with GCC version 4.6, the default setting (when not optimizing for The default setting (when not optimizing for
size) for 32-bit GNU/Linux x86 and 32-bit Darwin x86 targets has been changed to size) for 32-bit GNU/Linux x86 and 32-bit Darwin x86 targets is
@option{-fomit-frame-pointer}. The default can be reverted to @option{-fomit-frame-pointer}. You can configure GCC with the
@option{-fno-omit-frame-pointer} by configuring GCC with the @option{--enable-frame-pointer} configure option to change the default.
@option{--enable-frame-pointer} configure option.
Enabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}. Enabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}.
...@@ -8820,8 +8815,7 @@ from other functions. It is a more limited form of ...@@ -8820,8 +8815,7 @@ from other functions. It is a more limited form of
@option{-ftree-coalesce-vars}. This may harm debug information of such @option{-ftree-coalesce-vars}. This may harm debug information of such
inlined variables, but it keeps variables of the inlined-into inlined variables, but it keeps variables of the inlined-into
function apart from each other, such that they are more likely to function apart from each other, such that they are more likely to
contain the expected values in a debugging session. This was the contain the expected values in a debugging session.
default in GCC versions older than 4.7.
@item -ftree-coalesce-vars @item -ftree-coalesce-vars
@opindex ftree-coalesce-vars @opindex ftree-coalesce-vars
...@@ -23814,9 +23808,7 @@ available to be linked against from outside the shared object. ...@@ -23814,9 +23808,7 @@ available to be linked against from outside the shared object.
@samp{protected} and @samp{internal} are pretty useless in real-world @samp{protected} and @samp{internal} are pretty useless in real-world
usage so the only other commonly used option is @samp{hidden}. usage so the only other commonly used option is @samp{hidden}.
The default if @option{-fvisibility} isn't specified is The default if @option{-fvisibility} isn't specified is
@samp{default}, i.e., make every @samp{default}, i.e., make every symbol public.
symbol public---this causes the same behavior as previous versions of
GCC@.
A good explanation of the benefits offered by ensuring ELF A good explanation of the benefits offered by ensuring ELF
symbols have the correct visibility is given by ``How To Write symbols have the correct visibility is given by ``How To Write
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment