c-common.c (cb_register_builtins): If C++, define __EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.

* c-common.c (cb_register_builtins): If C++, define
	__EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.
	* gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION.
cp:
	* lang-specs.h: Simplify in accordance with new code in
	c-common.c.

From-SVN: r55924
This commit is contained in:
Neil Booth 2002-08-01 06:25:06 +00:00 committed by Neil Booth
parent 4078b403a7
commit abecfc8f7b
4 changed files with 22 additions and 20 deletions

View File

@ -1,3 +1,12 @@
2002-08-01 Neil Booth <neil@daikokuya.co.uk>
* c-common.c (cb_register_builtins): If C++, define
__EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.
* gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION.
cp:
* lang-specs.h: Simplify in accordance with new code in
c-common.c.
2002-08-01 Neil Booth <neil@daikokuya.co.uk>
* c-common.c: Define all C/ObjC/C++ warning and flag variables.

View File

@ -4728,6 +4728,11 @@ cb_register_builtins (pfile)
cpp_define (pfile, "__GXX_WEAK__=1");
else
cpp_define (pfile, "__GXX_WEAK__=0");
if (flag_exceptions)
cpp_define (pfile, "__EXCEPTIONS");
if (warn_deprecated)
cpp_define (pfile, "__DEPRECATED");
cpp_define (pfile, "__GXX_ABI_VERSION__=101");
}
/* libgcc needs to know this. */

View File

@ -33,28 +33,16 @@ Boston, MA 02111-1307, USA. */
{".c++", "@c++", 0},
{".C", "@c++", 0},
{"@c++",
/* cc1plus has an integrated ISO C preprocessor. We should invoke
the external preprocessor if -save-temps is given. */
/* We should convert -ansi to -std=c++98 even if -fpreprocessed,
to get dollars in identifiers correct. */
"%{E|M|MM:cc1plus -E %{!no-gcc:-D__GNUG__=%v1}\
%{!Wno-deprecated:-D__DEPRECATED}\
%{!fno-exceptions:-D__EXCEPTIONS}\
%{ansi:-D__STRICT_ANSI__ -trigraphs -$} %(cpp_options) %2\
%(cpp_debug_options)}\
%{ansi:-std=c++98} %(cpp_options) %2 %(cpp_debug_options)}\
%{!E:%{!M:%{!MM:\
%{save-temps:cc1plus -E \
%{!no-gcc:-D__GNUG__=%v1}\
%{!Wno-deprecated:-D__DEPRECATED}\
%{!fno-exceptions:-D__EXCEPTIONS}\
%{ansi:-D__STRICT_ANSI__ -trigraphs -$}\
%(cpp_options) %2 %b.ii \n}\
%{save-temps:cc1plus -E %{!no-gcc:-D__GNUG__=%v1}\
%{ansi:-std=c++98} %(cpp_options) %2 %b.ii \n}\
cc1plus %{save-temps:-fpreprocessed %b.ii}\
%{!save-temps:%(cpp_unique_options)\
%{!no-gcc:-D__GNUG__=%v1} \
%{!Wno-deprecated:-D__DEPRECATED}\
%{!fno-exceptions:-D__EXCEPTIONS}\
%{ansi:-D__STRICT_ANSI__}}\
%{ansi:-trigraphs -$}\
%(cc1_options) %2 %{+e1*}\
%{!save-temps:%(cpp_unique_options) %{!no-gcc:-D__GNUG__=%v1}}\
%{ansi:-std=c++98} %(cc1_options) %2 %{+e1*}\
%{!fsyntax-only:%(invoke_as)}}}}",
CPLUSPLUS_CPP_SPEC},
{".ii", "@c++-cpp-output", 0},

View File

@ -675,7 +675,7 @@ static const char *cpp_unique_options =
%{MMD:-MMD %W{!o: %b.d}%W{o*:%.d%*}}\
%{M} %{MM} %W{MF*} %{MG} %{MP} %{MQ*} %{MT*}\
%{!E:%{!M:%{!MM:%{MD|MMD:%{o*:-MQ %*}}}}}\
%{!no-gcc:-D__GNUC__=%v1 -D__GNUC_MINOR__=%v2 -D__GNUC_PATCHLEVEL__=%v3 -D__GXX_ABI_VERSION=101}\
%{!no-gcc:-D__GNUC__=%v1 -D__GNUC_MINOR__=%v2 -D__GNUC_PATCHLEVEL__=%v3}\
%{!undef:%{!ansi:%{!std=*:%p}%{std=gnu*:%p}} %P} %{trigraphs}\
%{remap} %{g3:-dD} %{H} %C %{D*&U*&A*} %{i*} %Z %i\
%{E|M|MM:%W{o*}}";