Jump to page: 1 2 3
Thread overview
[Issue 23978] [REG 2.103.0] ICE: EscapeBy[] is malloced, but contains GC-allocated objects
[Issue 23978] [REG 2.103.0] ICE: Segmentation fault in dmd.root.aav.dmd_aaGetRvalue at src/dmd/root/aav.d:127
Jun 07, 2023
Iain Buclaw
Jun 07, 2023
Iain Buclaw
Jun 07, 2023
mhh
Jun 07, 2023
Iain Buclaw
Jun 07, 2023
Iain Buclaw
Jun 07, 2023
Iain Buclaw
Jun 07, 2023
Iain Buclaw
Jun 08, 2023
Vladimir Panteleev
Jun 08, 2023
Vladimir Panteleev
Jun 08, 2023
Iain Buclaw
Jun 08, 2023
Iain Buclaw
Jun 08, 2023
Iain Buclaw
Jun 09, 2023
Dennis
Jun 09, 2023
Dlang Bot
Jun 09, 2023
Iain Buclaw
Jun 09, 2023
Iain Buclaw
Jun 09, 2023
Iain Buclaw
[Issue 23978] [REG 2.103.0] ICE: dip1021 memory corruption
Jun 09, 2023
Dennis
Jun 09, 2023
Dennis
Jun 10, 2023
Iain Buclaw
Jun 10, 2023
Iain Buclaw
Jun 10, 2023
Iain Buclaw
Jun 10, 2023
Dlang Bot
Jun 11, 2023
Witold Baryluk
Jun 16, 2023
Dlang Bot
Jun 16, 2023
Dlang Bot
June 07, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ibuclaw@gdcproject.org

--- Comment #1 from Iain Buclaw <ibuclaw@gdcproject.org> ---
(gdb) bt
#0  0x00005644ce0c033d in
_D3dmd4root3aav15dmd_aaGetRvalueFNaNbNiPSQBnQBmQBk2AAPvZQd (key=0x7f9ec39f5560,
aa=0x7f9ec265d360) at src/dmd/root/aav.d:127
#1  0x00005644ce0c0660 in
_D3dmd4root3aav__T10AssocArrayTCQBe10identifier10IdentifierTCQCh7dsymbol7DsymbolZQCl7opIndexMFNaNbNixCQDwQCsQCjZQCa
(this=..., key=0x7f9ec39f5560) at src/dmd/root/aav.d:313
#2  0x00005644cdf373fc in DsymbolTable::lookup(Identifier const*)
(this=0x7f9ec2ec08c0, ident=0x7f9ec39f5560) at src/dmd/dsymbol.d:2399
#3  0x00005644cdf3509a in ScopeDsymbol::search(Loc const&, Identifier*, int)
(this=0x7f9ec39f8400, loc=..., ident=0x7f9ec39f5560, flags=8) at
src/dmd/dsymbol.d:1474
#4  0x00005644cdf31890 in StructDeclaration::search(Loc const&, Identifier*,
int) (this=0x7f9ec39f8400, loc=..., ident=0x7f9ec39f5560, flags=8) at
src/dmd/dstruct.d:277
#5  0x00005644ce008817 in
_D3dmd6opover15search_functionFCQBe7dsymbol12ScopeDsymbolCQCe10identifier10IdentifierZCQDhQCd7Dsymbol
(funcid=0x7f9ec39f5560, ad=0x7f9ec39f8400) at src/dmd/opover.d:1435
#6  0x00005644cdf30d97 in search_toString(StructDeclaration*)
(sd=0x7f9ec39f8400) at src/dmd/dstruct.d:51
#7  0x00005644ce030afd in semanticTypeInfoMembers(StructDeclaration*)
(sd=0x7f9ec39f8400) at src/dmd/semantic3.d:1650
#8  0x00005644ce03086c in Semantic3Visitor::visit(AggregateDeclaration*)
(this=0x7ffd1ab29230, ad=0x7f9ec39f8400) at src/dmd/semantic3.d:1590
#9  0x00005644ce026566 in
ParseTimeVisitor<ASTCodegen>::visit(StructDeclaration*) (this=0x7ffd1ab29230,
s=0x7f9ec39f8400) at src/dmd/parsetimevisitor.d:88
#10 0x00005644cdf31f6e in StructDeclaration::accept(Visitor*)
(this=0x7f9ec39f8400, v=0x7ffd1ab29230) at src/dmd/dstruct.d:490
#11 0x00005644ce02b736 in semantic3(Dsymbol*, Scope*) (dsym=0x7f9ec39f8400,
sc=0x7f9ec317f2e0) at src/dmd/semantic3.d:83
#12 0x00005644cdf98f02 in ExpressionSemanticVisitor::visit(DeclarationExp*)
(this=0x7ffd1ab293a8, e=0x7f9ec39f1c00) at src/dmd/expressionsem.d:5471
#13 0x00005644cdf7dae2 in DeclarationExp::accept(Visitor*)
(this=0x7f9ec39f1c00, v=0x7ffd1ab293a8) at src/dmd/expression.d:4212
#14 0x00005644cdfafe44 in expressionSemantic(Expression*, Scope*)
(e=0x7f9ec39f1c00, sc=0x7f9ec317f2e0) at src/dmd/expressionsem.d:12566
#15 0x00005644ce0361e8 in StatementSemanticVisitor::visit(ExpStatement*)
(this=0x7ffd1ab29458, s=0x7f9ec39f1bd0) at src/dmd/statementsem.d:206
#16 0x00005644ce032736 in ExpStatement::accept(Visitor*) (this=0x7f9ec39f1bd0,
v=0x7ffd1ab29458) at src/dmd/statement.d:490
#17 0x00005644ce0360cc in statementSemantic(Statement*, Scope*)
(s=0x7f9ec39f1bd0, sc=0x7f9ec317f2e0) at src/dmd/statementsem.d:148
#18 0x00005644ce0364af in StatementSemanticVisitor::visit(CompoundStatement*)
(this=0x7ffd1ab29778, cs=0x7f9ec39f1c30) at src/dmd/statementsem.d:269
#19 0x00005644ce032c5a in CompoundStatement::accept(Visitor*)
(this=0x7f9ec39f1c30, v=0x7ffd1ab29778) at src/dmd/statement.d:633
#20 0x00005644ce0360cc in statementSemantic(Statement*, Scope*)
(s=0x7f9ec39f1c30, sc=0x7f9ec317f2e0) at src/dmd/statementsem.d:148
#21 0x00005644ce02cd57 in Semantic3Visitor::visit(FuncDeclaration*)
(this=0x7ffd1ab2a220, funcdecl=0x7f9ec39f7cc0) at src/dmd/semantic3.d:598
#22 0x00005644cdfbb2ca in FuncDeclaration::accept(Visitor*)
(this=0x7f9ec39f7cc0, v=0x7ffd1ab2a220) at src/dmd/func.d:2857
#23 0x00005644ce02b736 in semantic3(Dsymbol*, Scope*) (dsym=0x7f9ec39f7cc0,
sc=0x7f9ec317dcf0) at src/dmd/semantic3.d:83
#24 0x00005644ce02bb87 in Semantic3Visitor::visit(Module*)
(this=0x7ffd1ab2a2e0, mod=0x7f9ec39f7000) at src/dmd/semantic3.d:205
#25 0x00005644cdf1a31e in Module::accept(Visitor*) (this=0x7f9ec39f7000,
v=0x7ffd1ab2a2e0) at src/dmd/dmodule.d:1259
#26 0x00005644ce02b736 in semantic3(Dsymbol*, Scope*) (dsym=0x7f9ec39f7000,
sc=0x0) at src/dmd/semantic3.d:83
#27 0x00005644cdea0e55 in _D3dmd4mars7tryMainFmPPxaKSQz7globals5ParamZi
(params=..., argv=0x7ffd1ab2abe8, argc=5) at src/dmd/mars.d:473
#28 0x00005644cdea2a9a in _Dmain (_param_0=...) at src/dmd/mars.d:962
#29 0x00005644ce1ddabb in rt.dmain2._d_run_main2(char[][], ulong, extern(C)
int(char[][]) function).runAll().__lambda2() ()
#30 0x00005644ce1dd96a in rt.dmain2._d_run_main2(char[][], ulong, extern(C)
int(char[][]) function).tryExec(scope void() delegate) ()
#31 0x00005644ce1dda43 in rt.dmain2._d_run_main2(char[][], ulong, extern(C)
int(char[][]) function).runAll() ()
#32 0x00005644ce1dd96a in rt.dmain2._d_run_main2(char[][], ulong, extern(C)
int(char[][]) function).tryExec(scope void() delegate) ()
#33 0x00005644ce1dd8d3 in _d_run_main2 ()
#34 0x00005644ce1dd69c in _d_run_main ()
#35 0x00005644cdea2a58 in main (argc=5, argv=0x7ffd1ab2abe8) at
src/dmd/mars.d:918

--
June 07, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

--- Comment #2 from Iain Buclaw <ibuclaw@gdcproject.org> ---
---
125│         while (e)
126│         {
127├───────────> if (key == e.key)
128│                 return e.value;
129│             e = e.next;
130│         }
---

(gdb) p key
$1 = (void *) 0x7f9ec39f5560

(gdb) p e
$2 = (dmd.root.aav.aaA *) 0x20ec8348ec8b4855

(gdb) p aa.b[i]
$3 = (dmd.root.aav.aaA *) 0x7f9ec2666a00

(gdb) p *aa.b[i]
$4 = {next = 0x5644ce2fb510 <vtable for dmd.declaration.ThisDeclaration>,
keyValue = {key = 0x7f9ec39ec5e0, value = 0x7f9ec2642660}}

(gdb) p *('dmd.declaration.ThisDeclaration'*)aa.b[i]
$5 = {<dmd.declaration.VarDeclaration> = {<dmd.declaration.Declaration> =
{<dmd.dsymbol.Dsymbol> = {<dmd.ast_node.ASTNode> =
{<dmd.root.rootobject.RootObject> = {<No data fields>}, <No data fields>},
        ident = 0x7f9ec39ec5e0, parent = 0x7f9ec2642660, csym = 0x0, loc =
{filename = 0x0, linnum = 0, charnum = 0}, _scope = 0x0, prettystring = 0x0,
atts = 0x0, errors = false,
        semanticRun = 2 '\002', localNum = 0}, type = 0x7f9ec265d660,
originalType = 0x7f9ec265d660, storage_class = 268697636, visibility = {kind =
5 '\005', pkg = 0x0}, _linkage = 1 '\001', inuse = 0,
      adFlags = 0 '\000', isym = 0x0, mangleOverride = 0x0}, _init = 0x0,
nestedrefs = {length = 0, data = 0x0, smallarray = {0x0}}, aliasTuple = 0x0,
lastVar = 0x0, edtor = 0x0, range = 0x0,
    maybes = 0x0, endlinnum = 0, offset = 0, sequenceNumber = 610, alignment =
{value = 1234, pack = false}, ctfeAdrOnStack = 4294967295, bitFields = 256,
canassign = 0 '\000',
    isdataseg = 2 '\002'}, <No data fields>}

(gdb) p *(('dmd.declaration.ThisDeclaration'*)aa.b[i]).ident
$6 = {<dmd.root.rootobject.RootObject> = {<No data fields>}, value = 88,
isAnonymous_ = false, name = "this"}

(gdb) p *(('dmd.declaration.ThisDeclaration'*)aa.b[i]).type
$7 = {<dmd.ast_node.ASTNode> = {<dmd.root.rootobject.RootObject> = {<No data
fields>}, <No data fields>}, ty = 8 '\b', mod = 1 '\001', deco = 0x7f9ec37e8500
"xS8pr1101138raytraceFZ1V",
  mcache = 0x7f9ec2649b40, pto = 0x0, rto = 0x0, arrayof = 0x0, vtinfo = 0x0,
ctype = 0x0}

--
June 07, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

mhh <maxhaton@gmail.com> changed:

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

--- Comment #3 from mhh <maxhaton@gmail.com> ---
Is dip1021 required?

--
June 07, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

--- Comment #4 from Iain Buclaw <ibuclaw@gdcproject.org> ---
It looks like one of the elements in the aaA array is pointing as a live class object ThisDeclaration. So it's loaded with bogus data and results in a segfault after dereferencing a part of memory it shouldn't have.

--
June 07, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

--- Comment #5 from Iain Buclaw <ibuclaw@gdcproject.org> ---
(In reply to mhh from comment #3)
> Is dip1021 required?

AFAICT, all that dip1021 is doing is make the compiler call GC.malloc/GC.free a number of times more often than it usually does.

https://github.com/dlang/dmd/blob/master/compiler/src/dmd/ob.d

I'd consider the main trigger to be `-lowmem` - so it may well be the GC itself that is at fault, given that git blame points to a change in `_d_newclass`, this seems the most plausible explanation.

--
June 07, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

--- Comment #6 from Iain Buclaw <ibuclaw@gdcproject.org> ---
git blame says the regressing commit is https://github.com/dlang/dmd/pull/14837

--
June 07, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |https://github.com/dlang/dm
                   |                            |d/pull/14837

--
June 08, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dlang-bugzilla@thecybershad
                   |                            |ow.net

--- Comment #7 from Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> ---
I have not been able to reproduce this. It would be good to have a test case which more reliably reproduces the bug. I tried wrapping the code into a static foreach, but that did not help.

--
June 08, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

--- Comment #8 from Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> ---
Also because we need something to put in the test suite to prevent this from regressing again.

--
June 08, 2023
https://issues.dlang.org/show_bug.cgi?id=23978

--- Comment #9 from Iain Buclaw <ibuclaw@gdcproject.org> ---
The printf dumps really don't give any hint as to what went wrong, but there is at least a common pattern I see for each time it crashes.

---------------------

Mem.xrealloc((nil), 624) = 0x7f3686b63000  <-- !!! This address ends up as aa.b
...
...
Mem.xrealloc(0x7f3686b63000, 832) = 0x7f3686b8d400 <-- !!! marked free
...
...
----------------------------------------------------------
from: dmd_aaRehash++
this = 0x7f3686b95a20
nodes = 9
b_length = 4
[
        b[0] 0x7f3686b95a38 = 0x7f3686b95a58 {
                next = 0x7f3686b98c20
                key = 0x7f3687f32fc0
                value = 0x7f3687f2c500
        }
        b[1] 0x7f3686b95a40 = 0x7f3686b98bc0 {
                next = (nil)
                key = 0x7f3687f36060
                value = 0x7f3687f37000
        }
        b[2] 0x7f3686b95a48 = 0x7f3686b98b80 {
                next = 0x7f3686b98be0
                key = 0x7f3687f32fe0
                value = 0x7f3687f2c600
        }
        b[3] 0x7f3686b95a50 = 0x7f3686b98ba0 {
                next = 0x7f3686b98c00
                key = 0x7f3687f36000
                value = 0x7f3687f2c700
        }
]
Mem.xmalloc(768) = 0x7f3686b63000 <-- !!! rehash wants memory, reuse old
address
----------------------------------------------------------
from: dmd_aaRehash--
this = 0x7f3686b95a20
nodes = 9
b_length = 32
[
        b[0] 0x7f3686b63000 = (nil)
        b[1] 0x7f3686b63008 = (nil)
        b[2] 0x7f3686b63010 = (nil)
        b[3] 0x7f3686b63018 = (nil)
        b[4] 0x7f3686b63020 = (nil)
        b[5] 0x7f3686b63028 = (nil)
        b[6] 0x7f3686b63030 = (nil)
        b[7] 0x7f3686b63038 = (nil)  <-- !!! This index is null
        b[8] 0x7f3686b63040 = (nil)
        b[9] 0x7f3686b63048 = (nil)
        b[10] 0x7f3686b63050 = (nil)
        b[11] 0x7f3686b63058 = (nil)
        b[12] 0x7f3686b63060 = (nil)
        b[13] 0x7f3686b63068 = (nil)
        b[14] 0x7f3686b63070 = (nil)
        b[15] 0x7f3686b63078 = (nil)
        b[16] 0x7f3686b63080 = (nil)
        b[17] 0x7f3686b63088 = (nil)
        b[18] 0x7f3686b63090 = (nil)
        b[19] 0x7f3686b63098 = 0x7f3686b98ba0 {
                next = (nil)
                key = 0x7f3687f36000
                value = 0x7f3687f2c700
        }
        b[20] 0x7f3686b630a0 = 0x7f3686b95a58 {
                next = (nil)
                key = 0x7f3687f32fc0
                value = 0x7f3687f2c500
        }
        b[21] 0x7f3686b630a8 = 0x7f3686b98bc0 {
                next = (nil)
                key = 0x7f3687f36060
                value = 0x7f3687f37000
        }
        b[22] 0x7f3686b630b0 = 0x7f3686b98b80 {
                next = (nil)
                key = 0x7f3687f32fe0
                value = 0x7f3687f2c600
        }
        b[23] 0x7f3686b630b8 = 0x7f3686b98c00 {
                next = (nil)
                key = 0x7f3687f36040
                value = 0x7f3687f37330
        }
        b[24] 0x7f3686b630c0 = 0x7f3686b98c20 {
                next = (nil)
                key = 0x7f3687f360a0
                value = 0x7f3687f2c800
        }
        b[25] 0x7f3686b630c8 = (nil)
        b[26] 0x7f3686b630d0 = 0x7f3686b98be0 {
                next = (nil)
                key = 0x7f3687f36080
                value = 0x7f3687f34200
        }
        b[27] 0x7f3686b630d8 = (nil)
        b[28] 0x7f3686b630e0 = 0x7f3686b98c60 {
                next = (nil)
                key = 0x7f3687f360e0
                value = (nil)
        }
        b[29] 0x7f3686b630e8 = (nil)
        b[30] 0x7f3686b630f0 = 0x7f3686b98c40 {
                next = (nil)
                key = 0x7f3687f360c0
                value = 0x7f3687f37660
        }
        b[31] 0x7f3686b630f8 = (nil)
]
...
...
Mem.xmalloc(80) = 0x7f3686ba2b40
----------------------------------------------------------
from: dmd_aaGet
this = 0x7f3686ba2b40
nodes = 0
----------------------------------------------------------
from: dmd_aaGet==
this = 0x7f3686ba2b40
nodes = 1
b_length = 4
[
        b[0] 0x7f3686ba2b58 = (nil)
        b[1] 0x7f3686ba2b60 = 0x7f3686ba2b78 {
                next = (nil)
                key = 0x7f3687f285e0
                value = (nil)
        }
        b[2] 0x7f3686ba2b68 = (nil)
        b[3] 0x7f3686ba2b70 = (nil)
]
----------------------------------------------------------
from: dmd_aaGet
this = 0x7f3686ba2b40
nodes = 1
b_length = 4
[
        b[0] 0x7f3686ba2b58 = (nil)
        b[1] 0x7f3686ba2b60 = 0x7f3686ba2b78 {
                next = (nil)
                key = 0x7f3687f285e0
                value = 0x7f3686b9fb00  <-- !!! This is what corrupts aa.b[7]
        }
        b[2] 0x7f3686ba2b68 = (nil)
        b[3] 0x7f3686ba2b70 = (nil)
]
...
...
----------------------------------------------------------
from: dmd_aaGetRvalue
this = 0x7f3686ba2b40  <-- !!! Last access of this AA
nodes = 2
b_length = 4
[
        b[0] 0x7f3686ba2b58 = (nil)
        b[1] 0x7f3686ba2b60 = 0x7f3686ba2b78 {
                next = (nil)
                key = 0x7f3687f285e0
                value = 0x7f3686b9fb00
        }
        b[2] 0x7f3686ba2b68 = (nil)
        b[3] 0x7f3686ba2b70 = 0x7f3686b9a220 {
                next = (nil)
                key = 0x7f3687f2ade0
                value = 0x7f3686b9fc00
        }
]
----------------------------------------------------------
from: dmd_aaGetRvalue
this = 0x7f3686b95a20
nodes = 9
b_length = 32
[
        b[0] 0x7f3686b63000 = (nil)
        b[1] 0x7f3686b63008 = (nil)
        b[2] 0x7f3686b63010 = (nil)
        b[3] 0x7f3686b63018 = (nil)
        b[4] 0x7f3686b63020 = (nil)
        b[5] 0x7f3686b63028 = (nil)
        b[6] 0x7f3686b63030 = (nil)
        b[7] 0x7f3686b63038 = (nil)  <-- !!! Still null
        b[8] 0x7f3686b63040 = (nil)
        b[9] 0x7f3686b63048 = (nil)
        b[10] 0x7f3686b63050 = (nil)
        b[11] 0x7f3686b63058 = (nil)
        b[12] 0x7f3686b63060 = (nil)
        b[13] 0x7f3686b63068 = (nil)
        b[14] 0x7f3686b63070 = (nil)
        b[15] 0x7f3686b63078 = (nil)
        b[16] 0x7f3686b63080 = (nil)
        b[17] 0x7f3686b63088 = (nil)
        b[18] 0x7f3686b63090 = (nil)
        b[19] 0x7f3686b63098 = 0x7f3686b98ba0 {
                next = (nil)
                key = 0x7f3687f36000
                value = 0x7f3687f2c700
        }
        b[20] 0x7f3686b630a0 = 0x7f3686b95a58 {
                next = (nil)
                key = 0x7f3687f32fc0
                value = 0x7f3687f2c500
        }
        b[21] 0x7f3686b630a8 = 0x7f3686b98bc0 {
                next = (nil)
                key = 0x7f3687f36060
                value = 0x7f3687f37000
        }
        b[22] 0x7f3686b630b0 = 0x7f3686b98b80 {
                next = (nil)
                key = 0x7f3687f32fe0
                value = 0x7f3687f2c600
        }
        b[23] 0x7f3686b630b8 = 0x7f3686b98c00 {
                next = (nil)
                key = 0x7f3687f36040
                value = 0x7f3687f37330
        }
        b[24] 0x7f3686b630c0 = 0x7f3686b98c20 {
                next = (nil)
                key = 0x7f3687f360a0
                value = 0x7f3687f2c800
        }
        b[25] 0x7f3686b630c8 = (nil)
        b[26] 0x7f3686b630d0 = 0x7f3686b98be0 {
                next = (nil)
                key = 0x7f3687f36080
                value = 0x7f3687f34200
        }
        b[27] 0x7f3686b630d8 = (nil)
        b[28] 0x7f3686b630e0 = 0x7f3686b98c60 {
                next = (nil)
                key = 0x7f3687f360e0
                value = 0x7f3687f37990
        }
        b[29] 0x7f3686b630e8 = (nil)
        b[30] 0x7f3686b630f0 = 0x7f3686b98c40 {
                next = (nil)
                key = 0x7f3687f360c0
                value = 0x7f3687f37660
        }
        b[31] 0x7f3686b630f8 = (nil)
]
...
...
----------------------------------------------------------
from: dmd_aaGetRvalue
this = 0x7f3686b95a20
nodes = 9
b_length = 32
[
        b[0] 0x7f3686b63000 = (nil)
        b[1] 0x7f3686b63008 = (nil)
        b[2] 0x7f3686b63010 = (nil)
        b[3] 0x7f3686b63018 = (nil)
        b[4] 0x7f3686b63020 = (nil)
        b[5] 0x7f3686b63028 = (nil)
        b[6] 0x7f3686b63030 = (nil)
        b[7] 0x7f3686b63038 = 0x7f3686b9fb00 {  <-- !!! Now has value?!?!
                next = 0x559ae6f9b510
                key = 0x7f3687f285e0
                value = 0x7f3686b8c330
        }
        b[8] 0x7f3686b63040 = (nil)
        b[9] 0x7f3686b63048 = (nil)
        b[10] 0x7f3686b63050 = (nil)
        b[11] 0x7f3686b63058 = (nil)
        b[12] 0x7f3686b63060 = (nil)
        b[13] 0x7f3686b63068 = (nil)
        b[14] 0x7f3686b63070 = (nil)
        b[15] 0x7f3686b63078 = (nil)
        b[16] 0x7f3686b63080 = (nil)
        b[17] 0x7f3686b63088 = (nil)
        b[18] 0x7f3686b63090 = (nil)
        b[19] 0x7f3686b63098 = 0x7f3686b98ba0 {
                next = (nil)
                key = 0x7f3687f36000
                value = 0x7f3687f2c700
        }
        b[20] 0x7f3686b630a0 = 0x7f3686b95a58 {
                next = (nil)
                key = 0x7f3687f32fc0
                value = 0x7f3687f2c500
        }
        b[21] 0x7f3686b630a8 = 0x7f3686b98bc0 {
                next = (nil)
                key = 0x7f3687f36060
                value = 0x7f3687f37000
        }
        b[22] 0x7f3686b630b0 = 0x7f3686b98b80 {
                next = (nil)
                key = 0x7f3687f32fe0
                value = 0x7f3687f2c600
        }
        b[23] 0x7f3686b630b8 = 0x7f3686b98c00 {
                next = (nil)
                key = 0x7f3687f36040
                value = 0x7f3687f37330
        }
        b[24] 0x7f3686b630c0 = 0x7f3686b98c20 {
                next = (nil)
                key = 0x7f3687f360a0
                value = 0x7f3687f2c800
        }
        b[25] 0x7f3686b630c8 = (nil)
        b[26] 0x7f3686b630d0 = 0x7f3686b98be0 {
                next = (nil)
                key = 0x7f3687f36080
                value = 0x7f3687f34200
        }
        b[27] 0x7f3686b630d8 = (nil)
        b[28] 0x7f3686b630e0 = 0x7f3686b98c60 {
                next = (nil)
                key = 0x7f3687f360e0
                value = 0x7f3687f37990
        }
        b[29] 0x7f3686b630e8 = (nil)
        b[30] 0x7f3686b630f0 = 0x7f3686b98c40 {
                next = (nil)
                key = 0x7f3687f360c0
                value = 0x7f3687f37660
        }
        b[31] 0x7f3686b630f8 = (nil)
]
Segmentation fault (core dumped)
fail

--
« First   ‹ Prev
1 2 3