116dce513Schristos /* Wrapper to implement ANSI C's memmove using BSD's bcopy. */
216dce513Schristos /* This function is in the public domain. --Per Bothner. */
316dce513Schristos
416dce513Schristos /*
516dce513Schristos
616dce513Schristos @deftypefn Supplemental void* memmove (void *@var{from}, const void *@var{to}, @
716dce513Schristos size_t @var{count})
816dce513Schristos
916dce513Schristos Copies @var{count} bytes from memory area @var{from} to memory area
1016dce513Schristos @var{to}, returning a pointer to @var{to}.
1116dce513Schristos
1216dce513Schristos @end deftypefn
1316dce513Schristos
1416dce513Schristos */
1516dce513Schristos
1616dce513Schristos #include <ansidecl.h>
1716dce513Schristos #include <stddef.h>
1816dce513Schristos
1916dce513Schristos void bcopy (const void*, void*, size_t);
2016dce513Schristos
21*e992f068Schristos void *
memmove(void * s1,const void * s2,size_t n)22*e992f068Schristos memmove (void *s1, const void *s2, size_t n)
2316dce513Schristos {
2416dce513Schristos bcopy (s2, s1, n);
2516dce513Schristos return s1;
2616dce513Schristos }
27