aboutsummaryrefslogtreecommitdiff
path: root/newlib/libc/string/wcpcpy.c
blob: 0fda226e75b052bae2779bb32d9d8e2826da0c29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*
FUNCTION
	<<wcpcpy>>---copy a wide-character string returning a pointer to its end

SYNOPSIS
	#include <wchar.h>
	wchar_t *wcpcpy(wchar_t *<[s1]>, const wchar_t *<[s2]>);

DESCRIPTION
	The <<wcpcpy>> function copies the wide-character string pointed to by
	<[s2]> (including the terminating null wide-character code) into the
	array pointed to by <[s1]>. If copying takes place between objects that
	overlap, the behaviour is undefined. 

RETURNS
	This function returns a pointer to the end of the destination string,
	thus pointing to the trailing '\0'.

PORTABILITY
<<wcpcpy>> is a GNU extension.

No supporting OS subroutines are required.
*/

#include <_ansi.h>
#include <wchar.h>

wchar_t *
_DEFUN (wcpcpy, (s1, s2),
	wchar_t *__restrict s1,
	_CONST wchar_t *__restrict s2)
{
  while ((*s1++ = *s2++))
    ;
  return --s1;
}