Changeset 2187 for trunk/src/emx/include/sys/gnu
- Timestamp:
- Jul 3, 2005, 8:20:51 AM (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/emx/include/sys/gnu/cdefs.h
-
Property cvs2svn:cvs-rev
changed from
1.3
to1.4
r2186 r2187 1 /* Copyright (C) 1992-2001, 2002 Free Software Foundation, Inc.1 /* Copyright (C) 1992-2001, 2002, 2004, 2005 Free Software Foundation, Inc. 2 2 This file is part of the GNU C Library. 3 3 … … 18 18 19 19 /** 20 * GLIBC v2.3. 220 * GLIBC v2.3.4 CVS 21 21 * @changed bird: #ifndef'ed out a few clashes with the BSD cdefs.h. 22 22 * @changed bird: Workaround for RC & mozilla. … … 46 46 /* GCC can always grok prototypes. For C++ programs we add throw() 47 47 to help it optimize the function calls. But this works only with 48 gcc 2.8.x and egcs. */ 48 gcc 2.8.x and egcs. For gcc 3.2 and up we even mark C functions 49 as non-throwing using a function attribute since programs can use 50 the -fexceptions options for C code as well. */ 51 # if !defined __cplusplus && __GNUC_PREREQ (3, 3) 52 # define __THROW __attribute__ ((__nothrow__)) 53 # define __NTH(fct) __attribute__ ((__nothrow__)) fct 54 # else 49 55 # if defined __cplusplus && __GNUC_PREREQ (2,8) 50 56 # define __THROW throw () 57 # define __NTH(fct) fct throw () 51 58 # else 52 59 # define __THROW 53 # endif 54 # define __P(args) args __THROW 55 /* This macro will be used for functions which might take C++ callback 56 functions. */ 57 # define __PMT(args) args 60 # define __NTH(fct) fct 61 # endif 62 # endif 58 63 59 64 #else /* Not GCC. */ … … 62 67 63 68 # define __THROW 64 # define __P(args) args 65 # define __PMT(args) args 69 # define __NTH(fct) fct 66 70 67 71 # define __const const … … 70 74 71 75 #endif /* GCC. */ 76 77 /* These two macros are not used in glibc anymore. They are kept here 78 only because some other projects expect the macros to be defined. */ 79 #define __P(args) args 80 #define __PMT(args) args 72 81 73 82 /* For these things, GCC behaves the ANSI way normally, … … 129 138 130 139 140 /* Fortify support. */ 141 #define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) 142 #define __bos0(ptr) __builtin_object_size (ptr, 0) 143 #define __warndecl(name, msg) extern void name (void) 144 145 131 146 /* Support for flexible arrays. */ 132 147 #if __GNUC_PREREQ (2,97) … … 160 175 161 176 # define __REDIRECT(name, proto, alias) name proto __asm__ (__ASMNAME (#alias)) 177 # ifdef __cplusplus 178 # define __REDIRECT_NTH(name, proto, alias) \ 179 name proto __THROW __asm__ (__ASMNAME (#alias)) 180 # else 181 # define __REDIRECT_NTH(name, proto, alias) \ 182 name proto __asm__ (__ASMNAME (#alias)) __THROW 183 # endif 162 184 # define __ASMNAME(cname) __ASMNAME2 (__USER_LABEL_PREFIX__, cname) 163 185 # define __ASMNAME2(prefix, cname) __STRING (prefix) cname … … 237 259 #endif 238 260 261 /* The nonull function attribute allows to mark pointer parameters which 262 must not be NULL. */ 263 #if __GNUC_PREREQ (3,3) 264 # define __nonnull_glibc(params) __attribute__ ((__nonnull__ params)) 265 #else 266 # define __nonnull_glibc(params) 267 #endif 268 269 /* If fortification mode, we warn about unused results of certain 270 function calls which can lead to problems. */ 271 #if __GNUC_PREREQ (3,4) 272 # define __attribute_warn_unused_result__ \ 273 __attribute__ ((__warn_unused_result__)) 274 # if __USE_FORTIFY_LEVEL > 0 275 # define __wur __attribute_warn_unused_result__ 276 # endif 277 #else 278 # define __attribute_warn_unused_result__ /* empty */ 279 #endif 280 #ifndef __wur 281 # define __wur /* Ignore */ 282 #endif 283 284 /* Forces a function to be always inlined. */ 285 #ifndef __always_inline /* bird */ 286 #if __GNUC_PREREQ (3,2) 287 # define __always_inline __inline __attribute__ ((__always_inline__)) 288 #else 289 # define __always_inline __inline 290 #endif 291 #endif /* bird */ 292 239 293 /* It is possible to compile containing GCC extensions even if GCC is 240 294 run in pedantic mode if the uses are carefully marked using the -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.