mark arm thread-pointer-loading inline asm as volatile
[oweals/musl.git] / src / string / wcsncpy.c
index 0164208de648458cd849bd157325690f6349704b..4bede04d251e017e4f62fa67c3e0176f2905545c 100644 (file)
@@ -1,9 +1,9 @@
 #include <wchar.h>
 
-wchar_t *wcsncpy(wchar_t *d, const wchar_t *s, size_t n)
+wchar_t *wcsncpy(wchar_t *restrict d, const wchar_t *restrict s, size_t n)
 {
        wchar_t *a = d;
-       while (n && (*d++ = *s++)) n--;
+       while (n && *s) n--, *d++ = *s++;
        wmemset(d, 0, n);
        return a;
 }