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



--- Comment #28 from Leandro Lucarella <llu...@gmail.com> 2010-07-20 19:51:19 
PDT ---
Some extra info:

(gdb) up
#5  0x00000000004679d4 in VarDeclaration::fillPointerMap (this=0x1130700,
pm=0x7fff15974fc0, a_offset=0) at declaration.c:1379
1379            type->fillPointerMap(pm, offset + a_offset);
(gdb) list
1374
1375    void VarDeclaration::fillPointerMap(PointerMap *pm, size_t a_offset)
1376    {
1377        //printf("VarDeclaration::fillPointerMap() %s, ty = %d, offs=%d\n",
toChars(), type->ty, (int)offset);
1378        if (!isDataseg())
1379            type->fillPointerMap(pm, offset + a_offset);
1380    }
1381
1382    /******************************************
1383     * If a variable has an auto destructor call, return call for it.

I have commented out that printf() and this is what I got:

VarDeclaration::fillPointerMap() bytes, ty = 19, offs=8
VarDeclaration::fillPointerMap() buffer, ty = 0, offs=12
dmd: mtype.c:5671: void PointerMap::pointer(size_t): Assertion `offset <
m_size' failed.

And this is the piece of D code triggering the assertion:

package class MerkleDamgard : Digest
{
        private uint    bytes;
        private ubyte[] buffer;  <---- This one!

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

Reply via email to