12a6b7db3Sskrll /* Wrapper to implement ANSI C's memmove using BSD's bcopy. */
22a6b7db3Sskrll /* This function is in the public domain.  --Per Bothner. */
32a6b7db3Sskrll 
42a6b7db3Sskrll /*
52a6b7db3Sskrll 
605caefcfSchristos @deftypefn Supplemental void* memmove (void *@var{from}, const void *@var{to}, @
705caefcfSchristos   size_t @var{count})
82a6b7db3Sskrll 
92a6b7db3Sskrll Copies @var{count} bytes from memory area @var{from} to memory area
102a6b7db3Sskrll @var{to}, returning a pointer to @var{to}.
112a6b7db3Sskrll 
122a6b7db3Sskrll @end deftypefn
132a6b7db3Sskrll 
142a6b7db3Sskrll */
152a6b7db3Sskrll 
162a6b7db3Sskrll #include <ansidecl.h>
172a6b7db3Sskrll #include <stddef.h>
182a6b7db3Sskrll 
192a6b7db3Sskrll void bcopy (const void*, void*, size_t);
202a6b7db3Sskrll 
21*f22f0ef4Schristos void *
memmove(void * s1,const void * s2,size_t n)22*f22f0ef4Schristos memmove (void *s1, const void *s2, size_t n)
232a6b7db3Sskrll {
242a6b7db3Sskrll   bcopy (s2, s1, n);
252a6b7db3Sskrll   return s1;
262a6b7db3Sskrll }
27