Thread overview
[Issue 1028] New: Segfault using tuple inside asm code.
Mar 06, 2007
d-bugmail
Mar 11, 2007
d-bugmail
Apr 11, 2007
d-bugmail
Apr 12, 2007
d-bugmail
March 06, 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1028

           Summary: Segfault using tuple inside asm code.
           Product: D
           Version: 1.007
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla@digitalmars.com
        ReportedBy: clugdbug@yahoo.com.au


Line (1) causes a segfault.
Line (2) causes an ICE.

Dsymbol::toSymbol() 'var1', kind = 'alias'
Assertion failure: '0' on line 103 in file 'tocsym.c'

--------
void a(X...)(X expr)
{
    alias X[0] var1;
    asm {
        fld double ptr X[0];   // (1) segfaults
        fstp double ptr var1;  // (2) ICE
    }
}

void main()
{
   a(3.6);
}


-- 

March 11, 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1028





------- Comment #1 from thomas-dloop@kuehne.cn  2007-03-11 06:20 -------
Added to DStress as http://dstress.kuehne.cn/run/t/tuple_19_A.d


-- 

April 11, 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1028


clugdbug@yahoo.com.au changed:

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




------- Comment #2 from clugdbug@yahoo.com.au  2007-04-11 18:40 -------
The situation shown in the test case was fixed in DMD 1.011. The ICE seems to be genuinely fixed, but the segfault still occurs in slightly more complex examples. I've created issue #1125 for those.


-- 

April 12, 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1028





------- Comment #3 from bugzilla@digitalmars.com  2007-04-11 21:59 -------
Fixed dmd 1.011

But the X[0] must be replaced with expr[0].


--