summaryrefslogtreecommitdiffstats
path: root/contrib/libg++/libstdc++/std/cstring.h
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1996-10-03 21:35:18 +0000
committerpeter <peter@FreeBSD.org>1996-10-03 21:35:18 +0000
commita3eb4b6b3656502c77c6cb357b751b05c27522fa (patch)
treedcd9fe501af4bccee0e553d28985685934a29e6b /contrib/libg++/libstdc++/std/cstring.h
parentd0df3aa1183205e1a0abb10974ec29256077c14f (diff)
parent7a8bb066f1347ffb7d213e84550c3a87240a4b23 (diff)
downloadFreeBSD-src-a3eb4b6b3656502c77c6cb357b751b05c27522fa.zip
FreeBSD-src-a3eb4b6b3656502c77c6cb357b751b05c27522fa.tar.gz
This commit was generated by cvs2svn to compensate for changes in r18661,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'contrib/libg++/libstdc++/std/cstring.h')
-rw-r--r--contrib/libg++/libstdc++/std/cstring.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/contrib/libg++/libstdc++/std/cstring.h b/contrib/libg++/libstdc++/std/cstring.h
new file mode 100644
index 0000000..6d493e7
--- /dev/null
+++ b/contrib/libg++/libstdc++/std/cstring.h
@@ -0,0 +1,71 @@
+// The -*- C++ -*- null-terminated string header.
+// This file is part of the GNU ANSI C++ Library.
+
+#ifndef __CSTRING__
+#define __CSTRING__
+
+#if 0 // Let's not bother with this just yet.
+// The ANSI C prototypes for these functions have a const argument type and
+// non-const return type, so we can't use them.
+
+#define strchr __hide_strchr
+#define strpbrk __hide_strpbrk
+#define strrchr __hide_strrchr
+#define strstr __hide_strstr
+#define memchr __hide_memchr
+#endif // 0
+
+#include_next <string.h>
+
+#if 0 // Let's not bother with this just yet.
+#undef strchr
+#undef strpbrk
+#undef strrchr
+#undef strstr
+#undef memchr
+
+#include <std/cstddef.h>
+
+#ifdef __GNUG__
+#pragma interface "std/cstring.h"
+#endif
+
+extern "C++" {
+extern "C" const char *strchr (const char *, int);
+inline char *
+strchr (char *s, int c)
+{
+ return const_cast<char *> (strchr (static_cast<const char *> (s), c));
+}
+
+extern "C" const char *strpbrk (const char *, const char *);
+inline char *
+strpbrk (char *s1, const char *s2)
+{
+ return const_cast<char *> (strpbrk (static_cast<const char *> (s1), s2));
+}
+
+extern "C" const char *strrchr (const char *, int);
+inline char *
+strrchr (char *s, int c)
+{
+ return const_cast<char *> (strrchr (static_cast<const char *> (s), c));
+}
+
+extern "C" const char *strstr (const char *, const char *);
+inline char *
+strstr (char *s1, const char *s2)
+{
+ return const_cast<char *> (strstr (static_cast<const char *> (s1), s2));
+}
+
+extern "C" const void *memchr (const void *, int, size_t);
+inline void *
+memchr (void *s, int c, size_t n)
+{
+ return const_cast<void *> (memchr (static_cast<const void *> (s), c, n));
+}
+} // extern "C++"
+
+#endif // 0
+#endif // !defined (__CSTRING__)
OpenPOWER on IntegriCloud