[Issue 14578] [ddemangle] core.exception.InvalidMemoryOperationError@(0) handling large symbol list
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Thu May 14 03:33:40 PDT 2015
https://issues.dlang.org/show_bug.cgi?id=14578
Iain Buclaw <ibuclaw at gdcproject.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ibuclaw at gdcproject.org
Severity|normal |regression
--- Comment #3 from Iain Buclaw <ibuclaw at gdcproject.org> ---
(gdb) bt
#0 onInvalidMemoryOperationError (pretend_sideffect=0x0) at
src/core/exception.d:536
#1 0x00000000004dd558 in _d_arrayshrinkfit (ti=0x5275f0 <TypeInfo_Aa.init$>,
arr=...) at src/rt/lifetime.d:684
#2 0x00000000004c6906 in object.assumeSafeAppend!(char).assumeSafeAppend(ref
inout(char[])) (arr=0x773518) at ./../../src/druntime/import/object.di:662
#3 0x00000000004c5f5e in std.stdio.File.ByLineImpl!(char,
char).ByLineImpl.popFront() (this=0x773500) at
./../../src/phobos/std/stdio.d:1677
#4 0x00000000004c5d1b in std.stdio.File.ByLine!(char, char).ByLine.popFront()
(this=0x7fffffffda08) at ./../../src/phobos/std/stdio.d:1624
#5 0x00000000004a62be in D main (args=...) at ddemangle.d:79
(gdb) up
#1 0x00000000004dd558 in _d_arrayshrinkfit (ti=0x5275f0 <TypeInfo_Aa.init$>,
arr=...) at src/rt/lifetime.d:684
(gdb) p info
$1 = {base = 0x7ffff7ee8400, size = 1024, attr = 10}
(gdb) p newsize
$2 = 1023
(gdb) p tinext
$3 = (object.TypeInfo *) 0x5279c0 <TypeInfo_a.init$>
Going to upgrade this to regression:
https://github.com/D-Programming-Language/druntime/commit/0b72987df17354c83bc302672f4f132fe03db65a
https://github.com/D-Programming-Language/druntime/commit/e25cab10d763b36b9c63c62e3713134a137e2760
It throws because newsize + 2 overflows 1024, so assumeSafeAppend fails.
--
More information about the Digitalmars-d-bugs
mailing list