GC-safe memory copying for D
Robert Jacques
sandford at jhu.edu
Fri Mar 2 07:25:31 PST 2012
On Fri, 02 Mar 2012 08:13:00 -0600, Denis Shelomovskij
<verylonglogin.reg at gmail.com> wrote:
> Even `memcpy` is claimed dangerous at http://dlang.org/garbage.html
> (because of possibility of moving GC, I suppose) but it just creates
> false positives for GC. `memmove` can even temporary destroy pointers in
> some overlapping cases like Google answer on "Lucky" `memmove source
> code` request does.
>
> So I reinvented the wheel and created GC-safe `memmove` analog called
> `copyOverlapped` with comprehensive unittest coverage:
> https://bitbucket.org/denis_sh/misc/src/tip/memutils.d
>
> And I want this or such function to be included in druntime and be used
> in Phobos because using `memcpy`/`memmove` when even `memcpy` is called
> dangerous in docs looks incorrect and easily fixable.
>
> P.S.
> This post is inspired by bearophile's unanswered post titled "Regarding
> a recent copy() fix" about really mysterious David Simcha's answer about
> `memmove`
> http://d.puremagic.com/issues/show_bug.cgi?id=7484#c2
Is this CTFE compatible?
More information about the Digitalmars-d
mailing list