[Issue 9586] New: Win64 5/6/7 struct returns

d-bugmail at puremagic.com d-bugmail at puremagic.com
Mon Feb 25 09:22:26 PST 2013


http://d.puremagic.com/issues/show_bug.cgi?id=9586

           Summary: Win64 5/6/7 struct returns
           Product: D
           Version: D2
          Platform: x86_64
        OS/Version: Windows
            Status: NEW
          Keywords: wrong-code
          Severity: major
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla at digitalmars.com
        ReportedBy: govellius at gmail.com


--- Comment #0 from Shahid <govellius at gmail.com> 2013-02-25 09:22:24 PST ---
import std.stdio;

struct sss { short a,b,c; }

sss ret_sss(){
    return sss(1,2,3);
}

void main() {
    writeln( ret_sss() );
}

---
sometimes prints "sss(1,2,1)" 
sometimes prints "sss(1,2,0)"

I believe the problem was introduced in commit 5a10d078

backend/cgelem.c: elstruct() case 5,6,7

https://github.com/D-Programming-Language/dmd/commit/5a10d078687f4b87f4c2d1f2c76af4d560819c91

Note: test/runnable/testabi.d has a test case for this, currently disabled,
please enable it once fixed.

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


More information about the Digitalmars-d-bugs mailing list