void * memcpy(void *__restrict__ dest, const void *__restrict__ src, long unsigned n) { char *pDest = (char *)dest; const char *pSrc = (const char *)src; while (n) { *(pDest++) = *(pSrc++); --n; } return dest; }