1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 #if __GNUC__ >= 3
19 @PRAGMA_SYSTEM_HEADER@
20 #endif
21 @PRAGMA_COLUMNS@
22
23 #if defined __need_system_stdlib_h || defined __need_malloc_and_calloc
24
25
26
27 #@INCLUDE_NEXT@ @NEXT_STDLIB_H@
28
29 #else
30
31
32 #ifndef _@GUARD_PREFIX@_STDLIB_H
33
34
35 #@INCLUDE_NEXT@ @NEXT_STDLIB_H@
36
37 #ifndef _@GUARD_PREFIX@_STDLIB_H
38 #define _@GUARD_PREFIX@_STDLIB_H
39
40
41 #include <stddef.h>
42
43
44 #if @GNULIB_SYSTEM_POSIX@ && !defined WEXITSTATUS
45 # include <sys/wait.h>
46 #endif
47
48
49 #if (@GNULIB_GETLOADAVG@ || defined GNULIB_POSIXCHECK) && @HAVE_SYS_LOADAVG_H@
50
51
52 # include <sys/time.h>
53 # include <sys/loadavg.h>
54 #endif
55
56
57 #if defined _WIN32 && !defined __CYGWIN__
58 # include <io.h>
59 #endif
60
61 #if @GNULIB_RANDOM_R@
62
63
64
65
66 # if @HAVE_RANDOM_H@
67 # include <random.h>
68 # endif
69
70 # if !@HAVE_STRUCT_RANDOM_DATA@ || @REPLACE_RANDOM_R@ || !@HAVE_RANDOM_R@
71 # include <stdint.h>
72 # endif
73
74 # if !@HAVE_STRUCT_RANDOM_DATA@
75
76
77 # if !GNULIB_defined_struct_random_data
78 struct random_data
79 {
80 int32_t *fptr;
81 int32_t *rptr;
82 int32_t *state;
83 int rand_type;
84 int rand_deg;
85 int rand_sep;
86 int32_t *end_ptr;
87 };
88 # define GNULIB_defined_struct_random_data 1
89 # endif
90 # endif
91 #endif
92
93 #if (@GNULIB_MKSTEMP@ || @GNULIB_MKSTEMPS@ || @GNULIB_MKOSTEMP@ || @GNULIB_MKOSTEMPS@ || @GNULIB_GETSUBOPT@ || defined GNULIB_POSIXCHECK) && ! defined __GLIBC__ && !(defined _WIN32 && ! defined __CYGWIN__)
94
95
96
97
98
99 # include <unistd.h>
100 #endif
101
102
103
104
105 #ifndef _GL_ATTRIBUTE_DEALLOC
106 # if __GNUC__ >= 11
107 # define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i)))
108 # else
109 # define _GL_ATTRIBUTE_DEALLOC(f, i)
110 # endif
111 #endif
112
113
114
115
116 #ifndef _GL_ATTRIBUTE_DEALLOC_FREE
117 # define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (free, 1)
118 #endif
119
120
121
122
123 #ifndef _GL_ATTRIBUTE_MALLOC
124 # if __GNUC__ >= 3 || defined __clang__
125 # define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
126 # else
127 # define _GL_ATTRIBUTE_MALLOC
128 # endif
129 #endif
130
131
132
133 #ifndef _GL_ATTRIBUTE_PURE
134 # if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__
135 # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
136 # else
137 # define _GL_ATTRIBUTE_PURE
138 # endif
139 #endif
140
141
142
143
144
145
146
147
148
149
150
151 #ifndef EXIT_SUCCESS
152 # define EXIT_SUCCESS 0
153 #endif
154
155
156 #ifndef EXIT_FAILURE
157 # define EXIT_FAILURE 1
158 #elif EXIT_FAILURE != 1
159 # undef EXIT_FAILURE
160 # define EXIT_FAILURE 1
161 #endif
162
163
164 #if @GNULIB__EXIT@
165
166
167 # if !@HAVE__EXIT@
168 _GL_FUNCDECL_SYS (_Exit, _Noreturn void, (int status));
169 # endif
170 _GL_CXXALIAS_SYS (_Exit, void, (int status));
171 _GL_CXXALIASWARN (_Exit);
172 #elif defined GNULIB_POSIXCHECK
173 # undef _Exit
174 # if HAVE_RAW_DECL__EXIT
175 _GL_WARN_ON_USE (_Exit, "_Exit is unportable - "
176 "use gnulib module _Exit for portability");
177 # endif
178 #endif
179
180
181 #if @GNULIB_FREE_POSIX@
182 # if @REPLACE_FREE@
183 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
184 # undef free
185 # define free rpl_free
186 # endif
187 _GL_FUNCDECL_RPL (free, void, (void *ptr));
188 _GL_CXXALIAS_RPL (free, void, (void *ptr));
189 # else
190 _GL_CXXALIAS_SYS (free, void, (void *ptr));
191 # endif
192 # if __GLIBC__ >= 2
193 _GL_CXXALIASWARN (free);
194 # endif
195 #elif defined GNULIB_POSIXCHECK
196 # undef free
197
198 _GL_WARN_ON_USE (free, "free is not future POSIX compliant everywhere - "
199 "use gnulib module free for portability");
200 #endif
201
202
203
204 #if @GNULIB_ALIGNED_ALLOC@
205 # if @REPLACE_ALIGNED_ALLOC@
206 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
207 # undef aligned_alloc
208 # define aligned_alloc rpl_aligned_alloc
209 # endif
210 _GL_FUNCDECL_RPL (aligned_alloc, void *,
211 (size_t alignment, size_t size)
212 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
213 _GL_CXXALIAS_RPL (aligned_alloc, void *, (size_t alignment, size_t size));
214 # else
215 # if @HAVE_ALIGNED_ALLOC@
216 # if __GNUC__ >= 11
217
218 _GL_FUNCDECL_SYS (aligned_alloc, void *,
219 (size_t alignment, size_t size)
220 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
221 # endif
222 _GL_CXXALIAS_SYS (aligned_alloc, void *, (size_t alignment, size_t size));
223 # endif
224 # endif
225 # if @HAVE_ALIGNED_ALLOC@
226 _GL_CXXALIASWARN (aligned_alloc);
227 # endif
228 #else
229 # if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined aligned_alloc
230
231 _GL_FUNCDECL_SYS (aligned_alloc, void *,
232 (size_t alignment, size_t size)
233 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
234 # endif
235 # if defined GNULIB_POSIXCHECK
236 # undef aligned_alloc
237 # if HAVE_RAW_DECL_ALIGNED_ALLOC
238 _GL_WARN_ON_USE (aligned_alloc, "aligned_alloc is not portable - "
239 "use gnulib module aligned_alloc for portability");
240 # endif
241 # endif
242 #endif
243
244 #if @GNULIB_ATOLL@
245
246
247 # if !@HAVE_ATOLL@
248 _GL_FUNCDECL_SYS (atoll, long long, (const char *string)
249 _GL_ATTRIBUTE_PURE
250 _GL_ARG_NONNULL ((1)));
251 # endif
252 _GL_CXXALIAS_SYS (atoll, long long, (const char *string));
253 _GL_CXXALIASWARN (atoll);
254 #elif defined GNULIB_POSIXCHECK
255 # undef atoll
256 # if HAVE_RAW_DECL_ATOLL
257 _GL_WARN_ON_USE (atoll, "atoll is unportable - "
258 "use gnulib module atoll for portability");
259 # endif
260 #endif
261
262 #if @GNULIB_CALLOC_POSIX@
263 # if @REPLACE_CALLOC@
264 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
265 # undef calloc
266 # define calloc rpl_calloc
267 # endif
268 _GL_FUNCDECL_RPL (calloc, void *,
269 (size_t nmemb, size_t size)
270 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
271 _GL_CXXALIAS_RPL (calloc, void *, (size_t nmemb, size_t size));
272 # else
273 # if __GNUC__ >= 11
274
275 _GL_FUNCDECL_SYS (calloc, void *,
276 (size_t nmemb, size_t size)
277 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
278 # endif
279 _GL_CXXALIAS_SYS (calloc, void *, (size_t nmemb, size_t size));
280 # endif
281 # if __GLIBC__ >= 2
282 _GL_CXXALIASWARN (calloc);
283 # endif
284 #else
285 # if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined calloc
286
287 _GL_FUNCDECL_SYS (calloc, void *,
288 (size_t nmemb, size_t size)
289 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
290 # endif
291 # if defined GNULIB_POSIXCHECK
292 # undef calloc
293
294 _GL_WARN_ON_USE (calloc, "calloc is not POSIX compliant everywhere - "
295 "use gnulib module calloc-posix for portability");
296 # endif
297 #endif
298
299 #if @GNULIB_CANONICALIZE_FILE_NAME@
300 # if @REPLACE_CANONICALIZE_FILE_NAME@
301 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
302 # define canonicalize_file_name rpl_canonicalize_file_name
303 # endif
304 _GL_FUNCDECL_RPL (canonicalize_file_name, char *,
305 (const char *name)
306 _GL_ARG_NONNULL ((1))
307 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
308 _GL_CXXALIAS_RPL (canonicalize_file_name, char *, (const char *name));
309 # else
310 # if !@HAVE_CANONICALIZE_FILE_NAME@ || __GNUC__ >= 11
311 _GL_FUNCDECL_SYS (canonicalize_file_name, char *,
312 (const char *name)
313 _GL_ARG_NONNULL ((1))
314 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
315 # endif
316 _GL_CXXALIAS_SYS (canonicalize_file_name, char *, (const char *name));
317 # endif
318 # ifndef GNULIB_defined_canonicalize_file_name
319 # define GNULIB_defined_canonicalize_file_name \
320 (!@HAVE_CANONICALIZE_FILE_NAME@ || @REPLACE_CANONICALIZE_FILE_NAME@)
321 # endif
322 _GL_CXXALIASWARN (canonicalize_file_name);
323 #else
324 # if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined canonicalize_file_name
325
326
327 _GL_FUNCDECL_SYS (canonicalize_file_name, char *,
328 (const char *name)
329 _GL_ARG_NONNULL ((1))
330 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
331 # endif
332 # if defined GNULIB_POSIXCHECK
333 # undef canonicalize_file_name
334 # if HAVE_RAW_DECL_CANONICALIZE_FILE_NAME
335 _GL_WARN_ON_USE (canonicalize_file_name,
336 "canonicalize_file_name is unportable - "
337 "use gnulib module canonicalize-lgpl for portability");
338 # endif
339 # endif
340 #endif
341
342 #if @GNULIB_MDA_ECVT@
343
344
345
346
347 # if defined _WIN32 && !defined __CYGWIN__
348 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
349 # undef ecvt
350 # define ecvt _ecvt
351 # endif
352 _GL_CXXALIAS_MDA (ecvt, char *,
353 (double number, int ndigits, int *decptp, int *signp));
354 # else
355 # if @HAVE_DECL_ECVT@
356 _GL_CXXALIAS_SYS (ecvt, char *,
357 (double number, int ndigits, int *decptp, int *signp));
358 # endif
359 # endif
360 # if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_ECVT@
361 _GL_CXXALIASWARN (ecvt);
362 # endif
363 #endif
364
365 #if @GNULIB_MDA_FCVT@
366
367
368
369
370 # if defined _WIN32 && !defined __CYGWIN__
371 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
372 # undef fcvt
373 # define fcvt _fcvt
374 # endif
375 _GL_CXXALIAS_MDA (fcvt, char *,
376 (double number, int ndigits, int *decptp, int *signp));
377 # else
378 # if @HAVE_DECL_FCVT@
379 _GL_CXXALIAS_SYS (fcvt, char *,
380 (double number, int ndigits, int *decptp, int *signp));
381 # endif
382 # endif
383 # if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_FCVT@
384 _GL_CXXALIASWARN (fcvt);
385 # endif
386 #endif
387
388 #if @GNULIB_MDA_GCVT@
389
390
391
392
393 # if defined _WIN32 && !defined __CYGWIN__
394 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
395 # undef gcvt
396 # define gcvt _gcvt
397 # endif
398 _GL_CXXALIAS_MDA (gcvt, char *, (double number, int ndigits, char *buf));
399 # else
400 # if @HAVE_DECL_GCVT@
401 _GL_CXXALIAS_SYS (gcvt, char *, (double number, int ndigits, char *buf));
402 # endif
403 # endif
404 # if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_GCVT@
405 _GL_CXXALIASWARN (gcvt);
406 # endif
407 #endif
408
409 #if @GNULIB_GETLOADAVG@
410
411
412
413
414 # if !@HAVE_DECL_GETLOADAVG@
415 _GL_FUNCDECL_SYS (getloadavg, int, (double loadavg[], int nelem)
416 _GL_ARG_NONNULL ((1)));
417 # endif
418 _GL_CXXALIAS_SYS (getloadavg, int, (double loadavg[], int nelem));
419 _GL_CXXALIASWARN (getloadavg);
420 #elif defined GNULIB_POSIXCHECK
421 # undef getloadavg
422 # if HAVE_RAW_DECL_GETLOADAVG
423 _GL_WARN_ON_USE (getloadavg, "getloadavg is not portable - "
424 "use gnulib module getloadavg for portability");
425 # endif
426 #endif
427
428 #if @GNULIB_GETSUBOPT@
429
430
431
432
433
434
435
436
437
438
439
440 # if !@HAVE_GETSUBOPT@
441 _GL_FUNCDECL_SYS (getsubopt, int,
442 (char **optionp, char *const *tokens, char **valuep)
443 _GL_ARG_NONNULL ((1, 2, 3)));
444 # endif
445 _GL_CXXALIAS_SYS (getsubopt, int,
446 (char **optionp, char *const *tokens, char **valuep));
447 _GL_CXXALIASWARN (getsubopt);
448 #elif defined GNULIB_POSIXCHECK
449 # undef getsubopt
450 # if HAVE_RAW_DECL_GETSUBOPT
451 _GL_WARN_ON_USE (getsubopt, "getsubopt is unportable - "
452 "use gnulib module getsubopt for portability");
453 # endif
454 #endif
455
456 #if @GNULIB_GRANTPT@
457
458
459 # if !@HAVE_GRANTPT@
460 _GL_FUNCDECL_SYS (grantpt, int, (int fd));
461 # endif
462 _GL_CXXALIAS_SYS (grantpt, int, (int fd));
463 _GL_CXXALIASWARN (grantpt);
464 #elif defined GNULIB_POSIXCHECK
465 # undef grantpt
466 # if HAVE_RAW_DECL_GRANTPT
467 _GL_WARN_ON_USE (grantpt, "grantpt is not portable - "
468 "use gnulib module grantpt for portability");
469 # endif
470 #endif
471
472
473
474
475
476 #if @GNULIB_MALLOC_POSIX@
477 # if @REPLACE_MALLOC@
478 # if !((defined __cplusplus && defined GNULIB_NAMESPACE) \
479 || _GL_USE_STDLIB_ALLOC)
480 # undef malloc
481 # define malloc rpl_malloc
482 # endif
483 _GL_FUNCDECL_RPL (malloc, void *,
484 (size_t size)
485 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
486 _GL_CXXALIAS_RPL (malloc, void *, (size_t size));
487 # else
488 # if __GNUC__ >= 11
489
490 _GL_FUNCDECL_SYS (malloc, void *,
491 (size_t size)
492 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
493 # endif
494 _GL_CXXALIAS_SYS (malloc, void *, (size_t size));
495 # endif
496 # if __GLIBC__ >= 2
497 _GL_CXXALIASWARN (malloc);
498 # endif
499 #else
500 # if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined malloc
501
502 _GL_FUNCDECL_SYS (malloc, void *,
503 (size_t size)
504 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE);
505 # endif
506 # if defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC
507 # undef malloc
508
509 _GL_WARN_ON_USE (malloc, "malloc is not POSIX compliant everywhere - "
510 "use gnulib module malloc-posix for portability");
511 # endif
512 #endif
513
514
515 #if @GNULIB_MBTOWC@
516 # if @REPLACE_MBTOWC@
517 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
518 # undef mbtowc
519 # define mbtowc rpl_mbtowc
520 # endif
521 _GL_FUNCDECL_RPL (mbtowc, int,
522 (wchar_t *restrict pwc, const char *restrict s, size_t n));
523 _GL_CXXALIAS_RPL (mbtowc, int,
524 (wchar_t *restrict pwc, const char *restrict s, size_t n));
525 # else
526 # if !@HAVE_MBTOWC@
527 _GL_FUNCDECL_SYS (mbtowc, int,
528 (wchar_t *restrict pwc, const char *restrict s, size_t n));
529 # endif
530 _GL_CXXALIAS_SYS (mbtowc, int,
531 (wchar_t *restrict pwc, const char *restrict s, size_t n));
532 # endif
533 # if __GLIBC__ >= 2
534 _GL_CXXALIASWARN (mbtowc);
535 # endif
536 #elif defined GNULIB_POSIXCHECK
537 # undef mbtowc
538 # if HAVE_RAW_DECL_MBTOWC
539 _GL_WARN_ON_USE (mbtowc, "mbtowc is not portable - "
540 "use gnulib module mbtowc for portability");
541 # endif
542 #endif
543
544 #if @GNULIB_MKDTEMP@
545
546
547
548
549
550 # if !@HAVE_MKDTEMP@
551 _GL_FUNCDECL_SYS (mkdtemp, char *, (char * ) _GL_ARG_NONNULL ((1)));
552 # endif
553 _GL_CXXALIAS_SYS (mkdtemp, char *, (char * ));
554 _GL_CXXALIASWARN (mkdtemp);
555 #elif defined GNULIB_POSIXCHECK
556 # undef mkdtemp
557 # if HAVE_RAW_DECL_MKDTEMP
558 _GL_WARN_ON_USE (mkdtemp, "mkdtemp is unportable - "
559 "use gnulib module mkdtemp for portability");
560 # endif
561 #endif
562
563 #if @GNULIB_MKOSTEMP@
564
565
566
567
568
569
570
571
572
573
574
575
576 # if !@HAVE_MKOSTEMP@
577 _GL_FUNCDECL_SYS (mkostemp, int, (char * , int )
578 _GL_ARG_NONNULL ((1)));
579 # endif
580 _GL_CXXALIAS_SYS (mkostemp, int, (char * , int ));
581 _GL_CXXALIASWARN (mkostemp);
582 #elif defined GNULIB_POSIXCHECK
583 # undef mkostemp
584 # if HAVE_RAW_DECL_MKOSTEMP
585 _GL_WARN_ON_USE (mkostemp, "mkostemp is unportable - "
586 "use gnulib module mkostemp for portability");
587 # endif
588 #endif
589
590 #if @GNULIB_MKOSTEMPS@
591
592
593
594
595
596
597
598
599
600
601
602
603
604 # if !@HAVE_MKOSTEMPS@
605 _GL_FUNCDECL_SYS (mkostemps, int,
606 (char * , int , int )
607 _GL_ARG_NONNULL ((1)));
608 # endif
609 _GL_CXXALIAS_SYS (mkostemps, int,
610 (char * , int , int ));
611 _GL_CXXALIASWARN (mkostemps);
612 #elif defined GNULIB_POSIXCHECK
613 # undef mkostemps
614 # if HAVE_RAW_DECL_MKOSTEMPS
615 _GL_WARN_ON_USE (mkostemps, "mkostemps is unportable - "
616 "use gnulib module mkostemps for portability");
617 # endif
618 #endif
619
620 #if @GNULIB_MKSTEMP@
621
622
623
624
625
626
627
628
629
630 # if @REPLACE_MKSTEMP@
631 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
632 # define mkstemp rpl_mkstemp
633 # endif
634 _GL_FUNCDECL_RPL (mkstemp, int, (char * ) _GL_ARG_NONNULL ((1)));
635 _GL_CXXALIAS_RPL (mkstemp, int, (char * ));
636 # else
637 # if ! @HAVE_MKSTEMP@
638 _GL_FUNCDECL_SYS (mkstemp, int, (char * ) _GL_ARG_NONNULL ((1)));
639 # endif
640 _GL_CXXALIAS_SYS (mkstemp, int, (char * ));
641 # endif
642 _GL_CXXALIASWARN (mkstemp);
643 #elif defined GNULIB_POSIXCHECK
644 # undef mkstemp
645 # if HAVE_RAW_DECL_MKSTEMP
646 _GL_WARN_ON_USE (mkstemp, "mkstemp is unportable - "
647 "use gnulib module mkstemp for portability");
648 # endif
649 #endif
650
651 #if @GNULIB_MKSTEMPS@
652
653
654
655
656
657
658
659
660
661
662 # if !@HAVE_MKSTEMPS@
663 _GL_FUNCDECL_SYS (mkstemps, int, (char * , int )
664 _GL_ARG_NONNULL ((1)));
665 # endif
666 _GL_CXXALIAS_SYS (mkstemps, int, (char * , int ));
667 _GL_CXXALIASWARN (mkstemps);
668 #elif defined GNULIB_POSIXCHECK
669 # undef mkstemps
670 # if HAVE_RAW_DECL_MKSTEMPS
671 _GL_WARN_ON_USE (mkstemps, "mkstemps is unportable - "
672 "use gnulib module mkstemps for portability");
673 # endif
674 #endif
675
676 #if @GNULIB_MDA_MKTEMP@
677
678
679
680 # if defined _WIN32 && !defined __CYGWIN__
681 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
682 # undef mktemp
683 # define mktemp _mktemp
684 # endif
685 _GL_CXXALIAS_MDA (mktemp, char *, (char * ));
686 # else
687 _GL_CXXALIAS_SYS (mktemp, char *, (char * ));
688 # endif
689 _GL_CXXALIASWARN (mktemp);
690 #endif
691
692
693 #if @GNULIB_POSIX_MEMALIGN@
694 # if @REPLACE_POSIX_MEMALIGN@
695 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
696 # undef posix_memalign
697 # define posix_memalign rpl_posix_memalign
698 # endif
699 _GL_FUNCDECL_RPL (posix_memalign, int,
700 (void **memptr, size_t alignment, size_t size)
701 _GL_ARG_NONNULL ((1)));
702 _GL_CXXALIAS_RPL (posix_memalign, int,
703 (void **memptr, size_t alignment, size_t size));
704 # else
705 # if @HAVE_POSIX_MEMALIGN@
706 _GL_CXXALIAS_SYS (posix_memalign, int,
707 (void **memptr, size_t alignment, size_t size));
708 # endif
709 # endif
710 # if @HAVE_POSIX_MEMALIGN@
711 _GL_CXXALIASWARN (posix_memalign);
712 # endif
713 #elif defined GNULIB_POSIXCHECK
714 # undef posix_memalign
715 # if HAVE_RAW_DECL_POSIX_MEMALIGN
716 _GL_WARN_ON_USE (posix_memalign, "posix_memalign is not portable - "
717 "use gnulib module posix_memalign for portability");
718 # endif
719 #endif
720
721 #if @GNULIB_POSIX_OPENPT@
722
723
724 # if !@HAVE_POSIX_OPENPT@
725 _GL_FUNCDECL_SYS (posix_openpt, int, (int flags));
726 # endif
727 _GL_CXXALIAS_SYS (posix_openpt, int, (int flags));
728 _GL_CXXALIASWARN (posix_openpt);
729 #elif defined GNULIB_POSIXCHECK
730 # undef posix_openpt
731 # if HAVE_RAW_DECL_POSIX_OPENPT
732 _GL_WARN_ON_USE (posix_openpt, "posix_openpt is not portable - "
733 "use gnulib module posix_openpt for portability");
734 # endif
735 #endif
736
737 #if @GNULIB_PTSNAME@
738
739
740 # if @REPLACE_PTSNAME@
741 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
742 # undef ptsname
743 # define ptsname rpl_ptsname
744 # endif
745 _GL_FUNCDECL_RPL (ptsname, char *, (int fd));
746 _GL_CXXALIAS_RPL (ptsname, char *, (int fd));
747 # else
748 # if !@HAVE_PTSNAME@
749 _GL_FUNCDECL_SYS (ptsname, char *, (int fd));
750 # endif
751 _GL_CXXALIAS_SYS (ptsname, char *, (int fd));
752 # endif
753 _GL_CXXALIASWARN (ptsname);
754 #elif defined GNULIB_POSIXCHECK
755 # undef ptsname
756 # if HAVE_RAW_DECL_PTSNAME
757 _GL_WARN_ON_USE (ptsname, "ptsname is not portable - "
758 "use gnulib module ptsname for portability");
759 # endif
760 #endif
761
762 #if @GNULIB_PTSNAME_R@
763
764
765
766 # if @REPLACE_PTSNAME_R@
767 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
768 # undef ptsname_r
769 # define ptsname_r rpl_ptsname_r
770 # endif
771 _GL_FUNCDECL_RPL (ptsname_r, int, (int fd, char *buf, size_t len));
772 _GL_CXXALIAS_RPL (ptsname_r, int, (int fd, char *buf, size_t len));
773 # else
774 # if !@HAVE_PTSNAME_R@
775 _GL_FUNCDECL_SYS (ptsname_r, int, (int fd, char *buf, size_t len));
776 # endif
777 _GL_CXXALIAS_SYS (ptsname_r, int, (int fd, char *buf, size_t len));
778 # endif
779 # ifndef GNULIB_defined_ptsname_r
780 # define GNULIB_defined_ptsname_r (!@HAVE_PTSNAME_R@ || @REPLACE_PTSNAME_R@)
781 # endif
782 _GL_CXXALIASWARN (ptsname_r);
783 #elif defined GNULIB_POSIXCHECK
784 # undef ptsname_r
785 # if HAVE_RAW_DECL_PTSNAME_R
786 _GL_WARN_ON_USE (ptsname_r, "ptsname_r is not portable - "
787 "use gnulib module ptsname_r for portability");
788 # endif
789 #endif
790
791 #if @GNULIB_PUTENV@
792 # if @REPLACE_PUTENV@
793 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
794 # undef putenv
795 # define putenv rpl_putenv
796 # endif
797 _GL_FUNCDECL_RPL (putenv, int, (char *string) _GL_ARG_NONNULL ((1)));
798 _GL_CXXALIAS_RPL (putenv, int, (char *string));
799 # elif defined _WIN32 && !defined __CYGWIN__
800 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
801 # undef putenv
802 # define putenv _putenv
803 # endif
804 _GL_CXXALIAS_MDA (putenv, int, (char *string));
805 # else
806 _GL_CXXALIAS_SYS (putenv, int, (char *string));
807 # endif
808 _GL_CXXALIASWARN (putenv);
809 #elif @GNULIB_MDA_PUTENV@
810
811
812
813 # if defined _WIN32 && !defined __CYGWIN__
814 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
815 # undef putenv
816 # define putenv _putenv
817 # endif
818
819
820 _GL_CXXALIAS_MDA_CAST (putenv, int, (char *string));
821 # else
822 _GL_CXXALIAS_SYS (putenv, int, (char *string));
823 # endif
824 _GL_CXXALIASWARN (putenv);
825 #endif
826
827 #if @GNULIB_QSORT_R@
828
829
830
831 # if @REPLACE_QSORT_R@
832 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
833 # undef qsort_r
834 # define qsort_r rpl_qsort_r
835 # endif
836 _GL_FUNCDECL_RPL (qsort_r, void, (void *base, size_t nmemb, size_t size,
837 int (*compare) (void const *, void const *,
838 void *),
839 void *arg) _GL_ARG_NONNULL ((1, 4)));
840 _GL_CXXALIAS_RPL (qsort_r, void, (void *base, size_t nmemb, size_t size,
841 int (*compare) (void const *, void const *,
842 void *),
843 void *arg));
844 # else
845 # if !@HAVE_QSORT_R@
846 _GL_FUNCDECL_SYS (qsort_r, void, (void *base, size_t nmemb, size_t size,
847 int (*compare) (void const *, void const *,
848 void *),
849 void *arg) _GL_ARG_NONNULL ((1, 4)));
850 # endif
851 _GL_CXXALIAS_SYS (qsort_r, void, (void *base, size_t nmemb, size_t size,
852 int (*compare) (void const *, void const *,
853 void *),
854 void *arg));
855 # endif
856 _GL_CXXALIASWARN (qsort_r);
857 #elif defined GNULIB_POSIXCHECK
858 # undef qsort_r
859 # if HAVE_RAW_DECL_QSORT_R
860 _GL_WARN_ON_USE (qsort_r, "qsort_r is not portable - "
861 "use gnulib module qsort_r for portability");
862 # endif
863 #endif
864
865
866 #if @GNULIB_RANDOM_R@
867 # if !@HAVE_RANDOM_R@
868 # ifndef RAND_MAX
869 # define RAND_MAX 2147483647
870 # endif
871 # endif
872 #endif
873
874
875 #if @GNULIB_RANDOM@
876 # if @REPLACE_RANDOM@
877 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
878 # undef random
879 # define random rpl_random
880 # endif
881 _GL_FUNCDECL_RPL (random, long, (void));
882 _GL_CXXALIAS_RPL (random, long, (void));
883 # else
884 # if !@HAVE_RANDOM@
885 _GL_FUNCDECL_SYS (random, long, (void));
886 # endif
887
888
889 _GL_CXXALIAS_SYS_CAST (random, long, (void));
890 # endif
891 _GL_CXXALIASWARN (random);
892 #elif defined GNULIB_POSIXCHECK
893 # undef random
894 # if HAVE_RAW_DECL_RANDOM
895 _GL_WARN_ON_USE (random, "random is unportable - "
896 "use gnulib module random for portability");
897 # endif
898 #endif
899
900 #if @GNULIB_RANDOM@
901 # if @REPLACE_RANDOM@
902 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
903 # undef srandom
904 # define srandom rpl_srandom
905 # endif
906 _GL_FUNCDECL_RPL (srandom, void, (unsigned int seed));
907 _GL_CXXALIAS_RPL (srandom, void, (unsigned int seed));
908 # else
909 # if !@HAVE_RANDOM@
910 _GL_FUNCDECL_SYS (srandom, void, (unsigned int seed));
911 # endif
912
913
914 _GL_CXXALIAS_SYS_CAST (srandom, void, (unsigned int seed));
915 # endif
916 _GL_CXXALIASWARN (srandom);
917 #elif defined GNULIB_POSIXCHECK
918 # undef srandom
919 # if HAVE_RAW_DECL_SRANDOM
920 _GL_WARN_ON_USE (srandom, "srandom is unportable - "
921 "use gnulib module random for portability");
922 # endif
923 #endif
924
925 #if @GNULIB_RANDOM@
926 # if @REPLACE_INITSTATE@
927 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
928 # undef initstate
929 # define initstate rpl_initstate
930 # endif
931 _GL_FUNCDECL_RPL (initstate, char *,
932 (unsigned int seed, char *buf, size_t buf_size)
933 _GL_ARG_NONNULL ((2)));
934 _GL_CXXALIAS_RPL (initstate, char *,
935 (unsigned int seed, char *buf, size_t buf_size));
936 # else
937 # if !@HAVE_INITSTATE@ || !@HAVE_DECL_INITSTATE@
938 _GL_FUNCDECL_SYS (initstate, char *,
939 (unsigned int seed, char *buf, size_t buf_size)
940 _GL_ARG_NONNULL ((2)));
941 # endif
942
943
944 _GL_CXXALIAS_SYS_CAST (initstate, char *,
945 (unsigned int seed, char *buf, size_t buf_size));
946 # endif
947 _GL_CXXALIASWARN (initstate);
948 #elif defined GNULIB_POSIXCHECK
949 # undef initstate
950 # if HAVE_RAW_DECL_INITSTATE
951 _GL_WARN_ON_USE (initstate, "initstate is unportable - "
952 "use gnulib module random for portability");
953 # endif
954 #endif
955
956 #if @GNULIB_RANDOM@
957 # if @REPLACE_SETSTATE@
958 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
959 # undef setstate
960 # define setstate rpl_setstate
961 # endif
962 _GL_FUNCDECL_RPL (setstate, char *, (char *arg_state) _GL_ARG_NONNULL ((1)));
963 _GL_CXXALIAS_RPL (setstate, char *, (char *arg_state));
964 # else
965 # if !@HAVE_SETSTATE@ || !@HAVE_DECL_SETSTATE@
966 _GL_FUNCDECL_SYS (setstate, char *, (char *arg_state) _GL_ARG_NONNULL ((1)));
967 # endif
968
969
970 _GL_CXXALIAS_SYS_CAST (setstate, char *, (char *arg_state));
971 # endif
972 _GL_CXXALIASWARN (setstate);
973 #elif defined GNULIB_POSIXCHECK
974 # undef setstate
975 # if HAVE_RAW_DECL_SETSTATE
976 _GL_WARN_ON_USE (setstate, "setstate is unportable - "
977 "use gnulib module random for portability");
978 # endif
979 #endif
980
981
982 #if @GNULIB_RANDOM_R@
983 # if @REPLACE_RANDOM_R@
984 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
985 # undef random_r
986 # define random_r rpl_random_r
987 # endif
988 _GL_FUNCDECL_RPL (random_r, int, (struct random_data *buf, int32_t *result)
989 _GL_ARG_NONNULL ((1, 2)));
990 _GL_CXXALIAS_RPL (random_r, int, (struct random_data *buf, int32_t *result));
991 # else
992 # if !@HAVE_RANDOM_R@
993 _GL_FUNCDECL_SYS (random_r, int, (struct random_data *buf, int32_t *result)
994 _GL_ARG_NONNULL ((1, 2)));
995 # endif
996 _GL_CXXALIAS_SYS (random_r, int, (struct random_data *buf, int32_t *result));
997 # endif
998 _GL_CXXALIASWARN (random_r);
999 #elif defined GNULIB_POSIXCHECK
1000 # undef random_r
1001 # if HAVE_RAW_DECL_RANDOM_R
1002 _GL_WARN_ON_USE (random_r, "random_r is unportable - "
1003 "use gnulib module random_r for portability");
1004 # endif
1005 #endif
1006
1007 #if @GNULIB_RANDOM_R@
1008 # if @REPLACE_RANDOM_R@
1009 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1010 # undef srandom_r
1011 # define srandom_r rpl_srandom_r
1012 # endif
1013 _GL_FUNCDECL_RPL (srandom_r, int,
1014 (unsigned int seed, struct random_data *rand_state)
1015 _GL_ARG_NONNULL ((2)));
1016 _GL_CXXALIAS_RPL (srandom_r, int,
1017 (unsigned int seed, struct random_data *rand_state));
1018 # else
1019 # if !@HAVE_RANDOM_R@
1020 _GL_FUNCDECL_SYS (srandom_r, int,
1021 (unsigned int seed, struct random_data *rand_state)
1022 _GL_ARG_NONNULL ((2)));
1023 # endif
1024 _GL_CXXALIAS_SYS (srandom_r, int,
1025 (unsigned int seed, struct random_data *rand_state));
1026 # endif
1027 _GL_CXXALIASWARN (srandom_r);
1028 #elif defined GNULIB_POSIXCHECK
1029 # undef srandom_r
1030 # if HAVE_RAW_DECL_SRANDOM_R
1031 _GL_WARN_ON_USE (srandom_r, "srandom_r is unportable - "
1032 "use gnulib module random_r for portability");
1033 # endif
1034 #endif
1035
1036 #if @GNULIB_RANDOM_R@
1037 # if @REPLACE_RANDOM_R@
1038 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1039 # undef initstate_r
1040 # define initstate_r rpl_initstate_r
1041 # endif
1042 _GL_FUNCDECL_RPL (initstate_r, int,
1043 (unsigned int seed, char *buf, size_t buf_size,
1044 struct random_data *rand_state)
1045 _GL_ARG_NONNULL ((2, 4)));
1046 _GL_CXXALIAS_RPL (initstate_r, int,
1047 (unsigned int seed, char *buf, size_t buf_size,
1048 struct random_data *rand_state));
1049 # else
1050 # if !@HAVE_RANDOM_R@
1051 _GL_FUNCDECL_SYS (initstate_r, int,
1052 (unsigned int seed, char *buf, size_t buf_size,
1053 struct random_data *rand_state)
1054 _GL_ARG_NONNULL ((2, 4)));
1055 # endif
1056
1057
1058 _GL_CXXALIAS_SYS_CAST (initstate_r, int,
1059 (unsigned int seed, char *buf, size_t buf_size,
1060 struct random_data *rand_state));
1061 # endif
1062 _GL_CXXALIASWARN (initstate_r);
1063 #elif defined GNULIB_POSIXCHECK
1064 # undef initstate_r
1065 # if HAVE_RAW_DECL_INITSTATE_R
1066 _GL_WARN_ON_USE (initstate_r, "initstate_r is unportable - "
1067 "use gnulib module random_r for portability");
1068 # endif
1069 #endif
1070
1071 #if @GNULIB_RANDOM_R@
1072 # if @REPLACE_RANDOM_R@
1073 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1074 # undef setstate_r
1075 # define setstate_r rpl_setstate_r
1076 # endif
1077 _GL_FUNCDECL_RPL (setstate_r, int,
1078 (char *arg_state, struct random_data *rand_state)
1079 _GL_ARG_NONNULL ((1, 2)));
1080 _GL_CXXALIAS_RPL (setstate_r, int,
1081 (char *arg_state, struct random_data *rand_state));
1082 # else
1083 # if !@HAVE_RANDOM_R@
1084 _GL_FUNCDECL_SYS (setstate_r, int,
1085 (char *arg_state, struct random_data *rand_state)
1086 _GL_ARG_NONNULL ((1, 2)));
1087 # endif
1088
1089
1090 _GL_CXXALIAS_SYS_CAST (setstate_r, int,
1091 (char *arg_state, struct random_data *rand_state));
1092 # endif
1093 _GL_CXXALIASWARN (setstate_r);
1094 #elif defined GNULIB_POSIXCHECK
1095 # undef setstate_r
1096 # if HAVE_RAW_DECL_SETSTATE_R
1097 _GL_WARN_ON_USE (setstate_r, "setstate_r is unportable - "
1098 "use gnulib module random_r for portability");
1099 # endif
1100 #endif
1101
1102
1103 #if @GNULIB_REALLOC_POSIX@
1104 # if @REPLACE_REALLOC@
1105 # if !((defined __cplusplus && defined GNULIB_NAMESPACE) \
1106 || _GL_USE_STDLIB_ALLOC)
1107 # undef realloc
1108 # define realloc rpl_realloc
1109 # endif
1110 _GL_FUNCDECL_RPL (realloc, void *, (void *ptr, size_t size)
1111 _GL_ATTRIBUTE_DEALLOC_FREE);
1112 _GL_CXXALIAS_RPL (realloc, void *, (void *ptr, size_t size));
1113 # else
1114 # if __GNUC__ >= 11
1115
1116 _GL_FUNCDECL_SYS (realloc, void *, (void *ptr, size_t size)
1117 _GL_ATTRIBUTE_DEALLOC_FREE);
1118 # endif
1119 _GL_CXXALIAS_SYS (realloc, void *, (void *ptr, size_t size));
1120 # endif
1121 # if __GLIBC__ >= 2
1122 _GL_CXXALIASWARN (realloc);
1123 # endif
1124 #else
1125 # if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined realloc
1126
1127 _GL_FUNCDECL_SYS (realloc, void *, (void *ptr, size_t size)
1128 _GL_ATTRIBUTE_DEALLOC_FREE);
1129 # endif
1130 # if defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC
1131 # undef realloc
1132
1133 _GL_WARN_ON_USE (realloc, "realloc is not POSIX compliant everywhere - "
1134 "use gnulib module realloc-posix for portability");
1135 # endif
1136 #endif
1137
1138
1139 #if @GNULIB_REALLOCARRAY@
1140 # if @REPLACE_REALLOCARRAY@
1141 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1142 # undef reallocarray
1143 # define reallocarray rpl_reallocarray
1144 # endif
1145 _GL_FUNCDECL_RPL (reallocarray, void *,
1146 (void *ptr, size_t nmemb, size_t size));
1147 _GL_CXXALIAS_RPL (reallocarray, void *,
1148 (void *ptr, size_t nmemb, size_t size));
1149 # else
1150 # if ! @HAVE_REALLOCARRAY@
1151 _GL_FUNCDECL_SYS (reallocarray, void *,
1152 (void *ptr, size_t nmemb, size_t size));
1153 # endif
1154 _GL_CXXALIAS_SYS (reallocarray, void *,
1155 (void *ptr, size_t nmemb, size_t size));
1156 # endif
1157 _GL_CXXALIASWARN (reallocarray);
1158 #elif defined GNULIB_POSIXCHECK
1159 # undef reallocarray
1160 # if HAVE_RAW_DECL_REALLOCARRAY
1161 _GL_WARN_ON_USE (reallocarray, "reallocarray is not portable - "
1162 "use gnulib module reallocarray for portability");
1163 # endif
1164 #endif
1165
1166 #if @GNULIB_REALPATH@
1167 # if @REPLACE_REALPATH@
1168 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1169 # define realpath rpl_realpath
1170 # endif
1171 _GL_FUNCDECL_RPL (realpath, char *,
1172 (const char *restrict name, char *restrict resolved)
1173 _GL_ARG_NONNULL ((1)));
1174 _GL_CXXALIAS_RPL (realpath, char *,
1175 (const char *restrict name, char *restrict resolved));
1176 # else
1177 # if !@HAVE_REALPATH@
1178 _GL_FUNCDECL_SYS (realpath, char *,
1179 (const char *restrict name, char *restrict resolved)
1180 _GL_ARG_NONNULL ((1)));
1181 # endif
1182 _GL_CXXALIAS_SYS (realpath, char *,
1183 (const char *restrict name, char *restrict resolved));
1184 # endif
1185 _GL_CXXALIASWARN (realpath);
1186 #elif defined GNULIB_POSIXCHECK
1187 # undef realpath
1188 # if HAVE_RAW_DECL_REALPATH
1189 _GL_WARN_ON_USE (realpath, "realpath is unportable - use gnulib module "
1190 "canonicalize or canonicalize-lgpl for portability");
1191 # endif
1192 #endif
1193
1194 #if @GNULIB_RPMATCH@
1195
1196
1197 # if !@HAVE_RPMATCH@
1198 _GL_FUNCDECL_SYS (rpmatch, int, (const char *response) _GL_ARG_NONNULL ((1)));
1199 # endif
1200 _GL_CXXALIAS_SYS (rpmatch, int, (const char *response));
1201 _GL_CXXALIASWARN (rpmatch);
1202 #elif defined GNULIB_POSIXCHECK
1203 # undef rpmatch
1204 # if HAVE_RAW_DECL_RPMATCH
1205 _GL_WARN_ON_USE (rpmatch, "rpmatch is unportable - "
1206 "use gnulib module rpmatch for portability");
1207 # endif
1208 #endif
1209
1210 #if @GNULIB_SECURE_GETENV@
1211
1212 # if !@HAVE_SECURE_GETENV@
1213 _GL_FUNCDECL_SYS (secure_getenv, char *,
1214 (char const *name) _GL_ARG_NONNULL ((1)));
1215 # endif
1216 _GL_CXXALIAS_SYS (secure_getenv, char *, (char const *name));
1217 _GL_CXXALIASWARN (secure_getenv);
1218 #elif defined GNULIB_POSIXCHECK
1219 # undef secure_getenv
1220 # if HAVE_RAW_DECL_SECURE_GETENV
1221 _GL_WARN_ON_USE (secure_getenv, "secure_getenv is unportable - "
1222 "use gnulib module secure_getenv for portability");
1223 # endif
1224 #endif
1225
1226 #if @GNULIB_SETENV@
1227
1228
1229 # if @REPLACE_SETENV@
1230 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1231 # undef setenv
1232 # define setenv rpl_setenv
1233 # endif
1234 _GL_FUNCDECL_RPL (setenv, int,
1235 (const char *name, const char *value, int replace)
1236 _GL_ARG_NONNULL ((1)));
1237 _GL_CXXALIAS_RPL (setenv, int,
1238 (const char *name, const char *value, int replace));
1239 # else
1240 # if !@HAVE_DECL_SETENV@
1241 _GL_FUNCDECL_SYS (setenv, int,
1242 (const char *name, const char *value, int replace)
1243 _GL_ARG_NONNULL ((1)));
1244 # endif
1245 _GL_CXXALIAS_SYS (setenv, int,
1246 (const char *name, const char *value, int replace));
1247 # endif
1248 # if !(@REPLACE_SETENV@ && !@HAVE_DECL_SETENV@)
1249 _GL_CXXALIASWARN (setenv);
1250 # endif
1251 #elif defined GNULIB_POSIXCHECK
1252 # undef setenv
1253 # if HAVE_RAW_DECL_SETENV
1254 _GL_WARN_ON_USE (setenv, "setenv is unportable - "
1255 "use gnulib module setenv for portability");
1256 # endif
1257 #endif
1258
1259 #if @GNULIB_STRTOD@
1260
1261 # if @REPLACE_STRTOD@
1262 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1263 # define strtod rpl_strtod
1264 # endif
1265 # define GNULIB_defined_strtod_function 1
1266 _GL_FUNCDECL_RPL (strtod, double,
1267 (const char *restrict str, char **restrict endp)
1268 _GL_ARG_NONNULL ((1)));
1269 _GL_CXXALIAS_RPL (strtod, double,
1270 (const char *restrict str, char **restrict endp));
1271 # else
1272 # if !@HAVE_STRTOD@
1273 _GL_FUNCDECL_SYS (strtod, double,
1274 (const char *restrict str, char **restrict endp)
1275 _GL_ARG_NONNULL ((1)));
1276 # endif
1277 _GL_CXXALIAS_SYS (strtod, double,
1278 (const char *restrict str, char **restrict endp));
1279 # endif
1280 # if __GLIBC__ >= 2
1281 _GL_CXXALIASWARN (strtod);
1282 # endif
1283 #elif defined GNULIB_POSIXCHECK
1284 # undef strtod
1285 # if HAVE_RAW_DECL_STRTOD
1286 _GL_WARN_ON_USE (strtod, "strtod is unportable - "
1287 "use gnulib module strtod for portability");
1288 # endif
1289 #endif
1290
1291 #if @GNULIB_STRTOLD@
1292
1293 # if @REPLACE_STRTOLD@
1294 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1295 # define strtold rpl_strtold
1296 # endif
1297 # define GNULIB_defined_strtold_function 1
1298 _GL_FUNCDECL_RPL (strtold, long double,
1299 (const char *restrict str, char **restrict endp)
1300 _GL_ARG_NONNULL ((1)));
1301 _GL_CXXALIAS_RPL (strtold, long double,
1302 (const char *restrict str, char **restrict endp));
1303 # else
1304 # if !@HAVE_STRTOLD@
1305 _GL_FUNCDECL_SYS (strtold, long double,
1306 (const char *restrict str, char **restrict endp)
1307 _GL_ARG_NONNULL ((1)));
1308 # endif
1309 _GL_CXXALIAS_SYS (strtold, long double,
1310 (const char *restrict str, char **restrict endp));
1311 # endif
1312 _GL_CXXALIASWARN (strtold);
1313 #elif defined GNULIB_POSIXCHECK
1314 # undef strtold
1315 # if HAVE_RAW_DECL_STRTOLD
1316 _GL_WARN_ON_USE (strtold, "strtold is unportable - "
1317 "use gnulib module strtold for portability");
1318 # endif
1319 #endif
1320
1321 #if @GNULIB_STRTOL@
1322
1323
1324
1325
1326
1327
1328
1329
1330 # if @REPLACE_STRTOL@
1331 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1332 # define strtol rpl_strtol
1333 # endif
1334 # define GNULIB_defined_strtol_function 1
1335 _GL_FUNCDECL_RPL (strtol, long,
1336 (const char *restrict string, char **restrict endptr,
1337 int base)
1338 _GL_ARG_NONNULL ((1)));
1339 _GL_CXXALIAS_RPL (strtol, long,
1340 (const char *restrict string, char **restrict endptr,
1341 int base));
1342 # else
1343 # if !@HAVE_STRTOL@
1344 _GL_FUNCDECL_SYS (strtol, long,
1345 (const char *restrict string, char **restrict endptr,
1346 int base)
1347 _GL_ARG_NONNULL ((1)));
1348 # endif
1349 _GL_CXXALIAS_SYS (strtol, long,
1350 (const char *restrict string, char **restrict endptr,
1351 int base));
1352 # endif
1353 _GL_CXXALIASWARN (strtol);
1354 #elif defined GNULIB_POSIXCHECK
1355 # undef strtol
1356 # if HAVE_RAW_DECL_STRTOL
1357 _GL_WARN_ON_USE (strtol, "strtol is unportable - "
1358 "use gnulib module strtol for portability");
1359 # endif
1360 #endif
1361
1362 #if @GNULIB_STRTOLL@
1363
1364
1365
1366
1367
1368
1369
1370
1371 # if @REPLACE_STRTOLL@
1372 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1373 # define strtoll rpl_strtoll
1374 # endif
1375 # define GNULIB_defined_strtoll_function 1
1376 _GL_FUNCDECL_RPL (strtoll, long long,
1377 (const char *restrict string, char **restrict endptr,
1378 int base)
1379 _GL_ARG_NONNULL ((1)));
1380 _GL_CXXALIAS_RPL (strtoll, long long,
1381 (const char *restrict string, char **restrict endptr,
1382 int base));
1383 # else
1384 # if !@HAVE_STRTOLL@
1385 _GL_FUNCDECL_SYS (strtoll, long long,
1386 (const char *restrict string, char **restrict endptr,
1387 int base)
1388 _GL_ARG_NONNULL ((1)));
1389 # endif
1390 _GL_CXXALIAS_SYS (strtoll, long long,
1391 (const char *restrict string, char **restrict endptr,
1392 int base));
1393 # endif
1394 _GL_CXXALIASWARN (strtoll);
1395 #elif defined GNULIB_POSIXCHECK
1396 # undef strtoll
1397 # if HAVE_RAW_DECL_STRTOLL
1398 _GL_WARN_ON_USE (strtoll, "strtoll is unportable - "
1399 "use gnulib module strtoll for portability");
1400 # endif
1401 #endif
1402
1403 #if @GNULIB_STRTOUL@
1404
1405
1406
1407
1408
1409
1410
1411 # if @REPLACE_STRTOUL@
1412 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1413 # define strtoul rpl_strtoul
1414 # endif
1415 # define GNULIB_defined_strtoul_function 1
1416 _GL_FUNCDECL_RPL (strtoul, unsigned long,
1417 (const char *restrict string, char **restrict endptr,
1418 int base)
1419 _GL_ARG_NONNULL ((1)));
1420 _GL_CXXALIAS_RPL (strtoul, unsigned long,
1421 (const char *restrict string, char **restrict endptr,
1422 int base));
1423 # else
1424 # if !@HAVE_STRTOUL@
1425 _GL_FUNCDECL_SYS (strtoul, unsigned long,
1426 (const char *restrict string, char **restrict endptr,
1427 int base)
1428 _GL_ARG_NONNULL ((1)));
1429 # endif
1430 _GL_CXXALIAS_SYS (strtoul, unsigned long,
1431 (const char *restrict string, char **restrict endptr,
1432 int base));
1433 # endif
1434 _GL_CXXALIASWARN (strtoul);
1435 #elif defined GNULIB_POSIXCHECK
1436 # undef strtoul
1437 # if HAVE_RAW_DECL_STRTOUL
1438 _GL_WARN_ON_USE (strtoul, "strtoul is unportable - "
1439 "use gnulib module strtoul for portability");
1440 # endif
1441 #endif
1442
1443 #if @GNULIB_STRTOULL@
1444
1445
1446
1447
1448
1449
1450
1451
1452 # if @REPLACE_STRTOULL@
1453 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1454 # define strtoull rpl_strtoull
1455 # endif
1456 # define GNULIB_defined_strtoull_function 1
1457 _GL_FUNCDECL_RPL (strtoull, unsigned long long,
1458 (const char *restrict string, char **restrict endptr,
1459 int base)
1460 _GL_ARG_NONNULL ((1)));
1461 _GL_CXXALIAS_RPL (strtoull, unsigned long long,
1462 (const char *restrict string, char **restrict endptr,
1463 int base));
1464 # else
1465 # if !@HAVE_STRTOULL@
1466 _GL_FUNCDECL_SYS (strtoull, unsigned long long,
1467 (const char *restrict string, char **restrict endptr,
1468 int base)
1469 _GL_ARG_NONNULL ((1)));
1470 # endif
1471 _GL_CXXALIAS_SYS (strtoull, unsigned long long,
1472 (const char *restrict string, char **restrict endptr,
1473 int base));
1474 # endif
1475 _GL_CXXALIASWARN (strtoull);
1476 #elif defined GNULIB_POSIXCHECK
1477 # undef strtoull
1478 # if HAVE_RAW_DECL_STRTOULL
1479 _GL_WARN_ON_USE (strtoull, "strtoull is unportable - "
1480 "use gnulib module strtoull for portability");
1481 # endif
1482 #endif
1483
1484 #if @GNULIB_UNLOCKPT@
1485
1486
1487 # if !@HAVE_UNLOCKPT@
1488 _GL_FUNCDECL_SYS (unlockpt, int, (int fd));
1489 # endif
1490 _GL_CXXALIAS_SYS (unlockpt, int, (int fd));
1491 _GL_CXXALIASWARN (unlockpt);
1492 #elif defined GNULIB_POSIXCHECK
1493 # undef unlockpt
1494 # if HAVE_RAW_DECL_UNLOCKPT
1495 _GL_WARN_ON_USE (unlockpt, "unlockpt is not portable - "
1496 "use gnulib module unlockpt for portability");
1497 # endif
1498 #endif
1499
1500 #if @GNULIB_UNSETENV@
1501
1502 # if @REPLACE_UNSETENV@
1503 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1504 # undef unsetenv
1505 # define unsetenv rpl_unsetenv
1506 # endif
1507 _GL_FUNCDECL_RPL (unsetenv, int, (const char *name) _GL_ARG_NONNULL ((1)));
1508 _GL_CXXALIAS_RPL (unsetenv, int, (const char *name));
1509 # else
1510 # if !@HAVE_DECL_UNSETENV@
1511 _GL_FUNCDECL_SYS (unsetenv, int, (const char *name) _GL_ARG_NONNULL ((1)));
1512 # endif
1513 _GL_CXXALIAS_SYS (unsetenv, int, (const char *name));
1514 # endif
1515 # if !(@REPLACE_UNSETENV@ && !@HAVE_DECL_UNSETENV@)
1516 _GL_CXXALIASWARN (unsetenv);
1517 # endif
1518 #elif defined GNULIB_POSIXCHECK
1519 # undef unsetenv
1520 # if HAVE_RAW_DECL_UNSETENV
1521 _GL_WARN_ON_USE (unsetenv, "unsetenv is unportable - "
1522 "use gnulib module unsetenv for portability");
1523 # endif
1524 #endif
1525
1526
1527 #if @GNULIB_WCTOMB@
1528 # if @REPLACE_WCTOMB@
1529 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1530 # undef wctomb
1531 # define wctomb rpl_wctomb
1532 # endif
1533 _GL_FUNCDECL_RPL (wctomb, int, (char *s, wchar_t wc));
1534 _GL_CXXALIAS_RPL (wctomb, int, (char *s, wchar_t wc));
1535 # else
1536 _GL_CXXALIAS_SYS (wctomb, int, (char *s, wchar_t wc));
1537 # endif
1538 # if __GLIBC__ >= 2
1539 _GL_CXXALIASWARN (wctomb);
1540 # endif
1541 #endif
1542
1543
1544 #endif
1545 #endif
1546 #endif