/*  DO NOT EDIT THIS FILE.

    It has been auto-edited by fixincludes from:

	"/usr/include/string.h"

    This had to be done to correct non-standard usages in the
    original, manufacturer supplied header file.  */

/* @(#) $Revision: ../hdr/string.h@@/main/r11ros/cup_ros-cpe/cup_libc-ros-cpe/2 $ */
#ifndef _STRING_INCLUDED
#define _STRING_INCLUDED

#ifndef _SYS_STDSYMS_INCLUDED
#  include <sys/stdsyms.h>
#endif /* _SYS_STDSYMS_INCLUDED */

#ifdef _NAMESPACE_STD
#define _NAMESPACE_STD_START namespace std {
#define _NAMESPACE_STD_END }
#define _hpux_size_t std::size_t
#define __time_t std::time_t
#define __FILE std::FILE
#define __wint_t std::wint_t
#define __struct_tm std::tm
#define __va__list std::va_list
#else
#define _NAMESPACE_STD_START
#define _NAMESPACE_STD_END
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list
#endif

#  include <sys/_inttypes.h>

#ifdef __cplusplus
extern "C" {
#endif

#ifdef _INCLUDE__STDC__

#	ifndef __NULL_INCLUDED
#		include <sys/_null.h>
#	endif /** __NULL_INCLUDED **/

/**
 ** Can not include <sys/types.h> here because
 ** it is not allowed in the ANSI namespace.
 **/
#  ifndef _SIZE_T_INCLUDED
#    include <sys/_size_t.h>
#  endif /* _SIZE_T_INCLUDED */

#  if defined(__STDC__) || defined(__cplusplus)
_NAMESPACE_STD_START
     extern int memcmp(const void *, const void *, size_t);
     extern char *strncat(char *, const char *, size_t);
     extern int strncmp(const char *, const char *, size_t);
     extern void *memmove(void *, const void *, size_t);
     extern char *strcpy(char *, const char *);
     extern char *strncpy(char *, const char *, size_t);
     extern char *strcat(char *, const char *);
     extern int strcmp(const char *, const char *);
     extern int strcoll(const char *, const char *);
     extern size_t strxfrm(char *, const char *, size_t);
#if defined(__HP_NO_STRING_OVERLOADS) ||        \
   !(defined(_NAMESPACE_STD)          ||        \
     defined(__HPACC_STRICTER_ANSI__) ||        \
     defined(_HP_NAMESPACE_STD))
     extern char *strchr(const char *, int);
     extern char *strpbrk(const char *, const char *);
     extern char *strrchr(const char *, int);
     extern char *strstr(const char *, const char *);
#else
/* These functions are defined in <cstring> */
#endif /* defined(__HP_NO_STRING_OVERLOADS) || ... */
     extern char *strtok(char *, const char *);
     extern char *strerror(int);
_NAMESPACE_STD_END
#    ifdef _REENTRANT
        extern char *strtok_r(char *, const char *, char **);
#	   ifdef _PTHREADS_DRAFT4
        extern int strerror_r(int, char *, int);
#	   endif /* _PTHREADS_DRAFT4 */
#    endif
#  else /* __STDC__ || __cplusplus */
     extern int memcmp();
     extern void *memmove();
     extern char *strcpy();
     extern char *strncpy();
     extern char *strcat();
     extern char *strncat();
     extern int strcmp();
     extern int strncmp();
     extern int strcoll();
     extern size_t strxfrm();
     extern char *strchr();
     extern char *strpbrk();
     extern char *strrchr();
     extern char *strstr();
     extern char *strtok();
     extern char *strerror();
#    ifdef _REENTRANT
       extern char *strtok_r();
#    ifdef _PTHREADS_DRAFT4
       extern int strerror_r();
#     endif /* _PTHREADS_DRAFT4 */
#    endif
#  endif /* __STDC__ || __cplusplus */

#  ifdef _CLASSIC_ANSI_TYPES
     extern char *memcpy();
     extern char *memchr();
     extern char *memset();
     extern int strcspn();
     extern int strspn();
     extern unsigned int strlen();
#  else
#  if defined(__STDC__) || defined(__cplusplus)
_NAMESPACE_STD_START
       extern void *memcpy(void *, const void *, size_t);
#if defined(__HP_NO_STRING_OVERLOADS) ||        \
   !(defined(_NAMESPACE_STD)          ||        \
     defined(__HPACC_STRICTER_ANSI__) ||        \
     defined(_HP_NAMESPACE_STD))
       extern void *memchr(const void *, int, size_t);
#else
/* This function is defined in <cstring> */
#endif /* defined(__HP_NO_STRING_OVERLOADS) || ... */
       extern void *memset(void *, int, size_t);
       extern size_t strcspn(const char *, const char *);
       extern size_t strspn(const char *, const char *);
_NAMESPACE_STD_END
#      if defined(_INCLUDE_AES_SOURCE) && !defined(_XPG4)
          extern size_t strlen(char *);
#      else /* not _INCLUDE_AES_SOURCE || _XPG4 */
_NAMESPACE_STD_START
          extern size_t strlen(const char *);
_NAMESPACE_STD_END
#      endif /* not _INCLUDE_AES_SOURCE || _XPG4 */
#  else /* not __STDC__ || __cplusplus */
       extern void *memcpy();
       extern void *memchr();
       extern void *memset();
       extern size_t strcspn();
       extern size_t strspn();
       extern size_t strlen();
#    endif /* else not __STDC__ || __cplusplus */
#  endif
#endif /* _INCLUDE__STDC__ */

#ifdef _INCLUDE_XOPEN_SOURCE
#  ifdef _CLASSIC_XOPEN_TYPES
     extern char *memccpy();
#  else
#    if defined(__STDC__) || defined(__cplusplus)
       extern void *memccpy(void *, const void *, int, _hpux_size_t);
#    else /* __STDC__ || __cplusplus */
       extern void *memccpy();
#    endif /* __STDC__ || __cplusplus */
#  endif
#endif /* _INCLUDE_XOPEN_SOURCE */


#if defined(_INCLUDE_AES_SOURCE) && !defined(_INCLUDE_XOPEN_SOURCE_EXTENDED)
   /* swab() is defined here for AES and in <sys/unistd.h> otherwise */
#  ifdef _PROTOTYPES
     extern void swab(const char *, char *, int);
#  else	/* no _PROTOTYPES */
     extern void swab();
#  endif /* _PROTOTYPES */
#endif /* _INCLUDE_AES_SOURCE && not _INCLUDE_XOPEN_SOURCE_EXTENDED */

#ifdef _INCLUDE_XOPEN_SOURCE_EXTENDED 
#  ifdef _PROTOTYPES
     extern char *strdup(const char *);
#  else /* ! _PROTOTYPES */
     extern char *strdup();
#  endif /* _PROTOTYPES */
#endif /* _INCLUDE_XOPEN_SOURCE_EXTENDED */

#ifdef _INCLUDE_HPUX_SOURCE
#  if defined(__STDC__) || defined(__cplusplus)
     extern char *strrstr(const char *, const char *);
     extern int strcasecmp(const char *, const char *);
     extern int strncasecmp(const char *, const char *, _hpux_size_t);
     extern int nl_strcmp(const char *, const char *);
     extern int nl_strncmp(const char *, const char *, _hpux_size_t);
#  else /* __STDC__ || __cplusplus */
     extern char *strrstr();
     extern int strcasecmp();
     extern int strncasecmp();
     extern int nl_strcmp();
     extern int nl_strncmp();
#  endif /* __STDC__ || __cplusplus */
#endif /* _INCLUDE_HPUX_SOURCE */

#ifdef __cplusplus
}
#endif

#endif /* _STRING_INCLUDED */
