1570af302Sopenharmony_ci#ifndef	_STRINGS_H
2570af302Sopenharmony_ci#define	_STRINGS_H
3570af302Sopenharmony_ci
4570af302Sopenharmony_ci#ifdef __cplusplus
5570af302Sopenharmony_ciextern "C" {
6570af302Sopenharmony_ci#endif
7570af302Sopenharmony_ci
8570af302Sopenharmony_ci#include <features.h>
9570af302Sopenharmony_ci
10570af302Sopenharmony_ci#define __NEED_size_t
11570af302Sopenharmony_ci#define __NEED_locale_t
12570af302Sopenharmony_ci#include <bits/alltypes.h>
13570af302Sopenharmony_ci
14570af302Sopenharmony_ci#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_POSIX_SOURCE) \
15570af302Sopenharmony_ci || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE+0 < 200809L) \
16570af302Sopenharmony_ci || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)
17570af302Sopenharmony_ciint bcmp (const void *, const void *, size_t);
18570af302Sopenharmony_civoid bcopy (const void *, void *, size_t);
19570af302Sopenharmony_civoid bzero (void *, size_t);
20570af302Sopenharmony_cichar *index (const char *, int);
21570af302Sopenharmony_cichar *rindex (const char *, int);
22570af302Sopenharmony_ci#endif
23570af302Sopenharmony_ci
24570af302Sopenharmony_ci#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)  || defined(_BSD_SOURCE)
25570af302Sopenharmony_ciint ffs (int);
26570af302Sopenharmony_ciint ffsl (long);
27570af302Sopenharmony_ciint ffsll (long long);
28570af302Sopenharmony_ci#endif
29570af302Sopenharmony_ci
30570af302Sopenharmony_ciint strcasecmp (const char *, const char *);
31570af302Sopenharmony_ciint strncasecmp (const char *, const char *, size_t);
32570af302Sopenharmony_ci
33570af302Sopenharmony_ciint strcasecmp_l (const char *, const char *, locale_t);
34570af302Sopenharmony_ciint strncasecmp_l (const char *, const char *, size_t, locale_t);
35570af302Sopenharmony_ci
36570af302Sopenharmony_ci#ifdef __cplusplus
37570af302Sopenharmony_ci}
38570af302Sopenharmony_ci#endif
39570af302Sopenharmony_ci
40570af302Sopenharmony_ci#endif
41