aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/tools/m4/lib/stpcpy.c
diff options
context:
space:
mode:
authorthegeorg <thegeorg@yandex-team.com>2024-05-21 02:41:10 +0300
committerthegeorg <thegeorg@yandex-team.com>2024-05-21 02:51:01 +0300
commitbc402660605527c438c819e4c94e49285f88f676 (patch)
tree01e86fb0d6df7febdd63eead34b4b3d36e3ff4e2 /contrib/tools/m4/lib/stpcpy.c
parenta92a0d80c339ed6f70624dffa79288e61b72e941 (diff)
downloadydb-bc402660605527c438c819e4c94e49285f88f676.tar.gz
Duplicate bison/lib (gnulib) to m4/lib as they actually need to be different
597ee3bf4ec17244e6ef615a1ec10491798e18fe
Diffstat (limited to 'contrib/tools/m4/lib/stpcpy.c')
-rw-r--r--contrib/tools/m4/lib/stpcpy.c50
1 files changed, 50 insertions, 0 deletions
diff --git a/contrib/tools/m4/lib/stpcpy.c b/contrib/tools/m4/lib/stpcpy.c
new file mode 100644
index 0000000000..f5aa8d67e9
--- /dev/null
+++ b/contrib/tools/m4/lib/stpcpy.c
@@ -0,0 +1,50 @@
+/* stpcpy.c -- copy a string and return pointer to end of new string
+ Copyright (C) 1992, 1995, 1997-1998, 2006, 2009-2013 Free Software
+ Foundation, Inc.
+
+ NOTE: The canonical source of this file is maintained with the GNU C Library.
+ Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+
+ This program is free software: you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 3 of the License, or any
+ later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include <string.h>
+#include <stdlib.h>
+
+#undef __stpcpy
+#if defined(_LIBC) || (defined(__MACH__) && defined(stpcpy))
+# undef stpcpy
+#endif
+
+#ifndef weak_alias
+# define __stpcpy stpcpy
+#endif
+
+/* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */
+char *
+__stpcpy (char *dest, const char *src)
+{
+ char *d = dest;
+ const char *s = src;
+
+ do
+ *d++ = *s;
+ while (*s++ != '\0');
+
+ return d - 1;
+}
+#ifdef weak_alias
+weak_alias (__stpcpy, stpcpy)
+#endif