<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<title></title>
<meta name="Generator" content="Cocoa HTML Writer">
<meta name="CocoaVersion" content="1671.5">
<style type="text/css">
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px 'Inconsolata-dz for Powerline'}
p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px 'Inconsolata-dz for Powerline'; min-height: 21.0px}
p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; line-height: 17.0px; font: 14.7px Times; color: #000000; -webkit-text-stroke: #000000; min-height: 15.0px}
p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; line-height: 17.0px; font: 14.7px Times; color: #000000; -webkit-text-stroke: #000000}
p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 17.0px; font: 14.7px 'Songti SC'; color: #000000; -webkit-text-stroke: #000000}
p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 17.0px; font: 14.7px Times; color: #000000; -webkit-text-stroke: #000000}
p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 17.0px; font: 14.7px Times; color: #000000; -webkit-text-stroke: #000000; min-height: 15.0px}
p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px 'Inconsolata-dz for Powerline'; color: #808080}
span.s1 {font-kerning: none}
span.s2 {font: 14.7px 'Lucida Grande'; font-kerning: none}
table.t1 {border-collapse: collapse}
td.td1 {width: 15.0px; border-style: solid; border-width: 1.0px 0.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 2.0px}
td.td2 {width: 95.4px; border-style: solid; border-width: 1.0px 1.0px 1.0px 0.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 2.0px}
td.td3 {width: 526.1px; border-style: solid; border-width: 1.0px 1.0px 1.0px 0.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 2.0px}
td.td4 {width: 127.5px; border-style: solid; border-width: 1.0px 1.0px 1.0px 0.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 2.0px}
td.td5 {width: 15.0px; border-style: solid; border-width: 0.0px 0.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 2.0px}
td.td6 {width: 95.4px; border-style: solid; border-width: 0.0px 1.0px 1.0px 0.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 2.0px}
td.td7 {width: 526.1px; border-style: solid; border-width: 0.0px 1.0px 1.0px 0.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 2.0px}
td.td8 {width: 127.5px; border-style: solid; border-width: 0.0px 1.0px 1.0px 0.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 2.0px}
td.td9 {width: 80.4px; border-style: solid; border-width: 0.0px 1.0px 1.0px 0.0px; border-color: #000000 #000000 #000000 #000000; padding: 2.0px 2.0px 2.0px 17.0px}
</style>
</head>
<body>
<p class="p1">I have the following code I compile in release mode but with "debugInfo" bulildOptions in my dub.json:</p>
<p class="p2"><br></p>
<p class="p1">gob root = win.layout_root = new gob();</p>
<p class="p2"><br></p>
<p class="p1">After executing this code line I see this in the debugger:</p>
<p class="p2"><br></p>
<table cellspacing="0" cellpadding="0" class="t1">
<tbody>
<tr>
<td valign="middle" class="td1">
<p class="p3"><span class="s1"><b></b></span><br></p>
</td>
<td valign="middle" class="td2">
<p class="p4"><span class="s1"><b>Name</b></span></p>
</td>
<td valign="middle" class="td3">
<p class="p4"><span class="s1"><b>Wert</b></span></p>
</td>
<td valign="middle" class="td4">
<p class="p4"><span class="s1"><b>Typ</b></span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p5"><span class="s1">◢</span></p>
</td>
<td valign="middle" class="td6">
<p class="p6"><span class="s1">root</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0x000000f17deff760 {node=0x00007ff629fb0000 {__guard_fids_table} {}, container=false, level=0, ax0=-2.7520788e+14, ...}</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">gui.gob</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s2">▶</span><span class="s1"> __vfptr</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0x0000000000000000</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">void*[36]*</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">node</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0x00007ff629fb0000 {__guard_fids_table} {}</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">yoga.yoga.YGNode*</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">container</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">false</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">bool</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">level</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">int</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">ax0</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">-2.7520788e+14</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">float</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">ay0</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">7.4268819e-43</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">float</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">fill</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">true</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">bool</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s2">▶</span><span class="s1"> id</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">""...</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">string</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p5"><span class="s1">◢</span></p>
</td>
<td valign="middle" class="td6">
<p class="p6"><span class="s1">win.layout_root</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0x00000212d90481c0 {node=0x00000212d995eb90 {}, container=false, level=0, ax0=0, ay0=0, fill=false, id=""}</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">gui.gob</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s2">▶</span><span class="s1"> __vfptr</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0x00007ff62a4bd410 {_D3gui3gob6__vtblZ} {[0x00007ff62a4bd350 {_D3gui3gob7__ClassZ}, 0x00007ff62a12c6c6 {_D6object6Object8toStringMFZAya}, ...]}</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">void*[36]*</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">node</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0x00000212d995eb90 {}</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">yoga.yoga.YGNode*</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">container</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">false</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">bool</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">level</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">int</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">ax0</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">float</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">ay0</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">0</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">float</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">fill</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">false</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">bool</span></p>
</td>
</tr>
<tr>
<td valign="middle" class="td5">
<p class="p7"><span class="s1"></span><br></p>
</td>
<td valign="middle" class="td9">
<p class="p6"><span class="s1">id</span></p>
</td>
<td valign="middle" class="td7">
<p class="p6"><span class="s1">""</span></p>
</td>
<td valign="middle" class="td8">
<p class="p6"><span class="s1">string</span></p>
</td>
</tr>
</tbody>
</table>
<p class="p2"><br></p>
<p class="p1">I'm wondering why the root and win.layout_root values are not the same? What's happening here? I thought that root is a class reference which uses the same data as win.layout_root.</p>
<p class="p2"><br></p>
<p class="p1">When I compile in debug mode and run the same code, the values are the same.</p>
<p class="p2"><br></p>
<p class="p8">--<span class="Apple-converted-space"> </span></p>
<p class="p8">Robert M. Münch</p>
<p class="p8">http://www.saphirion.com</p>
<p class="p8">smarter | better | faster</p>
</body>
</html>