invoke.texi (-ansi): Remove -foperator-names from list of implied options.

* invoke.texi (-ansi): Remove -foperator-names from list of
	implied options. Do not call it ANSI C++.
	(-foperator-names): Document as -fno-operator-names.
	* cp/decl2.c (flag_operator_names): Default to 1.
	(lang_decode_option): Do not set it for -ansi.

From-SVN: r33051
This commit is contained in:
Martin v. Löwis 2000-04-10 07:48:15 +00:00 committed by Martin v. Löwis
parent 62e3806d3a
commit 775afb2516
4 changed files with 24 additions and 22 deletions

View File

@ -2,6 +2,9 @@
* invoke.texi (-fno-gnu-keywords): Remove classof, headof, * invoke.texi (-fno-gnu-keywords): Remove classof, headof,
__classof__, and __headof__ from the list of gnu keywords. __classof__, and __headof__ from the list of gnu keywords.
(-ansi): Remove -foperator-names from list of implied options.
Do not call it ANSI C++.
(-foperator-names): Document as -fno-operator-names.
2000-04-09 Zack Weinberg <zack@wolery.cumb.org> 2000-04-09 Zack Weinberg <zack@wolery.cumb.org>

View File

@ -1,6 +1,8 @@
2000-04-10 Martin v. Löwis <loewis@informatik.hu-berlin.de> 2000-04-10 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* lex.c (init_parse): Remove traces of classof and headof. * lex.c (init_parse): Remove traces of classof and headof.
* decl2.c (flag_operator_names): Default to 1.
(lang_decode_option): Do not set it for -ansi.
2000-04-09 Mark Mitchell <mark@codesourcery.com> 2000-04-09 Mark Mitchell <mark@codesourcery.com>

View File

@ -419,7 +419,7 @@ int flag_access_control = 1;
/* Nonzero if we want to understand the operator names, i.e. 'bitand'. */ /* Nonzero if we want to understand the operator names, i.e. 'bitand'. */
int flag_operator_names; int flag_operator_names = 1;
/* Nonzero if we want to check the return value of new and avoid calling /* Nonzero if we want to check the return value of new and avoid calling
constructors if it is a null pointer. */ constructors if it is a null pointer. */
@ -789,7 +789,7 @@ lang_decode_option (argc, argv)
} }
else if (!strcmp (p, "-ansi")) else if (!strcmp (p, "-ansi"))
flag_no_nonansi_builtin = 1, flag_ansi = 1, flag_no_nonansi_builtin = 1, flag_ansi = 1,
flag_no_gnu_keywords = 1, flag_operator_names = 1; flag_no_gnu_keywords = 1;
#ifdef SPEW_DEBUG #ifdef SPEW_DEBUG
/* Undocumented, only ever used when you're invoking cc1plus by hand, since /* Undocumented, only ever used when you're invoking cc1plus by hand, since
it's probably safe to assume no sane person would ever want to use this it's probably safe to assume no sane person would ever want to use this

View File

@ -103,17 +103,17 @@ in the following sections.
@item C++ Language Options @item C++ Language Options
@xref{C++ Dialect Options,,Options Controlling C++ Dialect}. @xref{C++ Dialect Options,,Options Controlling C++ Dialect}.
@smallexample @smallexample
-fno-access-control -fcheck-new -fconserve-space -fdollars-in-identifiers -fno-access-control -fcheck-new -fconserve-space
-fno-elide-constructors -fexternal-templates -ffor-scope -fdollars-in-identifiers -fno-elide-constructors -fexternal-templates
-fno-for-scope -fno-gnu-keywords -fguiding-decls -ffor-scope -fno-for-scope -fno-gnu-keywords -fguiding-decls -fhonor-std
-fhonor-std -fhuge-objects -fno-implicit-templates -finit-priority -fhuge-objects -fno-implicit-templates -finit-priority
-fno-implement-inlines -fname-mangling-version-@var{n} -fno-default-inline -fno-implement-inlines -fname-mangling-version-@var{n}
-foperator-names -fno-optional-diags -fpermissive -frepo -fstrict-prototype -fno-default-inline -fno-operator-names -fno-optional-diags -fpermissive
-fsquangle -ftemplate-depth-@var{n} -fuse-cxa-atexit -fvtable-thunks -frepo -fstrict-prototype -fsquangle -ftemplate-depth-@var{n}
-nostdinc++ -Wctor-dtor-privacy -Wno-deprecated -Weffc++ -fuse-cxa-atexit -fvtable-thunks -nostdinc++ -Wctor-dtor-privacy
-Wno-non-template-friend -Wno-deprecated -Weffc++ -Wno-non-template-friend -Wnon-virtual-dtor
-Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual -Wold-style-cast -Woverloaded-virtual -Wno-pmf-conversions -Wreorder
-Wno-pmf-conversions -Wreorder -Wsign-promo -Wsynth -Wsign-promo -Wsynth
@end smallexample @end smallexample
@item Warning Options @item Warning Options
@ -672,19 +672,17 @@ from C, such as C++ and Objective C) that the compiler accepts:
@cindex ANSI support @cindex ANSI support
@item -ansi @item -ansi
In C mode, support all ANSI standard C programs. In C++ mode, In C mode, support all ANSI standard C programs. In C++ mode,
remove GNU extensions that conflict with ANSI C++. remove GNU extensions that conflict with ISO C++.
@c shouldn't we be saying "ISO"? @c shouldn't we be saying "ISO"?
This turns off certain features of GCC that are incompatible with ANSI This turns off certain features of GCC that are incompatible with ANSI
C (when compiling C code), or of ANSI standard C++ (when compiling C++ code), C (when compiling C code), or of standard C++ (when compiling C++ code),
such as the @code{asm} and @code{typeof} keywords, and such as the @code{asm} and @code{typeof} keywords, and
predefined macros such as @code{unix} and @code{vax} that identify the predefined macros such as @code{unix} and @code{vax} that identify the
type of system you are using. It also enables the undesirable and type of system you are using. It also enables the undesirable and
rarely used ANSI trigraph feature. For the C compiler, rarely used ANSI trigraph feature. For the C compiler,
it disables recognition of C++ style @samp{//} comments as well as it disables recognition of C++ style @samp{//} comments as well as
the @code{inline} keyword. For the C++ compiler, the @code{inline} keyword.
@samp{-foperator-names} is enabled as well.
The alternate keywords @code{__asm__}, @code{__extension__}, The alternate keywords @code{__asm__}, @code{__extension__},
@code{__inline__} and @code{__typeof__} continue to work despite @code{__inline__} and @code{__typeof__} continue to work despite
@ -1180,11 +1178,10 @@ template <class T, class U> void foo(T t);
Like all options that change the ABI, all C++ code, @emph{including Like all options that change the ABI, all C++ code, @emph{including
libgcc} must be built with the same setting of this option. libgcc} must be built with the same setting of this option.
@item -foperator-names @item -fno-operator-names
Recognize the operator name keywords @code{and}, @code{bitand}, Do not treat the operator name keywords @code{and}, @code{bitand},
@code{bitor}, @code{compl}, @code{not}, @code{or} and @code{xor} as @code{bitor}, @code{compl}, @code{not}, @code{or} and @code{xor} as
synonyms for the symbols they refer to. @samp{-ansi} implies synonyms as keywords.
@samp{-foperator-names}.
@item -fno-optional-diags @item -fno-optional-diags
Disable diagnostics that the standard says a compiler does not need to Disable diagnostics that the standard says a compiler does not need to