master
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#define __CRT__NO_INLINE
8#include <errno.h>
9#include <stdio.h>
10#include <stdlib.h>
11#include <wchar.h>
12
13#if 0
14wchar_t *
15wmemmove(s1, s2, n)
16 register wchar_t *s1;
17 register const wchar_t *s2;
18 register size_t n;
19{
20 wchar_t *orig_s1 = s1;
21
22 if ( s1 == NULL || s2 == NULL || n == 0 )
23 return orig_s1; /* robust */
24
25 /* XXX -- The following test works only within a flat address space! */
26 if ( s2 >= s1 )
27 for ( ; n > 0; --n )
28 *s1++ = *s2++;
29 else {
30 s1 += n;
31 s2 += n;
32
33 for ( ; n > 0; --n )
34 *--s1 = *--s2;
35 }
36
37 return orig_s1;
38}
39#endif
40
41wchar_t *__cdecl wmemmove(wchar_t *_S1,const wchar_t *_S2,size_t _N)
42{
43 return (wchar_t *)memmove(_S1,_S2,_N*sizeof(wchar_t));
44}
45