• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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