From: Martin v. Löwis Date: Mon, 10 Apr 2000 07:48:15 +0000 (+0000) Subject: invoke.texi (-ansi): Remove -foperator-names from list of implied options. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=775afb2516d17b4a3c63ffe7be4d7144a75fb0a1;p=gcc.git 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 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d96a274d9da..39c6402588b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index e47edb1a97a..0d773d9b94e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,6 +1,8 @@ 2000-04-10 Martin v. Löwis * 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 diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c index 5e370fd7169..ad4431fb86a 100644 --- a/gcc/cp/decl2.c +++ b/gcc/cp/decl2.c @@ -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 diff --git a/gcc/invoke.texi b/gcc/invoke.texi index bf83879b6ef..36176167286 100644 --- a/gcc/invoke.texi +++ b/gcc/invoke.texi @@ -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 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