diff options
author | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-05-01 20:30:40 +0000 |
---|---|---|
committer | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-05-01 20:30:40 +0000 |
commit | d569036d2e5a8de9a0f2050452bd7164c898c3e1 (patch) | |
tree | b79d0c9275e02095576cbc327005a01a02258d58 /gcc/doc/cpp.texi | |
parent | 72f9fc81c376de6549ee1a94edb1dd44bff214a5 (diff) | |
download | gcc-d569036d2e5a8de9a0f2050452bd7164c898c3e1.tar.gz |
* c-cppbuiltin.c (c_cpp_builtins): Do not define __GXX_WEAK__ to 1
if !flag_weak.
* doc/cpp.texi (__DEPRECATED): Document.
(__EXCEPTIONS): Likewise.
(__GXX_WEAK__): Likewise.
* g++.dg/cpp/weak.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99080 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc/cpp.texi')
-rw-r--r-- | gcc/doc/cpp.texi | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/doc/cpp.texi b/gcc/doc/cpp.texi index 02cb4b8d200..71bd4ee2677 100644 --- a/gcc/doc/cpp.texi +++ b/gcc/doc/cpp.texi @@ -2081,11 +2081,31 @@ respectively. They exist to make the standard header given numerical limits work correctly. You should not use these macros directly; instead, include the appropriate headers. +@item __DEPRECATED +This macro is defined, with value 1, when compiling a C++ source file +with warnings about deprecated constructs enabled. These warnings are +enabled by default, but can be disabled with @option{-Wno-deprecated}. + +@item __EXCEPTIONS +This macro is defined, with value 1, when compiling a C++ source file +with exceptions enabled. If @option{-fno-exceptions} was used when +compiling the file, then this macro will not be defined. + @item __USING_SJLJ_EXCEPTIONS__ This macro is defined, with value 1, if the compiler uses the old mechanism based on @code{setjmp} and @code{longjmp} for exception handling. +@item __GXX_WEAK__ +This macro is defined when compiling a C++ source file. It has the +value 1 if the compiler will use weak symbols, COMDAT sections, or +other similar techniques to collapse symbols with ``vague linkage'' +that are defined in multiple translation units. If the compiler will +not collapse such symbols, this macro is defined with value 0. In +general, user code should not need to make use of this macro; the +purpose of this macro is to ease implementation of the C++ runtime +library provided with G++. + @item __NEXT_RUNTIME__ This macro is defined, with value 1, if (and only if) the NeXT runtime (as in @option{-fnext-runtime}) is in use for Objective-C@. If the GNU |