X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=libcpp%2Fsystem.h;h=5bdfeeda018c5aea26e9eb5e665c66b3a95f0bc6;hb=0591727a9d083d76618d8a57926932e63b0434d3;hp=560fa18406ba9f7ec4ef1ceee67e35a58617c418;hpb=077a3c999ec3b9553024d85edb14f08c78a8e6c8;p=pf3gnuchains%2Fgcc-fork.git diff --git a/libcpp/system.h b/libcpp/system.h index 560fa18406b..5bdfeeda018 100644 --- a/libcpp/system.h +++ b/libcpp/system.h @@ -1,13 +1,13 @@ /* Get common system includes and various definitions and declarations based on autoconf macros. - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 Free Software Foundation, Inc. -This file is part of libcpp (aka cpplib). +This file is part of GCC. GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free -Software Foundation; either version 2, or (at your option) any later +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING. If not, write to the Free -Software Foundation, 59 Temple Place - Suite 330, Boston, MA -02111-1307, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef LIBCPP_SYSTEM_H @@ -30,6 +29,12 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #ifdef HAVE_STDDEF_H # include #endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif #include @@ -38,6 +43,11 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #define NULL 0 #endif +/* Use the unlocked open routines from libiberty. */ +#define fopen(PATH,MODE) fopen_unlocked(PATH,MODE) +#define fdopen(FILDES,MODE) fdopen_unlocked(FILDES,MODE) +#define freopen(PATH,MODE,STREAM) freopen_unlocked(PATH,MODE,STREAM) + /* The compiler is not a multi-threaded application and therefore we do not have to use the locking functions. In fact, using the locking functions can cause the compiler to be significantly slower under @@ -337,10 +347,14 @@ extern void abort (void); #include "libiberty.h" #include "safe-ctype.h" -/* 1 if we have C99 designated initializers. */ +/* 1 if we have C99 designated initializers. + + ??? C99 designated initializers are not supported by most C++ + compilers, including G++. -- gdr, 2005-05-18 */ #if !defined(HAVE_DESIGNATED_INITIALIZERS) #define HAVE_DESIGNATED_INITIALIZERS \ - ((GCC_VERSION >= 2007) || (__STDC_VERSION__ >= 199901L)) + ((!defined(__cplusplus) && (GCC_VERSION >= 2007)) \ + || (__STDC_VERSION__ >= 199901L)) #endif /* Be conservative and only use enum bitfields with GCC. @@ -374,7 +388,9 @@ extern void abort (void); #undef TRUE #undef FALSE +#ifndef __cplusplus #define bool unsigned char +#endif #define true 1 #define false 0