Rich Felker | 0b44a03 | 2011-02-12 00:22:29 -0500 | [diff] [blame] | 1 | #ifndef _STRINGS_H |
| 2 | #define _STRINGS_H |
| 3 | |
| 4 | #ifdef __cplusplus |
| 5 | extern "C" { |
| 6 | #endif |
| 7 | |
Rich Felker | 0b44a03 | 2011-02-12 00:22:29 -0500 | [diff] [blame] | 8 | |
| 9 | #define __NEED_size_t |
Rich Felker | 36bf569 | 2012-02-06 21:51:02 -0500 | [diff] [blame] | 10 | #define __NEED_locale_t |
Rich Felker | 0b44a03 | 2011-02-12 00:22:29 -0500 | [diff] [blame] | 11 | #include <bits/alltypes.h> |
| 12 | |
Rich Felker | d1eae83 | 2013-02-26 01:30:36 -0500 | [diff] [blame] | 13 | #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_POSIX_SOURCE) \ |
| 14 | || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE+0 < 200809L) \ |
| 15 | || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700) |
Rich Felker | 0b44a03 | 2011-02-12 00:22:29 -0500 | [diff] [blame] | 16 | int bcmp (const void *, const void *, size_t); |
| 17 | void bcopy (const void *, void *, size_t); |
| 18 | void bzero (void *, size_t); |
Rich Felker | 0b44a03 | 2011-02-12 00:22:29 -0500 | [diff] [blame] | 19 | char *index (const char *, int); |
| 20 | char *rindex (const char *, int); |
Rich Felker | d1eae83 | 2013-02-26 01:30:36 -0500 | [diff] [blame] | 21 | #endif |
| 22 | |
Rich Felker | 38db093 | 2014-07-31 02:33:17 -0400 | [diff] [blame] | 23 | #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) |
Rich Felker | d1eae83 | 2013-02-26 01:30:36 -0500 | [diff] [blame] | 24 | int ffs (int); |
Rich Felker | ecc082c | 2014-07-31 02:38:23 -0400 | [diff] [blame] | 25 | int ffsl (long); |
| 26 | int ffsll (long long); |
Rich Felker | 38db093 | 2014-07-31 02:33:17 -0400 | [diff] [blame] | 27 | #endif |
Rich Felker | 0b44a03 | 2011-02-12 00:22:29 -0500 | [diff] [blame] | 28 | |
| 29 | int strcasecmp (const char *, const char *); |
| 30 | int strncasecmp (const char *, const char *, size_t); |
| 31 | |
Rich Felker | 36bf569 | 2012-02-06 21:51:02 -0500 | [diff] [blame] | 32 | int strcasecmp_l (const char *, const char *, locale_t); |
| 33 | int strncasecmp_l (const char *, const char *, size_t, locale_t); |
| 34 | |
Rich Felker | 0b44a03 | 2011-02-12 00:22:29 -0500 | [diff] [blame] | 35 | #ifdef __cplusplus |
| 36 | } |
| 37 | #endif |
| 38 | |
| 39 | #endif |