On Thu, 29 Nov 2018 at 11:51, Iain Buclaw <ibuc...@gdcproject.org> wrote:
>
> On Wed, 28 Nov 2018 at 22:44, Johannes Pfau <johannesp...@gmail.com> wrote:
> >
> > Hashing of complex types where the floating point type used
> > for the real and imaginary parts has padding (such as X86 80 bit reals)
> > has padding, is currently broken in druntime.
> >
> > Fixed by backporting https://github.com/dlang/druntime/pull/2356
> > from druntime commit 29ce0543cb62229f005b2bc8540416dbccd1130e
> >
> > Tested at https://github.com/D-Programming-GDC/GDC/pull/768
> >
> > --
> > Johannes
> >
> > ---
> > libphobos/ChangeLog:
> >
> > 2018-11-28  Johannes Pfau  <johannesp...@gmail.com>
> >
> >         * libdruntime/core/internal/convert.d: Backport from latest 
> > druntime.
> >         * libdruntime/core/internal/hash.d: Likewise.
> >         * libdruntime/core/internal/traits.d: Likewise.
> >         * libdruntime/rt/util/typeinfo.d: Likewise.
> >
> >  libphobos/libdruntime/core/internal/convert.d |  136 ++-
> >  libphobos/libdruntime/core/internal/hash.d    | 1044 +++++++++++------
> >  libphobos/libdruntime/core/internal/traits.d  |   19 +
> >  libphobos/libdruntime/rt/util/typeinfo.d      |   33 +-
> >  4 files changed, 815 insertions(+), 417 deletions(-)
> >
>
> I had a quick look at the associated druntime PRs, and this looks like
> we're only selectively applying many partial patches.  It would be
> better to apply each dependent patch one at a time, so we don't have a
> half complete backport.
>
> These would be for instance PRs 2197, 2202, 2210, 2200, 2227, 2209,
> 2198, 2243, 2240, 2246, 2311 - I stopped here but there are a few more
> to catch up with the internal/hash implementation, and maybe a few
> more in-between that I didn't spot.
>
> This would make transition from this 2.076+backports to 2.08x or 2.09x
> a little simpler, and we can test these for any problems ahead of
> time.
>

I committed the first part of this as outlined in my suggestion in r268754.

-- 
Iain

Reply via email to