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,
__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>

View File

@ -1,6 +1,8 @@
2000-04-10 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* 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>

View File

@ -419,7 +419,7 @@ int flag_access_control = 1;
/* 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
constructors if it is a null pointer. */
@ -789,7 +789,7 @@ lang_decode_option (argc, argv)
}
else if (!strcmp (p, "-ansi"))
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
/* 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

View File

@ -103,17 +103,17 @@ in the following sections.
@item C++ Language Options
@xref{C++ Dialect Options,,Options Controlling C++ Dialect}.
@smallexample
-fno-access-control -fcheck-new -fconserve-space -fdollars-in-identifiers
-fno-elide-constructors -fexternal-templates -ffor-scope
-fno-for-scope -fno-gnu-keywords -fguiding-decls
-fhonor-std -fhuge-objects -fno-implicit-templates -finit-priority
-fno-implement-inlines -fname-mangling-version-@var{n} -fno-default-inline
-foperator-names -fno-optional-diags -fpermissive -frepo -fstrict-prototype
-fsquangle -ftemplate-depth-@var{n} -fuse-cxa-atexit -fvtable-thunks
-nostdinc++ -Wctor-dtor-privacy -Wno-deprecated -Weffc++
-Wno-non-template-friend
-Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual
-Wno-pmf-conversions -Wreorder -Wsign-promo -Wsynth
-fno-access-control -fcheck-new -fconserve-space
-fdollars-in-identifiers -fno-elide-constructors -fexternal-templates
-ffor-scope -fno-for-scope -fno-gnu-keywords -fguiding-decls -fhonor-std
-fhuge-objects -fno-implicit-templates -finit-priority
-fno-implement-inlines -fname-mangling-version-@var{n}
-fno-default-inline -fno-operator-names -fno-optional-diags -fpermissive
-frepo -fstrict-prototype -fsquangle -ftemplate-depth-@var{n}
-fuse-cxa-atexit -fvtable-thunks -nostdinc++ -Wctor-dtor-privacy
-Wno-deprecated -Weffc++ -Wno-non-template-friend -Wnon-virtual-dtor
-Wold-style-cast -Woverloaded-virtual -Wno-pmf-conversions -Wreorder
-Wsign-promo -Wsynth
@end smallexample
@item Warning Options
@ -672,19 +672,17 @@ from C, such as C++ and Objective C) that the compiler accepts:
@cindex ANSI support
@item -ansi
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"?
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
predefined macros such as @code{unix} and @code{vax} that identify the
type of system you are using. It also enables the undesirable and
rarely used ANSI trigraph feature. For the C compiler,
it disables recognition of C++ style @samp{//} comments as well as
the @code{inline} keyword. For the C++ compiler,
@samp{-foperator-names} is enabled as well.
the @code{inline} keyword.
The alternate keywords @code{__asm__}, @code{__extension__},
@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
libgcc} must be built with the same setting of this option.
@item -foperator-names
Recognize the operator name keywords @code{and}, @code{bitand},
@item -fno-operator-names
Do not treat the operator name keywords @code{and}, @code{bitand},
@code{bitor}, @code{compl}, @code{not}, @code{or} and @code{xor} as
synonyms for the symbols they refer to. @samp{-ansi} implies
@samp{-foperator-names}.
synonyms as keywords.
@item -fno-optional-diags
Disable diagnostics that the standard says a compiler does not need to