/* memmove - some systems lack this */ #include "expect_cf.h" #include "tcl.h" /* like memcpy but can handle overlap */ #ifndef HAVE_MEMMOVE char * memmove(dest,src,n) VOID *dest; CONST VOID *src; int n; { char *d; CONST char *s; d = dest; s = src; if (s<d && (d < s+n)) { for (d+=n, s+=n; 0<n; --n) *--d = *--s; } else for (;0<n;--n) *d++ = *s++; return dest; } #endif /* HAVE_MEMMOVE */