updated for version 7.0038
diff --git a/src/macros.h b/src/macros.h
index 9596796..6d6484c 100644
--- a/src/macros.h
+++ b/src/macros.h
@@ -263,11 +263,14 @@
* multi-byte characters if needed.
* mb_ptr_back(): backup a pointer to the previous character, taking care of
* multi-byte characters if needed.
+ * MB_COPY_CHAR(f, t): copy one char from "f" to "t" and advance the pointers.
*/
#ifdef FEAT_MBYTE
# define mb_ptr_adv(p) p += has_mbyte ? (*mb_ptr2len_check)(p) : 1
# define mb_ptr_back(s, p) p -= has_mbyte ? ((*mb_head_off)(s, p - 1) + 1) : 1
+# define MB_COPY_CHAR(f, t) if (has_mbyte) mb_copy_char(&f, &t); else *t++ = *f++
#else
# define mb_ptr_adv(p) ++p
# define mb_ptr_back(s, p) --p
+# define MB_COPY_CHAR(f, t) *t++ = *f++
#endif