Patch 8.0.0241
Problem:    Vim defines a mch_memmove() function but it doesn't work, thus is
            always unused.
Solution:   Remove the mch_memmove implementation. (suggested by Dominique
            Pelle)
Files:      src/os_unix.h, src/misc2.c, src/vim.h



*** ../vim-8.0.0240/src/os_unix.h       2016-11-04 20:35:27.352945991 +0100
--- src/os_unix.h       2017-01-26 21:32:19.412337932 +0100
***************
*** 423,443 ****
  # endif
  #endif
  
! /* memmove is not present on all systems, use memmove, bcopy, memcpy or our
!  * own version */
! /* Some systems have (void *) arguments, some (char *). If we use (char *) it
   * works for all */
! #ifdef USEMEMMOVE
  # define mch_memmove(to, from, len) memmove((char *)(to), (char *)(from), len)
  #else
  # ifdef USEBCOPY
  #  define mch_memmove(to, from, len) bcopy((char *)(from), (char *)(to), len)
  # else
! #  ifdef USEMEMCPY
  #   define mch_memmove(to, from, len) memcpy((char *)(to), (char *)(from), 
len)
- #  else
- #   define VIM_MEMMOVE            /* found in misc2.c */
- #  endif
  # endif
  #endif
  
--- 423,439 ----
  # endif
  #endif
  
! /* memmove() is not present on all systems, use memmove, bcopy or memcpy.
!  * Some systems have (void *) arguments, some (char *). If we use (char *) it
   * works for all */
! #if defined(USEMEMMOVE) || (!defined(USEBCOPY) && !defined(USEMEMCPY))
  # define mch_memmove(to, from, len) memmove((char *)(to), (char *)(from), len)
  #else
  # ifdef USEBCOPY
  #  define mch_memmove(to, from, len) bcopy((char *)(from), (char *)(to), len)
  # else
!     /* ifdef USEMEMCPY */
  #   define mch_memmove(to, from, len) memcpy((char *)(to), (char *)(from), 
len)
  # endif
  #endif
  
*** ../vim-8.0.0240/src/misc2.c 2017-01-22 15:05:08.107998905 +0100
--- src/misc2.c 2017-01-26 21:32:40.032205619 +0100
***************
*** 1740,1773 ****
  }
  #endif
  
- /* skipped when generating prototypes, the prototype is in vim.h */
- #ifdef VIM_MEMMOVE
- /*
-  * Version of memmove() that handles overlapping source and destination.
-  * For systems that don't have a function that is guaranteed to do that 
(SYSV).
-  */
-     void
- mch_memmove(void *src_arg, void *dst_arg, size_t len)
- {
-     /*
-      * A void doesn't have a size, we use char pointers.
-      */
-     char *dst = dst_arg, *src = src_arg;
- 
-                                       /* overlap, copy backwards */
-     if (dst > src && dst < src + len)
-     {
-       src += len;
-       dst += len;
-       while (len-- > 0)
-           *--dst = *--src;
-     }
-     else                              /* copy forwards */
-       while (len-- > 0)
-           *dst++ = *src++;
- }
- #endif
- 
  #if (!defined(HAVE_STRCASECMP) && !defined(HAVE_STRICMP)) || defined(PROTO)
  /*
   * Compare two strings, ignoring case, using current locale.
--- 1740,1745 ----
*** ../vim-8.0.0240/src/vim.h   2017-01-21 20:04:17.570757762 +0100
--- src/vim.h   2017-01-26 21:33:57.643707606 +0100
***************
*** 1714,1728 ****
  
  typedef void      *vim_acl_T;         /* dummy to pass an ACL to a function */
  
! /*
!  * Include a prototype for mch_memmove(), it may not be in alloc.pro.
!  */
! #ifdef VIM_MEMMOVE
! void mch_memmove(void *, void *, size_t);
! #else
! # ifndef mch_memmove
! #  define mch_memmove(to, from, len) memmove(to, from, len)
! # endif
  #endif
  
  /*
--- 1714,1721 ----
  
  typedef void      *vim_acl_T;         /* dummy to pass an ACL to a function */
  
! #ifndef mch_memmove
! # define mch_memmove(to, from, len) memmove((char*)(to), (char*)(from), 
(char*)(len))
  #endif
  
  /*
*** ../vim-8.0.0240/src/version.c       2017-01-26 21:23:44.583641679 +0100
--- src/version.c       2017-01-26 21:34:25.679527711 +0100
***************
*** 766,767 ****
--- 766,769 ----
  {   /* Add new patch number below this line */
+ /**/
+     241,
  /**/

-- 
I'm sure that I asked CBuilder to do a "full" install.  Looks like I got
a "fool" install, instead.              Charles E Campbell, Jr, PhD


 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui