* gcc.c (cpp_options): Define __NO_INLINE__ unless we are honoring
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 5 May 2001 12:29:39 +0000 (12:29 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 5 May 2001 12:29:39 +0000 (12:29 +0000)
"inline" keyword.
* cpp.texi (__NO_INLINE): Document it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41866 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/cpp.texi
gcc/gcc.c

index 0672757..83355b1 100644 (file)
@@ -1,3 +1,9 @@
+2001-05-05  Jakub Jelinek  <jakub@redhat.com
+
+       * gcc.c (cpp_options): Define __NO_INLINE__ unless we are honoring
+       "inline" keyword.
+       * cpp.texi (__NO_INLINE): Document it.
+
 2001-05-05  Neil Booth  <neil@daikokuya.demon.co.uk>
 
        * cppfiles.c (struct include_file): New member err_no.
index 5854427..ba50a26 100644 (file)
@@ -1200,6 +1200,16 @@ for some system library functions.  You should not refer to or test the
 definition of this macro unless you make very sure that programs will
 execute with the same effect regardless.
 
+@item __NO_INLINE__
+@findex __NO_INLINE__
+GNU CC defines this macro if it will not attempt to inline functions
+with @samp{inline} keyword (either when not optimizing or when inlining
+has been explicitely forbidden through @samp{-fno-inline}).  It causes
+certain GNU header files to define alternative macro definitions for some
+system library functions.  You should not refer to or test the definition
+of this macro unless you make very sure that programs will execute with
+the same effect regardless.
+
 @item __CHAR_UNSIGNED__
 @findex __CHAR_UNSIGNED__
 GNU C defines this macro if and only if the data type @code{char} is
index 643345e..34047e6 100644 (file)
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -647,7 +647,7 @@ static const char *cpp_options =
  %{!no-gcc:-D__GNUC__=%v1 -D__GNUC_MINOR__=%v2 -D__GNUC_PATCHLEVEL__=%v3}\
  %{!undef:%{!ansi:%{!std=*:%p}%{std=gnu*:%p}} %P} %{trigraphs}\
  %c %{Os:-D__OPTIMIZE_SIZE__} %{O*:%{!O0:-D__OPTIMIZE__}}\
- %{ffast-math:-D__FAST_MATH__}\
+ %{fno-inline|O0|!O*:-D__NO_INLINE__} %{ffast-math:-D__FAST_MATH__}\
  %{fshort-wchar:-U__WCHAR_TYPE__ -D__WCHAR_TYPE__=short\\ unsigned\\ int}\
  %{ffreestanding:-D__STDC_HOSTED__=0} %{fno-hosted:-D__STDC_HOSTED__=0}\
  %{!ffreestanding:%{!fno-hosted:-D__STDC_HOSTED__=1}}\