50 extern char *index(const char *, int);
51 extern char *rindex(const char *, int);
52
53 /*
54 * X/Open System Interfaces and Headers, Issue 4, Version 2, defines
55 * both <string.h> and <strings.h>. The namespace requirements
56 * do not permit the visibility of anything other than what is
57 * specifically defined for each of these headers. As a result,
58 * inclusion of <string.h> would result in declarations not allowed
59 * in <strings.h>, and making the following prototypes visible for
60 * anything other than X/Open UNIX Extension would result in
61 * conflicts with what is now in <string.h>.
62 */
63 #if defined(_XPG4_2) && !defined(__EXTENSIONS__)
64 extern int ffs(int);
65 extern int strcasecmp(const char *, const char *);
66 extern int strncasecmp(const char *, const char *, size_t);
67 #if defined(_XPG7)
68 #ifndef _LOCALE_T
69 #define _LOCALE_T
70 typedef struct locale *locale_t;
71 #endif
72 extern int strcasecmp_l(const char *, const char *, locale_t);
73 extern int strncasecmp_l(const char *, const char *, size_t, locale_t);
74 #endif /* defined(_XPG7) */
75 #endif /* defined(_XPG4_2) && !defined(__EXTENSIONS__) */
76
77 #else
78
79 extern int bcmp();
80 extern void bcopy();
81 extern void bzero();
82
83 extern char *index();
84 extern char *rindex();
85
86 #if defined(_XPG4_2) && !defined(__EXTENSIONS__)
87 extern int ffs();
88 extern int strcasecmp();
89 extern int strncasecmp();
90 #if defined(_XPG7)
|
50 extern char *index(const char *, int);
51 extern char *rindex(const char *, int);
52
53 /*
54 * X/Open System Interfaces and Headers, Issue 4, Version 2, defines
55 * both <string.h> and <strings.h>. The namespace requirements
56 * do not permit the visibility of anything other than what is
57 * specifically defined for each of these headers. As a result,
58 * inclusion of <string.h> would result in declarations not allowed
59 * in <strings.h>, and making the following prototypes visible for
60 * anything other than X/Open UNIX Extension would result in
61 * conflicts with what is now in <string.h>.
62 */
63 #if defined(_XPG4_2) && !defined(__EXTENSIONS__)
64 extern int ffs(int);
65 extern int strcasecmp(const char *, const char *);
66 extern int strncasecmp(const char *, const char *, size_t);
67 #if defined(_XPG7)
68 #ifndef _LOCALE_T
69 #define _LOCALE_T
70 typedef struct _locale *locale_t;
71 #endif
72 extern int strcasecmp_l(const char *, const char *, locale_t);
73 extern int strncasecmp_l(const char *, const char *, size_t, locale_t);
74 #endif /* defined(_XPG7) */
75 #endif /* defined(_XPG4_2) && !defined(__EXTENSIONS__) */
76
77 #else
78
79 extern int bcmp();
80 extern void bcopy();
81 extern void bzero();
82
83 extern char *index();
84 extern char *rindex();
85
86 #if defined(_XPG4_2) && !defined(__EXTENSIONS__)
87 extern int ffs();
88 extern int strcasecmp();
89 extern int strncasecmp();
90 #if defined(_XPG7)
|