1 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ 2 /* A GNU-like <stdlib.h>. 3 4 Copyright (C) 1995, 2001-2004, 2006-2012 Free Software Foundation, Inc. 5 6 This program is free software: you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 3 of the License, or 9 (at your option) any later version. 10 11 This program is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 18 19 #if __GNUC__ >= 3 20 #pragma GCC system_header 21 #endif 22 23 24 #if defined __need_malloc_and_calloc 25 /* Special invocation convention inside glibc header files. */ 26 27 #include_next <stdlib.h> 28 29 #else 30 /* Normal invocation convention. */ 31 32 #ifndef _GL_STDLIB_H 33 34 /* The include_next requires a split double-inclusion guard. */ 35 #include_next <stdlib.h> 36 37 #ifndef _GL_STDLIB_H 38 #define _GL_STDLIB_H 39 40 /* NetBSD 5.0 mis-defines NULL. */ 41 #include <stddef.h> 42 43 /* MirBSD 10 defines WEXITSTATUS in <sys/wait.h>, not in <stdlib.h>. */ 44 #if 0 && !defined WEXITSTATUS 45 # include <sys/wait.h> 46 #endif 47 48 /* Solaris declares getloadavg() in <sys/loadavg.h>. */ 49 #if (0 || defined GNULIB_POSIXCHECK) && 0 50 # include <sys/loadavg.h> 51 #endif 52 53 /* Native Windows platforms declare mktemp() in <io.h>. */ 54 #if 0 && ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) 55 # include <io.h> 56 #endif 57 58 #if 0 59 60 /* OSF/1 5.1 declares 'struct random_data' in <random.h>, which is included 61 from <stdlib.h> if _REENTRANT is defined. Include it whenever we need 62 'struct random_data'. */ 63 # if 1 64 # include <random.h> 65 # endif 66 67 # if !1 || 0 || !1 68 # include <stdint.h> 69 # endif 70 71 # if !1 72 /* Define 'struct random_data'. 73 But allow multiple gnulib generated <stdlib.h> replacements to coexist. */ 74 # if !GNULIB_defined_struct_random_data 75 struct random_data 76 { 77 int32_t *fptr; /* Front pointer. */ 78 int32_t *rptr; /* Rear pointer. */ 79 int32_t *state; /* Array of state values. */ 80 int rand_type; /* Type of random number generator. */ 81 int rand_deg; /* Degree of random number generator. */ 82 int rand_sep; /* Distance between front and rear. */ 83 int32_t *end_ptr; /* Pointer behind state table. */ 84 }; 85 # define GNULIB_defined_struct_random_data 1 86 # endif 87 # endif 88 #endif 89 90 #if (0 || 0 || 0 || defined GNULIB_POSIXCHECK) && ! defined __GLIBC__ && !((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) 91 /* On Mac OS X 10.3, only <unistd.h> declares mkstemp. */ 92 /* On Mac OS X 10.5, only <unistd.h> declares mkstemps. */ 93 /* On Cygwin 1.7.1, only <unistd.h> declares getsubopt. */ 94 /* But avoid namespace pollution on glibc systems and native Windows. */ 95 # include <unistd.h> 96 #endif 97 98 /* The __attribute__ feature is available in gcc versions 2.5 and later. 99 The attribute __pure__ was added in gcc 2.96. */ 100 #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) 101 # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) 102 #else 103 # define _GL_ATTRIBUTE_PURE /* empty */ 104 #endif 105 106 /* The definition of _Noreturn is copied here. */ 107 #if !defined _Noreturn && __STDC_VERSION__ < 201112 108 # if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \ 109 || 0x5110 <= __SUNPRO_C) 110 # define _Noreturn __attribute__ ((__noreturn__)) 111 # elif 1200 <= _MSC_VER 112 # define _Noreturn __declspec (noreturn) 113 # else 114 # define _Noreturn 115 # endif 116 #endif 117 118 /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ 119 #ifndef _GL_CXXDEFS_H 120 #define _GL_CXXDEFS_H 121 122 /* The three most frequent use cases of these macros are: 123 124 * For providing a substitute for a function that is missing on some 125 platforms, but is declared and works fine on the platforms on which 126 it exists: 127 128 #if @GNULIB_FOO@ 129 # if !@HAVE_FOO@ 130 _GL_FUNCDECL_SYS (foo, ...); 131 # endif 132 _GL_CXXALIAS_SYS (foo, ...); 133 _GL_CXXALIASWARN (foo); 134 #elif defined GNULIB_POSIXCHECK 135 ... 136 #endif 137 138 * For providing a replacement for a function that exists on all platforms, 139 but is broken/insufficient and needs to be replaced on some platforms: 140 141 #if @GNULIB_FOO@ 142 # if @REPLACE_FOO@ 143 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 144 # undef foo 145 # define foo rpl_foo 146 # endif 147 _GL_FUNCDECL_RPL (foo, ...); 148 _GL_CXXALIAS_RPL (foo, ...); 149 # else 150 _GL_CXXALIAS_SYS (foo, ...); 151 # endif 152 _GL_CXXALIASWARN (foo); 153 #elif defined GNULIB_POSIXCHECK 154 ... 155 #endif 156 157 * For providing a replacement for a function that exists on some platforms 158 but is broken/insufficient and needs to be replaced on some of them and 159 is additionally either missing or undeclared on some other platforms: 160 161 #if @GNULIB_FOO@ 162 # if @REPLACE_FOO@ 163 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 164 # undef foo 165 # define foo rpl_foo 166 # endif 167 _GL_FUNCDECL_RPL (foo, ...); 168 _GL_CXXALIAS_RPL (foo, ...); 169 # else 170 # if !@HAVE_FOO@ or if !@HAVE_DECL_FOO@ 171 _GL_FUNCDECL_SYS (foo, ...); 172 # endif 173 _GL_CXXALIAS_SYS (foo, ...); 174 # endif 175 _GL_CXXALIASWARN (foo); 176 #elif defined GNULIB_POSIXCHECK 177 ... 178 #endif 179 */ 180 181 /* _GL_EXTERN_C declaration; 182 performs the declaration with C linkage. */ 183 #if defined __cplusplus 184 # define _GL_EXTERN_C extern "C" 185 #else 186 # define _GL_EXTERN_C extern 187 #endif 188 189 /* _GL_FUNCDECL_RPL (func, rettype, parameters_and_attributes); 190 declares a replacement function, named rpl_func, with the given prototype, 191 consisting of return type, parameters, and attributes. 192 Example: 193 _GL_FUNCDECL_RPL (open, int, (const char *filename, int flags, ...) 194 _GL_ARG_NONNULL ((1))); 195 */ 196 #define _GL_FUNCDECL_RPL(func,rettype,parameters_and_attributes) \ 197 _GL_FUNCDECL_RPL_1 (rpl_##func, rettype, parameters_and_attributes) 198 #define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters_and_attributes) \ 199 _GL_EXTERN_C rettype rpl_func parameters_and_attributes 200 201 /* _GL_FUNCDECL_SYS (func, rettype, parameters_and_attributes); 202 declares the system function, named func, with the given prototype, 203 consisting of return type, parameters, and attributes. 204 Example: 205 _GL_FUNCDECL_SYS (open, int, (const char *filename, int flags, ...) 206 _GL_ARG_NONNULL ((1))); 207 */ 208 #define _GL_FUNCDECL_SYS(func,rettype,parameters_and_attributes) \ 209 _GL_EXTERN_C rettype func parameters_and_attributes 210 211 /* _GL_CXXALIAS_RPL (func, rettype, parameters); 212 declares a C++ alias called GNULIB_NAMESPACE::func 213 that redirects to rpl_func, if GNULIB_NAMESPACE is defined. 214 Example: 215 _GL_CXXALIAS_RPL (open, int, (const char *filename, int flags, ...)); 216 */ 217 #define _GL_CXXALIAS_RPL(func,rettype,parameters) \ 218 _GL_CXXALIAS_RPL_1 (func, rpl_##func, rettype, parameters) 219 #if defined __cplusplus && defined GNULIB_NAMESPACE 220 # define _GL_CXXALIAS_RPL_1(func,rpl_func,rettype,parameters) \ 221 namespace GNULIB_NAMESPACE \ 222 { \ 223 rettype (*const func) parameters = ::rpl_func; \ 224 } \ 225 _GL_EXTERN_C int _gl_cxxalias_dummy 226 #else 227 # define _GL_CXXALIAS_RPL_1(func,rpl_func,rettype,parameters) \ 228 _GL_EXTERN_C int _gl_cxxalias_dummy 229 #endif 230 231 /* _GL_CXXALIAS_RPL_CAST_1 (func, rpl_func, rettype, parameters); 232 is like _GL_CXXALIAS_RPL_1 (func, rpl_func, rettype, parameters); 233 except that the C function rpl_func may have a slightly different 234 declaration. A cast is used to silence the "invalid conversion" error 235 that would otherwise occur. */ 236 #if defined __cplusplus && defined GNULIB_NAMESPACE 237 # define _GL_CXXALIAS_RPL_CAST_1(func,rpl_func,rettype,parameters) \ 238 namespace GNULIB_NAMESPACE \ 239 { \ 240 rettype (*const func) parameters = \ 241 reinterpret_cast<rettype(*)parameters>(::rpl_func); \ 242 } \ 243 _GL_EXTERN_C int _gl_cxxalias_dummy 244 #else 245 # define _GL_CXXALIAS_RPL_CAST_1(func,rpl_func,rettype,parameters) \ 246 _GL_EXTERN_C int _gl_cxxalias_dummy 247 #endif 248 249 /* _GL_CXXALIAS_SYS (func, rettype, parameters); 250 declares a C++ alias called GNULIB_NAMESPACE::func 251 that redirects to the system provided function func, if GNULIB_NAMESPACE 252 is defined. 253 Example: 254 _GL_CXXALIAS_SYS (open, int, (const char *filename, int flags, ...)); 255 */ 256 #if defined __cplusplus && defined GNULIB_NAMESPACE 257 /* If we were to write 258 rettype (*const func) parameters = ::func; 259 like above in _GL_CXXALIAS_RPL_1, the compiler could optimize calls 260 better (remove an indirection through a 'static' pointer variable), 261 but then the _GL_CXXALIASWARN macro below would cause a warning not only 262 for uses of ::func but also for uses of GNULIB_NAMESPACE::func. */ 263 # define _GL_CXXALIAS_SYS(func,rettype,parameters) \ 264 namespace GNULIB_NAMESPACE \ 265 { \ 266 static rettype (*func) parameters = ::func; \ 267 } \ 268 _GL_EXTERN_C int _gl_cxxalias_dummy 269 #else 270 # define _GL_CXXALIAS_SYS(func,rettype,parameters) \ 271 _GL_EXTERN_C int _gl_cxxalias_dummy 272 #endif 273 274 /* _GL_CXXALIAS_SYS_CAST (func, rettype, parameters); 275 is like _GL_CXXALIAS_SYS (func, rettype, parameters); 276 except that the C function func may have a slightly different declaration. 277 A cast is used to silence the "invalid conversion" error that would 278 otherwise occur. */ 279 #if defined __cplusplus && defined GNULIB_NAMESPACE 280 # define _GL_CXXALIAS_SYS_CAST(func,rettype,parameters) \ 281 namespace GNULIB_NAMESPACE \ 282 { \ 283 static rettype (*func) parameters = \ 284 reinterpret_cast<rettype(*)parameters>(::func); \ 285 } \ 286 _GL_EXTERN_C int _gl_cxxalias_dummy 287 #else 288 # define _GL_CXXALIAS_SYS_CAST(func,rettype,parameters) \ 289 _GL_EXTERN_C int _gl_cxxalias_dummy 290 #endif 291 292 /* _GL_CXXALIAS_SYS_CAST2 (func, rettype, parameters, rettype2, parameters2); 293 is like _GL_CXXALIAS_SYS (func, rettype, parameters); 294 except that the C function is picked among a set of overloaded functions, 295 namely the one with rettype2 and parameters2. Two consecutive casts 296 are used to silence the "cannot find a match" and "invalid conversion" 297 errors that would otherwise occur. */ 298 #if defined __cplusplus && defined GNULIB_NAMESPACE 299 /* The outer cast must be a reinterpret_cast. 300 The inner cast: When the function is defined as a set of overloaded 301 functions, it works as a static_cast<>, choosing the designated variant. 302 When the function is defined as a single variant, it works as a 303 reinterpret_cast<>. The parenthesized cast syntax works both ways. */ 304 # define _GL_CXXALIAS_SYS_CAST2(func,rettype,parameters,rettype2,parameters2) \ 305 namespace GNULIB_NAMESPACE \ 306 { \ 307 static rettype (*func) parameters = \ 308 reinterpret_cast<rettype(*)parameters>( \ 309 (rettype2(*)parameters2)(::func)); \ 310 } \ 311 _GL_EXTERN_C int _gl_cxxalias_dummy 312 #else 313 # define _GL_CXXALIAS_SYS_CAST2(func,rettype,parameters,rettype2,parameters2) \ 314 _GL_EXTERN_C int _gl_cxxalias_dummy 315 #endif 316 317 /* _GL_CXXALIASWARN (func); 318 causes a warning to be emitted when ::func is used but not when 319 GNULIB_NAMESPACE::func is used. func must be defined without overloaded 320 variants. */ 321 #if defined __cplusplus && defined GNULIB_NAMESPACE 322 # define _GL_CXXALIASWARN(func) \ 323 _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE) 324 # define _GL_CXXALIASWARN_1(func,namespace) \ 325 _GL_CXXALIASWARN_2 (func, namespace) 326 /* To work around GCC bug <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>, 327 we enable the warning only when not optimizing. */ 328 # if !__OPTIMIZE__ 329 # define _GL_CXXALIASWARN_2(func,namespace) \ 330 _GL_WARN_ON_USE (func, \ 331 "The symbol ::" #func " refers to the system function. " \ 332 "Use " #namespace "::" #func " instead.") 333 # elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING 334 # define _GL_CXXALIASWARN_2(func,namespace) \ 335 extern __typeof__ (func) func 336 # else 337 # define _GL_CXXALIASWARN_2(func,namespace) \ 338 _GL_EXTERN_C int _gl_cxxalias_dummy 339 # endif 340 #else 341 # define _GL_CXXALIASWARN(func) \ 342 _GL_EXTERN_C int _gl_cxxalias_dummy 343 #endif 344 345 /* _GL_CXXALIASWARN1 (func, rettype, parameters_and_attributes); 346 causes a warning to be emitted when the given overloaded variant of ::func 347 is used but not when GNULIB_NAMESPACE::func is used. */ 348 #if defined __cplusplus && defined GNULIB_NAMESPACE 349 # define _GL_CXXALIASWARN1(func,rettype,parameters_and_attributes) \ 350 _GL_CXXALIASWARN1_1 (func, rettype, parameters_and_attributes, \ 351 GNULIB_NAMESPACE) 352 # define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \ 353 _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace) 354 /* To work around GCC bug <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>, 355 we enable the warning only when not optimizing. */ 356 # if !__OPTIMIZE__ 357 # define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ 358 _GL_WARN_ON_USE_CXX (func, rettype, parameters_and_attributes, \ 359 "The symbol ::" #func " refers to the system function. " \ 360 "Use " #namespace "::" #func " instead.") 361 # elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING 362 # define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ 363 extern __typeof__ (func) func 364 # else 365 # define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ 366 _GL_EXTERN_C int _gl_cxxalias_dummy 367 # endif 368 #else 369 # define _GL_CXXALIASWARN1(func,rettype,parameters_and_attributes) \ 370 _GL_EXTERN_C int _gl_cxxalias_dummy 371 #endif 372 373 #endif /* _GL_CXXDEFS_H */ 374 375 /* The definition of _GL_ARG_NONNULL is copied here. */ 376 /* _GL_ARG_NONNULL((n,...,m)) tells the compiler and static analyzer tools 377 that the values passed as arguments n, ..., m must be non-NULL pointers. 378 n = 1 stands for the first argument, n = 2 for the second argument etc. */ 379 #ifndef _GL_ARG_NONNULL 380 # if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || __GNUC__ > 3 381 # define _GL_ARG_NONNULL(params) __attribute__ ((__nonnull__ params)) 382 # else 383 # define _GL_ARG_NONNULL(params) 384 # endif 385 #endif 386 387 /* The definition of _GL_WARN_ON_USE is copied here. */ 388 #ifndef _GL_WARN_ON_USE 389 390 # if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) 391 /* A compiler attribute is available in gcc versions 4.3.0 and later. */ 392 # define _GL_WARN_ON_USE(function, message) \ 393 extern __typeof__ (function) function __attribute__ ((__warning__ (message))) 394 # elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING 395 /* Verify the existence of the function. */ 396 # define _GL_WARN_ON_USE(function, message) \ 397 extern __typeof__ (function) function 398 # else /* Unsupported. */ 399 # define _GL_WARN_ON_USE(function, message) \ 400 _GL_WARN_EXTERN_C int _gl_warn_on_use 401 # endif 402 #endif 403 404 /* _GL_WARN_ON_USE_CXX (function, rettype, parameters_and_attributes, "string") 405 is like _GL_WARN_ON_USE (function, "string"), except that the function is 406 declared with the given prototype, consisting of return type, parameters, 407 and attributes. 408 This variant is useful for overloaded functions in C++. _GL_WARN_ON_USE does 409 not work in this case. */ 410 #ifndef _GL_WARN_ON_USE_CXX 411 # if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) 412 # define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ 413 extern rettype function parameters_and_attributes \ 414 __attribute__ ((__warning__ (msg))) 415 # elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING 416 /* Verify the existence of the function. */ 417 # define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ 418 extern rettype function parameters_and_attributes 419 # else /* Unsupported. */ 420 # define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ 421 _GL_WARN_EXTERN_C int _gl_warn_on_use 422 # endif 423 #endif 424 425 /* _GL_WARN_EXTERN_C declaration; 426 performs the declaration with C linkage. */ 427 #ifndef _GL_WARN_EXTERN_C 428 # if defined __cplusplus 429 # define _GL_WARN_EXTERN_C extern "C" 430 # else 431 # define _GL_WARN_EXTERN_C extern 432 # endif 433 #endif 434 435 436 /* Some systems do not define EXIT_*, despite otherwise supporting C89. */ 437 #ifndef EXIT_SUCCESS 438 # define EXIT_SUCCESS 0 439 #endif 440 /* Tandem/NSK and other platforms that define EXIT_FAILURE as -1 interfere 441 with proper operation of xargs. */ 442 #ifndef EXIT_FAILURE 443 # define EXIT_FAILURE 1 444 #elif EXIT_FAILURE != 1 445 # undef EXIT_FAILURE 446 # define EXIT_FAILURE 1 447 #endif 448 449 450 #if 0 451 /* Terminate the current process with the given return code, without running 452 the 'atexit' handlers. */ 453 # if !1 454 _GL_FUNCDECL_SYS (_Exit, _Noreturn void, (int status)); 455 # endif 456 _GL_CXXALIAS_SYS (_Exit, void, (int status)); 457 _GL_CXXALIASWARN (_Exit); 458 #elif defined GNULIB_POSIXCHECK 459 # undef _Exit 460 # if HAVE_RAW_DECL__EXIT 461 _GL_WARN_ON_USE (_Exit, "_Exit is unportable - " 462 "use gnulib module _Exit for portability"); 463 # endif 464 #endif 465 466 467 #if 0 468 /* Parse a signed decimal integer. 469 Returns the value of the integer. Errors are not detected. */ 470 # if !1 471 _GL_FUNCDECL_SYS (atoll, long long, (const char *string) 472 _GL_ATTRIBUTE_PURE 473 _GL_ARG_NONNULL ((1))); 474 # endif 475 _GL_CXXALIAS_SYS (atoll, long long, (const char *string)); 476 _GL_CXXALIASWARN (atoll); 477 #elif defined GNULIB_POSIXCHECK 478 # undef atoll 479 # if HAVE_RAW_DECL_ATOLL 480 _GL_WARN_ON_USE (atoll, "atoll is unportable - " 481 "use gnulib module atoll for portability"); 482 # endif 483 #endif 484 485 #if 1 486 # if 0 487 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 488 # undef calloc 489 # define calloc rpl_calloc 490 # endif 491 _GL_FUNCDECL_RPL (calloc, void *, (size_t nmemb, size_t size)); 492 _GL_CXXALIAS_RPL (calloc, void *, (size_t nmemb, size_t size)); 493 # else 494 _GL_CXXALIAS_SYS (calloc, void *, (size_t nmemb, size_t size)); 495 # endif 496 _GL_CXXALIASWARN (calloc); 497 #elif defined GNULIB_POSIXCHECK 498 # undef calloc 499 /* Assume calloc is always declared. */ 500 _GL_WARN_ON_USE (calloc, "calloc is not POSIX compliant everywhere - " 501 "use gnulib module calloc-posix for portability"); 502 #endif 503 504 #if 0 505 # if 0 506 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 507 # define canonicalize_file_name rpl_canonicalize_file_name 508 # endif 509 _GL_FUNCDECL_RPL (canonicalize_file_name, char *, (const char *name) 510 _GL_ARG_NONNULL ((1))); 511 _GL_CXXALIAS_RPL (canonicalize_file_name, char *, (const char *name)); 512 # else 513 # if !1 514 _GL_FUNCDECL_SYS (canonicalize_file_name, char *, (const char *name) 515 _GL_ARG_NONNULL ((1))); 516 # endif 517 _GL_CXXALIAS_SYS (canonicalize_file_name, char *, (const char *name)); 518 # endif 519 _GL_CXXALIASWARN (canonicalize_file_name); 520 #elif defined GNULIB_POSIXCHECK 521 # undef canonicalize_file_name 522 # if HAVE_RAW_DECL_CANONICALIZE_FILE_NAME 523 _GL_WARN_ON_USE (canonicalize_file_name, 524 "canonicalize_file_name is unportable - " 525 "use gnulib module canonicalize-lgpl for portability"); 526 # endif 527 #endif 528 529 #if 0 530 /* Store max(NELEM,3) load average numbers in LOADAVG[]. 531 The three numbers are the load average of the last 1 minute, the last 5 532 minutes, and the last 15 minutes, respectively. 533 LOADAVG is an array of NELEM numbers. */ 534 # if !1 535 _GL_FUNCDECL_SYS (getloadavg, int, (double loadavg[], int nelem) 536 _GL_ARG_NONNULL ((1))); 537 # endif 538 _GL_CXXALIAS_SYS (getloadavg, int, (double loadavg[], int nelem)); 539 _GL_CXXALIASWARN (getloadavg); 540 #elif defined GNULIB_POSIXCHECK 541 # undef getloadavg 542 # if HAVE_RAW_DECL_GETLOADAVG 543 _GL_WARN_ON_USE (getloadavg, "getloadavg is not portable - " 544 "use gnulib module getloadavg for portability"); 545 # endif 546 #endif 547 548 #if 0 549 /* Assuming *OPTIONP is a comma separated list of elements of the form 550 "token" or "token=value", getsubopt parses the first of these elements. 551 If the first element refers to a "token" that is member of the given 552 NULL-terminated array of tokens: 553 - It replaces the comma with a NUL byte, updates *OPTIONP to point past 554 the first option and the comma, sets *VALUEP to the value of the 555 element (or NULL if it doesn't contain an "=" sign), 556 - It returns the index of the "token" in the given array of tokens. 557 Otherwise it returns -1, and *OPTIONP and *VALUEP are undefined. 558 For more details see the POSIX:2001 specification. 559 http://www.opengroup.org/susv3xsh/getsubopt.html */ 560 # if !1 561 _GL_FUNCDECL_SYS (getsubopt, int, 562 (char **optionp, char *const *tokens, char **valuep) 563 _GL_ARG_NONNULL ((1, 2, 3))); 564 # endif 565 _GL_CXXALIAS_SYS (getsubopt, int, 566 (char **optionp, char *const *tokens, char **valuep)); 567 _GL_CXXALIASWARN (getsubopt); 568 #elif defined GNULIB_POSIXCHECK 569 # undef getsubopt 570 # if HAVE_RAW_DECL_GETSUBOPT 571 _GL_WARN_ON_USE (getsubopt, "getsubopt is unportable - " 572 "use gnulib module getsubopt for portability"); 573 # endif 574 #endif 575 576 #if 0 577 /* Change the ownership and access permission of the slave side of the 578 pseudo-terminal whose master side is specified by FD. */ 579 # if !1 580 _GL_FUNCDECL_SYS (grantpt, int, (int fd)); 581 # endif 582 _GL_CXXALIAS_SYS (grantpt, int, (int fd)); 583 _GL_CXXALIASWARN (grantpt); 584 #elif defined GNULIB_POSIXCHECK 585 # undef grantpt 586 # if HAVE_RAW_DECL_GRANTPT 587 _GL_WARN_ON_USE (grantpt, "grantpt is not portable - " 588 "use gnulib module grantpt for portability"); 589 # endif 590 #endif 591 592 /* If _GL_USE_STDLIB_ALLOC is nonzero, the including module does not 593 rely on GNU or POSIX semantics for malloc and realloc (for example, 594 by never specifying a zero size), so it does not need malloc or 595 realloc to be redefined. */ 596 #if 1 597 # if 0 598 # if !((defined __cplusplus && defined GNULIB_NAMESPACE) \ 599 || _GL_USE_STDLIB_ALLOC) 600 # undef malloc 601 # define malloc rpl_malloc 602 # endif 603 _GL_FUNCDECL_RPL (malloc, void *, (size_t size)); 604 _GL_CXXALIAS_RPL (malloc, void *, (size_t size)); 605 # else 606 _GL_CXXALIAS_SYS (malloc, void *, (size_t size)); 607 # endif 608 _GL_CXXALIASWARN (malloc); 609 #elif defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC 610 # undef malloc 611 /* Assume malloc is always declared. */ 612 _GL_WARN_ON_USE (malloc, "malloc is not POSIX compliant everywhere - " 613 "use gnulib module malloc-posix for portability"); 614 #endif 615 616 /* Convert a multibyte character to a wide character. */ 617 #if 0 618 # if 0 619 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 620 # undef mbtowc 621 # define mbtowc rpl_mbtowc 622 # endif 623 _GL_FUNCDECL_RPL (mbtowc, int, (wchar_t *pwc, const char *s, size_t n)); 624 _GL_CXXALIAS_RPL (mbtowc, int, (wchar_t *pwc, const char *s, size_t n)); 625 # else 626 _GL_CXXALIAS_SYS (mbtowc, int, (wchar_t *pwc, const char *s, size_t n)); 627 # endif 628 _GL_CXXALIASWARN (mbtowc); 629 #endif 630 631 #if 0 632 /* Create a unique temporary directory from TEMPLATE. 633 The last six characters of TEMPLATE must be "XXXXXX"; 634 they are replaced with a string that makes the directory name unique. 635 Returns TEMPLATE, or a null pointer if it cannot get a unique name. 636 The directory is created mode 700. */ 637 # if !1 638 _GL_FUNCDECL_SYS (mkdtemp, char *, (char * /*template*/) _GL_ARG_NONNULL ((1))); 639 # endif 640 _GL_CXXALIAS_SYS (mkdtemp, char *, (char * /*template*/)); 641 _GL_CXXALIASWARN (mkdtemp); 642 #elif defined GNULIB_POSIXCHECK 643 # undef mkdtemp 644 # if HAVE_RAW_DECL_MKDTEMP 645 _GL_WARN_ON_USE (mkdtemp, "mkdtemp is unportable - " 646 "use gnulib module mkdtemp for portability"); 647 # endif 648 #endif 649 650 #if 0 651 /* Create a unique temporary file from TEMPLATE. 652 The last six characters of TEMPLATE must be "XXXXXX"; 653 they are replaced with a string that makes the file name unique. 654 The flags are a bitmask, possibly including O_CLOEXEC (defined in <fcntl.h>) 655 and O_TEXT, O_BINARY (defined in "binary-io.h"). 656 The file is then created, with the specified flags, ensuring it didn't exist 657 before. 658 The file is created read-write (mask at least 0600 & ~umask), but it may be 659 world-readable and world-writable (mask 0666 & ~umask), depending on the 660 implementation. 661 Returns the open file descriptor if successful, otherwise -1 and errno 662 set. */ 663 # if !1 664 _GL_FUNCDECL_SYS (mkostemp, int, (char * /*template*/, int /*flags*/) 665 _GL_ARG_NONNULL ((1))); 666 # endif 667 _GL_CXXALIAS_SYS (mkostemp, int, (char * /*template*/, int /*flags*/)); 668 _GL_CXXALIASWARN (mkostemp); 669 #elif defined GNULIB_POSIXCHECK 670 # undef mkostemp 671 # if HAVE_RAW_DECL_MKOSTEMP 672 _GL_WARN_ON_USE (mkostemp, "mkostemp is unportable - " 673 "use gnulib module mkostemp for portability"); 674 # endif 675 #endif 676 677 #if 0 678 /* Create a unique temporary file from TEMPLATE. 679 The last six characters of TEMPLATE before a suffix of length 680 SUFFIXLEN must be "XXXXXX"; 681 they are replaced with a string that makes the file name unique. 682 The flags are a bitmask, possibly including O_CLOEXEC (defined in <fcntl.h>) 683 and O_TEXT, O_BINARY (defined in "binary-io.h"). 684 The file is then created, with the specified flags, ensuring it didn't exist 685 before. 686 The file is created read-write (mask at least 0600 & ~umask), but it may be 687 world-readable and world-writable (mask 0666 & ~umask), depending on the 688 implementation. 689 Returns the open file descriptor if successful, otherwise -1 and errno 690 set. */ 691 # if !1 692 _GL_FUNCDECL_SYS (mkostemps, int, 693 (char * /*template*/, int /*suffixlen*/, int /*flags*/) 694 _GL_ARG_NONNULL ((1))); 695 # endif 696 _GL_CXXALIAS_SYS (mkostemps, int, 697 (char * /*template*/, int /*suffixlen*/, int /*flags*/)); 698 _GL_CXXALIASWARN (mkostemps); 699 #elif defined GNULIB_POSIXCHECK 700 # undef mkostemps 701 # if HAVE_RAW_DECL_MKOSTEMPS 702 _GL_WARN_ON_USE (mkostemps, "mkostemps is unportable - " 703 "use gnulib module mkostemps for portability"); 704 # endif 705 #endif 706 707 #if 0 708 /* Create a unique temporary file from TEMPLATE. 709 The last six characters of TEMPLATE must be "XXXXXX"; 710 they are replaced with a string that makes the file name unique. 711 The file is then created, ensuring it didn't exist before. 712 The file is created read-write (mask at least 0600 & ~umask), but it may be 713 world-readable and world-writable (mask 0666 & ~umask), depending on the 714 implementation. 715 Returns the open file descriptor if successful, otherwise -1 and errno 716 set. */ 717 # if 0 718 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 719 # define mkstemp rpl_mkstemp 720 # endif 721 _GL_FUNCDECL_RPL (mkstemp, int, (char * /*template*/) _GL_ARG_NONNULL ((1))); 722 _GL_CXXALIAS_RPL (mkstemp, int, (char * /*template*/)); 723 # else 724 # if ! 1 725 _GL_FUNCDECL_SYS (mkstemp, int, (char * /*template*/) _GL_ARG_NONNULL ((1))); 726 # endif 727 _GL_CXXALIAS_SYS (mkstemp, int, (char * /*template*/)); 728 # endif 729 _GL_CXXALIASWARN (mkstemp); 730 #elif defined GNULIB_POSIXCHECK 731 # undef mkstemp 732 # if HAVE_RAW_DECL_MKSTEMP 733 _GL_WARN_ON_USE (mkstemp, "mkstemp is unportable - " 734 "use gnulib module mkstemp for portability"); 735 # endif 736 #endif 737 738 #if 0 739 /* Create a unique temporary file from TEMPLATE. 740 The last six characters of TEMPLATE prior to a suffix of length 741 SUFFIXLEN must be "XXXXXX"; 742 they are replaced with a string that makes the file name unique. 743 The file is then created, ensuring it didn't exist before. 744 The file is created read-write (mask at least 0600 & ~umask), but it may be 745 world-readable and world-writable (mask 0666 & ~umask), depending on the 746 implementation. 747 Returns the open file descriptor if successful, otherwise -1 and errno 748 set. */ 749 # if !1 750 _GL_FUNCDECL_SYS (mkstemps, int, (char * /*template*/, int /*suffixlen*/) 751 _GL_ARG_NONNULL ((1))); 752 # endif 753 _GL_CXXALIAS_SYS (mkstemps, int, (char * /*template*/, int /*suffixlen*/)); 754 _GL_CXXALIASWARN (mkstemps); 755 #elif defined GNULIB_POSIXCHECK 756 # undef mkstemps 757 # if HAVE_RAW_DECL_MKSTEMPS 758 _GL_WARN_ON_USE (mkstemps, "mkstemps is unportable - " 759 "use gnulib module mkstemps for portability"); 760 # endif 761 #endif 762 763 #if 0 764 /* Return an FD open to the master side of a pseudo-terminal. Flags should 765 include O_RDWR, and may also include O_NOCTTY. */ 766 # if !1 767 _GL_FUNCDECL_SYS (posix_openpt, int, (int flags)); 768 # endif 769 _GL_CXXALIAS_SYS (posix_openpt, int, (int flags)); 770 _GL_CXXALIASWARN (posix_openpt); 771 #elif defined GNULIB_POSIXCHECK 772 # undef posix_openpt 773 # if HAVE_RAW_DECL_POSIX_OPENPT 774 _GL_WARN_ON_USE (posix_openpt, "posix_openpt is not portable - " 775 "use gnulib module posix_openpt for portability"); 776 # endif 777 #endif 778 779 #if 0 780 /* Return the pathname of the pseudo-terminal slave associated with 781 the master FD is open on, or NULL on errors. */ 782 # if 0 783 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 784 # undef ptsname 785 # define ptsname rpl_ptsname 786 # endif 787 _GL_FUNCDECL_RPL (ptsname, char *, (int fd)); 788 _GL_CXXALIAS_RPL (ptsname, char *, (int fd)); 789 # else 790 # if !1 791 _GL_FUNCDECL_SYS (ptsname, char *, (int fd)); 792 # endif 793 _GL_CXXALIAS_SYS (ptsname, char *, (int fd)); 794 # endif 795 _GL_CXXALIASWARN (ptsname); 796 #elif defined GNULIB_POSIXCHECK 797 # undef ptsname 798 # if HAVE_RAW_DECL_PTSNAME 799 _GL_WARN_ON_USE (ptsname, "ptsname is not portable - " 800 "use gnulib module ptsname for portability"); 801 # endif 802 #endif 803 804 #if 0 805 /* Set the pathname of the pseudo-terminal slave associated with 806 the master FD is open on and return 0, or set errno and return 807 non-zero on errors. */ 808 # if 0 809 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 810 # undef ptsname_r 811 # define ptsname_r rpl_ptsname_r 812 # endif 813 _GL_FUNCDECL_RPL (ptsname_r, int, (int fd, char *buf, size_t len)); 814 _GL_CXXALIAS_RPL (ptsname_r, int, (int fd, char *buf, size_t len)); 815 # else 816 # if !1 817 _GL_FUNCDECL_SYS (ptsname_r, int, (int fd, char *buf, size_t len)); 818 # endif 819 _GL_CXXALIAS_SYS (ptsname_r, int, (int fd, char *buf, size_t len)); 820 # endif 821 _GL_CXXALIASWARN (ptsname_r); 822 #elif defined GNULIB_POSIXCHECK 823 # undef ptsname_r 824 # if HAVE_RAW_DECL_PTSNAME_R 825 _GL_WARN_ON_USE (ptsname_r, "ptsname_r is not portable - " 826 "use gnulib module ptsname_r for portability"); 827 # endif 828 #endif 829 830 #if 0 831 # if 0 832 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 833 # undef putenv 834 # define putenv rpl_putenv 835 # endif 836 _GL_FUNCDECL_RPL (putenv, int, (char *string) _GL_ARG_NONNULL ((1))); 837 _GL_CXXALIAS_RPL (putenv, int, (char *string)); 838 # else 839 _GL_CXXALIAS_SYS (putenv, int, (char *string)); 840 # endif 841 _GL_CXXALIASWARN (putenv); 842 #endif 843 844 845 #if 0 846 # if !1 847 # ifndef RAND_MAX 848 # define RAND_MAX 2147483647 849 # endif 850 # endif 851 #endif 852 853 854 #if 0 855 # if !1 856 _GL_FUNCDECL_SYS (random, long, (void)); 857 # endif 858 _GL_CXXALIAS_SYS (random, long, (void)); 859 _GL_CXXALIASWARN (random); 860 #elif defined GNULIB_POSIXCHECK 861 # undef random 862 # if HAVE_RAW_DECL_RANDOM 863 _GL_WARN_ON_USE (random, "random is unportable - " 864 "use gnulib module random for portability"); 865 # endif 866 #endif 867 868 #if 0 869 # if !1 870 _GL_FUNCDECL_SYS (srandom, void, (unsigned int seed)); 871 # endif 872 _GL_CXXALIAS_SYS (srandom, void, (unsigned int seed)); 873 _GL_CXXALIASWARN (srandom); 874 #elif defined GNULIB_POSIXCHECK 875 # undef srandom 876 # if HAVE_RAW_DECL_SRANDOM 877 _GL_WARN_ON_USE (srandom, "srandom is unportable - " 878 "use gnulib module random for portability"); 879 # endif 880 #endif 881 882 #if 0 883 # if !1 884 _GL_FUNCDECL_SYS (initstate, char *, 885 (unsigned int seed, char *buf, size_t buf_size) 886 _GL_ARG_NONNULL ((2))); 887 # endif 888 _GL_CXXALIAS_SYS (initstate, char *, 889 (unsigned int seed, char *buf, size_t buf_size)); 890 _GL_CXXALIASWARN (initstate); 891 #elif defined GNULIB_POSIXCHECK 892 # undef initstate 893 # if HAVE_RAW_DECL_INITSTATE_R 894 _GL_WARN_ON_USE (initstate, "initstate is unportable - " 895 "use gnulib module random for portability"); 896 # endif 897 #endif 898 899 #if 0 900 # if !1 901 _GL_FUNCDECL_SYS (setstate, char *, (char *arg_state) _GL_ARG_NONNULL ((1))); 902 # endif 903 _GL_CXXALIAS_SYS (setstate, char *, (char *arg_state)); 904 _GL_CXXALIASWARN (setstate); 905 #elif defined GNULIB_POSIXCHECK 906 # undef setstate 907 # if HAVE_RAW_DECL_SETSTATE_R 908 _GL_WARN_ON_USE (setstate, "setstate is unportable - " 909 "use gnulib module random for portability"); 910 # endif 911 #endif 912 913 914 #if 0 915 # if 0 916 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 917 # undef random_r 918 # define random_r rpl_random_r 919 # endif 920 _GL_FUNCDECL_RPL (random_r, int, (struct random_data *buf, int32_t *result) 921 _GL_ARG_NONNULL ((1, 2))); 922 _GL_CXXALIAS_RPL (random_r, int, (struct random_data *buf, int32_t *result)); 923 # else 924 # if !1 925 _GL_FUNCDECL_SYS (random_r, int, (struct random_data *buf, int32_t *result) 926 _GL_ARG_NONNULL ((1, 2))); 927 # endif 928 _GL_CXXALIAS_SYS (random_r, int, (struct random_data *buf, int32_t *result)); 929 # endif 930 _GL_CXXALIASWARN (random_r); 931 #elif defined GNULIB_POSIXCHECK 932 # undef random_r 933 # if HAVE_RAW_DECL_RANDOM_R 934 _GL_WARN_ON_USE (random_r, "random_r is unportable - " 935 "use gnulib module random_r for portability"); 936 # endif 937 #endif 938 939 #if 0 940 # if 0 941 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 942 # undef srandom_r 943 # define srandom_r rpl_srandom_r 944 # endif 945 _GL_FUNCDECL_RPL (srandom_r, int, 946 (unsigned int seed, struct random_data *rand_state) 947 _GL_ARG_NONNULL ((2))); 948 _GL_CXXALIAS_RPL (srandom_r, int, 949 (unsigned int seed, struct random_data *rand_state)); 950 # else 951 # if !1 952 _GL_FUNCDECL_SYS (srandom_r, int, 953 (unsigned int seed, struct random_data *rand_state) 954 _GL_ARG_NONNULL ((2))); 955 # endif 956 _GL_CXXALIAS_SYS (srandom_r, int, 957 (unsigned int seed, struct random_data *rand_state)); 958 # endif 959 _GL_CXXALIASWARN (srandom_r); 960 #elif defined GNULIB_POSIXCHECK 961 # undef srandom_r 962 # if HAVE_RAW_DECL_SRANDOM_R 963 _GL_WARN_ON_USE (srandom_r, "srandom_r is unportable - " 964 "use gnulib module random_r for portability"); 965 # endif 966 #endif 967 968 #if 0 969 # if 0 970 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 971 # undef initstate_r 972 # define initstate_r rpl_initstate_r 973 # endif 974 _GL_FUNCDECL_RPL (initstate_r, int, 975 (unsigned int seed, char *buf, size_t buf_size, 976 struct random_data *rand_state) 977 _GL_ARG_NONNULL ((2, 4))); 978 _GL_CXXALIAS_RPL (initstate_r, int, 979 (unsigned int seed, char *buf, size_t buf_size, 980 struct random_data *rand_state)); 981 # else 982 # if !1 983 _GL_FUNCDECL_SYS (initstate_r, int, 984 (unsigned int seed, char *buf, size_t buf_size, 985 struct random_data *rand_state) 986 _GL_ARG_NONNULL ((2, 4))); 987 # endif 988 _GL_CXXALIAS_SYS (initstate_r, int, 989 (unsigned int seed, char *buf, size_t buf_size, 990 struct random_data *rand_state)); 991 # endif 992 _GL_CXXALIASWARN (initstate_r); 993 #elif defined GNULIB_POSIXCHECK 994 # undef initstate_r 995 # if HAVE_RAW_DECL_INITSTATE_R 996 _GL_WARN_ON_USE (initstate_r, "initstate_r is unportable - " 997 "use gnulib module random_r for portability"); 998 # endif 999 #endif 1000 1001 #if 0 1002 # if 0 1003 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 1004 # undef setstate_r 1005 # define setstate_r rpl_setstate_r 1006 # endif 1007 _GL_FUNCDECL_RPL (setstate_r, int, 1008 (char *arg_state, struct random_data *rand_state) 1009 _GL_ARG_NONNULL ((1, 2))); 1010 _GL_CXXALIAS_RPL (setstate_r, int, 1011 (char *arg_state, struct random_data *rand_state)); 1012 # else 1013 # if !1 1014 _GL_FUNCDECL_SYS (setstate_r, int, 1015 (char *arg_state, struct random_data *rand_state) 1016 _GL_ARG_NONNULL ((1, 2))); 1017 # endif 1018 _GL_CXXALIAS_SYS (setstate_r, int, 1019 (char *arg_state, struct random_data *rand_state)); 1020 # endif 1021 _GL_CXXALIASWARN (setstate_r); 1022 #elif defined GNULIB_POSIXCHECK 1023 # undef setstate_r 1024 # if HAVE_RAW_DECL_SETSTATE_R 1025 _GL_WARN_ON_USE (setstate_r, "setstate_r is unportable - " 1026 "use gnulib module random_r for portability"); 1027 # endif 1028 #endif 1029 1030 1031 #if 1 1032 # if 0 1033 # if !((defined __cplusplus && defined GNULIB_NAMESPACE) \ 1034 || _GL_USE_STDLIB_ALLOC) 1035 # undef realloc 1036 # define realloc rpl_realloc 1037 # endif 1038 _GL_FUNCDECL_RPL (realloc, void *, (void *ptr, size_t size)); 1039 _GL_CXXALIAS_RPL (realloc, void *, (void *ptr, size_t size)); 1040 # else 1041 _GL_CXXALIAS_SYS (realloc, void *, (void *ptr, size_t size)); 1042 # endif 1043 _GL_CXXALIASWARN (realloc); 1044 #elif defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC 1045 # undef realloc 1046 /* Assume realloc is always declared. */ 1047 _GL_WARN_ON_USE (realloc, "realloc is not POSIX compliant everywhere - " 1048 "use gnulib module realloc-posix for portability"); 1049 #endif 1050 1051 #if 0 1052 # if 0 1053 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 1054 # define realpath rpl_realpath 1055 # endif 1056 _GL_FUNCDECL_RPL (realpath, char *, (const char *name, char *resolved) 1057 _GL_ARG_NONNULL ((1))); 1058 _GL_CXXALIAS_RPL (realpath, char *, (const char *name, char *resolved)); 1059 # else 1060 # if !1 1061 _GL_FUNCDECL_SYS (realpath, char *, (const char *name, char *resolved) 1062 _GL_ARG_NONNULL ((1))); 1063 # endif 1064 _GL_CXXALIAS_SYS (realpath, char *, (const char *name, char *resolved)); 1065 # endif 1066 _GL_CXXALIASWARN (realpath); 1067 #elif defined GNULIB_POSIXCHECK 1068 # undef realpath 1069 # if HAVE_RAW_DECL_REALPATH 1070 _GL_WARN_ON_USE (realpath, "realpath is unportable - use gnulib module " 1071 "canonicalize or canonicalize-lgpl for portability"); 1072 # endif 1073 #endif 1074 1075 #if 0 1076 /* Test a user response to a question. 1077 Return 1 if it is affirmative, 0 if it is negative, or -1 if not clear. */ 1078 # if !1 1079 _GL_FUNCDECL_SYS (rpmatch, int, (const char *response) _GL_ARG_NONNULL ((1))); 1080 # endif 1081 _GL_CXXALIAS_SYS (rpmatch, int, (const char *response)); 1082 _GL_CXXALIASWARN (rpmatch); 1083 #elif defined GNULIB_POSIXCHECK 1084 # undef rpmatch 1085 # if HAVE_RAW_DECL_RPMATCH 1086 _GL_WARN_ON_USE (rpmatch, "rpmatch is unportable - " 1087 "use gnulib module rpmatch for portability"); 1088 # endif 1089 #endif 1090 1091 #if 0 1092 /* Set NAME to VALUE in the environment. 1093 If REPLACE is nonzero, overwrite an existing value. */ 1094 # if 0 1095 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 1096 # undef setenv 1097 # define setenv rpl_setenv 1098 # endif 1099 _GL_FUNCDECL_RPL (setenv, int, 1100 (const char *name, const char *value, int replace) 1101 _GL_ARG_NONNULL ((1))); 1102 _GL_CXXALIAS_RPL (setenv, int, 1103 (const char *name, const char *value, int replace)); 1104 # else 1105 # if !1 1106 _GL_FUNCDECL_SYS (setenv, int, 1107 (const char *name, const char *value, int replace) 1108 _GL_ARG_NONNULL ((1))); 1109 # endif 1110 _GL_CXXALIAS_SYS (setenv, int, 1111 (const char *name, const char *value, int replace)); 1112 # endif 1113 # if !(0 && !1) 1114 _GL_CXXALIASWARN (setenv); 1115 # endif 1116 #elif defined GNULIB_POSIXCHECK 1117 # undef setenv 1118 # if HAVE_RAW_DECL_SETENV 1119 _GL_WARN_ON_USE (setenv, "setenv is unportable - " 1120 "use gnulib module setenv for portability"); 1121 # endif 1122 #endif 1123 1124 #if 0 1125 /* Parse a double from STRING, updating ENDP if appropriate. */ 1126 # if 0 1127 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 1128 # define strtod rpl_strtod 1129 # endif 1130 _GL_FUNCDECL_RPL (strtod, double, (const char *str, char **endp) 1131 _GL_ARG_NONNULL ((1))); 1132 _GL_CXXALIAS_RPL (strtod, double, (const char *str, char **endp)); 1133 # else 1134 # if !1 1135 _GL_FUNCDECL_SYS (strtod, double, (const char *str, char **endp) 1136 _GL_ARG_NONNULL ((1))); 1137 # endif 1138 _GL_CXXALIAS_SYS (strtod, double, (const char *str, char **endp)); 1139 # endif 1140 _GL_CXXALIASWARN (strtod); 1141 #elif defined GNULIB_POSIXCHECK 1142 # undef strtod 1143 # if HAVE_RAW_DECL_STRTOD 1144 _GL_WARN_ON_USE (strtod, "strtod is unportable - " 1145 "use gnulib module strtod for portability"); 1146 # endif 1147 #endif 1148 1149 #if 0 1150 /* Parse a signed integer whose textual representation starts at STRING. 1151 The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0, 1152 it may be decimal or octal (with prefix "0") or hexadecimal (with prefix 1153 "0x"). 1154 If ENDPTR is not NULL, the address of the first byte after the integer is 1155 stored in *ENDPTR. 1156 Upon overflow, the return value is LLONG_MAX or LLONG_MIN, and errno is set 1157 to ERANGE. */ 1158 # if !1 1159 _GL_FUNCDECL_SYS (strtoll, long long, 1160 (const char *string, char **endptr, int base) 1161 _GL_ARG_NONNULL ((1))); 1162 # endif 1163 _GL_CXXALIAS_SYS (strtoll, long long, 1164 (const char *string, char **endptr, int base)); 1165 _GL_CXXALIASWARN (strtoll); 1166 #elif defined GNULIB_POSIXCHECK 1167 # undef strtoll 1168 # if HAVE_RAW_DECL_STRTOLL 1169 _GL_WARN_ON_USE (strtoll, "strtoll is unportable - " 1170 "use gnulib module strtoll for portability"); 1171 # endif 1172 #endif 1173 1174 #if 0 1175 /* Parse an unsigned integer whose textual representation starts at STRING. 1176 The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0, 1177 it may be decimal or octal (with prefix "0") or hexadecimal (with prefix 1178 "0x"). 1179 If ENDPTR is not NULL, the address of the first byte after the integer is 1180 stored in *ENDPTR. 1181 Upon overflow, the return value is ULLONG_MAX, and errno is set to 1182 ERANGE. */ 1183 # if !1 1184 _GL_FUNCDECL_SYS (strtoull, unsigned long long, 1185 (const char *string, char **endptr, int base) 1186 _GL_ARG_NONNULL ((1))); 1187 # endif 1188 _GL_CXXALIAS_SYS (strtoull, unsigned long long, 1189 (const char *string, char **endptr, int base)); 1190 _GL_CXXALIASWARN (strtoull); 1191 #elif defined GNULIB_POSIXCHECK 1192 # undef strtoull 1193 # if HAVE_RAW_DECL_STRTOULL 1194 _GL_WARN_ON_USE (strtoull, "strtoull is unportable - " 1195 "use gnulib module strtoull for portability"); 1196 # endif 1197 #endif 1198 1199 #if 0 1200 /* Unlock the slave side of the pseudo-terminal whose master side is specified 1201 by FD, so that it can be opened. */ 1202 # if !1 1203 _GL_FUNCDECL_SYS (unlockpt, int, (int fd)); 1204 # endif 1205 _GL_CXXALIAS_SYS (unlockpt, int, (int fd)); 1206 _GL_CXXALIASWARN (unlockpt); 1207 #elif defined GNULIB_POSIXCHECK 1208 # undef unlockpt 1209 # if HAVE_RAW_DECL_UNLOCKPT 1210 _GL_WARN_ON_USE (unlockpt, "unlockpt is not portable - " 1211 "use gnulib module unlockpt for portability"); 1212 # endif 1213 #endif 1214 1215 #if 1 1216 /* Remove the variable NAME from the environment. */ 1217 # if 0 1218 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 1219 # undef unsetenv 1220 # define unsetenv rpl_unsetenv 1221 # endif 1222 _GL_FUNCDECL_RPL (unsetenv, int, (const char *name) _GL_ARG_NONNULL ((1))); 1223 _GL_CXXALIAS_RPL (unsetenv, int, (const char *name)); 1224 # else 1225 # if !1 1226 _GL_FUNCDECL_SYS (unsetenv, int, (const char *name) _GL_ARG_NONNULL ((1))); 1227 # endif 1228 _GL_CXXALIAS_SYS (unsetenv, int, (const char *name)); 1229 # endif 1230 # if !(0 && !1) 1231 _GL_CXXALIASWARN (unsetenv); 1232 # endif 1233 #elif defined GNULIB_POSIXCHECK 1234 # undef unsetenv 1235 # if HAVE_RAW_DECL_UNSETENV 1236 _GL_WARN_ON_USE (unsetenv, "unsetenv is unportable - " 1237 "use gnulib module unsetenv for portability"); 1238 # endif 1239 #endif 1240 1241 /* Convert a wide character to a multibyte character. */ 1242 #if 0 1243 # if 0 1244 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) 1245 # undef wctomb 1246 # define wctomb rpl_wctomb 1247 # endif 1248 _GL_FUNCDECL_RPL (wctomb, int, (char *s, wchar_t wc)); 1249 _GL_CXXALIAS_RPL (wctomb, int, (char *s, wchar_t wc)); 1250 # else 1251 _GL_CXXALIAS_SYS (wctomb, int, (char *s, wchar_t wc)); 1252 # endif 1253 _GL_CXXALIASWARN (wctomb); 1254 #endif 1255 1256 1257 #endif /* _GL_STDLIB_H */ 1258 #endif /* _GL_STDLIB_H */ 1259 #endif 1260