chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] [PATCH] Fix #1136 and a question about type specia


From: Peter Bex
Subject: Re: [Chicken-hackers] [PATCH] Fix #1136 and a question about type specialisation
Date: Wed, 23 Jul 2014 20:15:31 +0200
User-agent: Mutt/1.4.2.3i

On Sun, Jul 13, 2014 at 02:08:11PM +0200, Peter Bex wrote:
> Hi all,
> 
> Here's a simple patch for #1136, which is more-or-less the same bug as
> the one pointed out by Mario for string-copy!, but for move-memory!
> There's a second bug in the type specialisation for move-memory!: it
> would expand to C_w2b(), which is a macro which was defined locally to
> lolevel.scm.  Luckily, the macro's expansion was identical to the
> expansion of C_bytes() so that's easy to fix.  I decided to use C_bytes
> in lolevel.scm as well; no need to have duplicate definitions of the
> same thing.

As pointed out by Christian, this patch is incomplete: the test it adds
fails on the BSDs due to the fact that these rewrites expand to
C_copy_ptr_memory, which still uses C_memcpy().  I don't know why it
works on Linux, probably just a slight difference in the memcpy()
implementation in libc.

The attached patch is an updated version which also changes the
implementation of C_copy_ptr_memory to use memmove().

Again, this patch should go into the stability branch!

Cheers,
Peter
-- 
http://www.more-magic.net

Attachment: 0001-Fix-bug-in-move-memory-for-overlapping-memory-region.patch
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]