Thread overview
[Issue 5407] New: X86_64: Segfault on AA Foreach
Jan 04, 2011
Iain Buclaw
Jan 04, 2011
Brad Roberts
Jan 04, 2011
Iain Buclaw
Jan 04, 2011
nfxjfg@gmail.com
Jan 04, 2011
Brad Roberts
Jan 04, 2011
Iain Buclaw
January 04, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5407

           Summary: X86_64: Segfault on AA Foreach
           Product: D
           Version: D2
          Platform: x86_64
        OS/Version: All
            Status: NEW
          Severity: major
          Priority: P2
         Component: druntime
        AssignedTo: sean@invisibleduck.org
        ReportedBy: ibuclaw@ubuntu.com


--- Comment #0 from Iain Buclaw <ibuclaw@ubuntu.com> 2011-01-03 21:39:58 PST ---
The aligntsize() implementations in aaA.d and object_.d differ, causing a segfault to occur during runtime.

Relevant ticket against GDC here: https://bitbucket.org/goshawk/gdc/issue/133/segfault-on-aa-foreach

And fix has already been committed, can you please sync this into to druntime? https://bitbucket.org/goshawk/gdc/changeset/aba6c8857d64

Regards

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 04, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5407


Brad Roberts <braddr@puremagic.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
                 CC|                            |braddr@puremagic.com
         AssignedTo|sean@invisibleduck.org      |braddr@puremagic.com


--- Comment #1 from Brad Roberts <braddr@puremagic.com> 2011-01-03 21:48:35 PST ---
Hrm.. why are there two implementations of the function in the first place? I'll take this bug, but what I'd prefer to see is loosing the one in aaA.d and making the one in object.di/object_.d correct.

You didn't happen to try that, did you?

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 04, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5407



--- Comment #2 from Iain Buclaw <ibuclaw@ubuntu.com> 2011-01-03 21:58:07 PST ---
The one on object.d is a member of struct AssociativeArray(Key, Value), the other is an internal helper function.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 04, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5407


nfxjfg@gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |nfxjfg@gmail.com


--- Comment #3 from nfxjfg@gmail.com 2011-01-03 22:05:09 PST ---
By the way, I have already demonstrated with a compiler/runtime patch, that you can have an associative array ABI that works on all architectures and doesn't need that messy alignment stuff (how many bugs did that generate in the past, present and future?).

Enjoy your bugs, I guess.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 04, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5407


Brad Roberts <braddr@puremagic.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


--- Comment #4 from Brad Roberts <braddr@puremagic.com> 2011-01-03 22:53:19 PST ---
Changes applied in r473.  Thanks Iain.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 04, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5407



--- Comment #5 from Iain Buclaw <ibuclaw@ubuntu.com> 2011-01-04 05:15:18 PST ---
(In reply to comment #3)
> By the way, I have already demonstrated with a compiler/runtime patch, that you can have an associative array ABI that works on all architectures and doesn't need that messy alignment stuff (how many bugs did that generate in the past, present and future?).
> 

Would you happen to know where you demonstrated this? :)

All I can find ABI-wise on AA's is http://d.puremagic.com/issues/show_bug.cgi?id=802

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------