<p>Am 04.06.2012 08:47 schrieb "Fuxin Zhang" <<a href="mailto:zhangfx@lemote.com">zhangfx@lemote.com</a>>:<br>
> BTW,<br>
> for the statement i := j / 10.0, is that in the div node, resultdef<br>
> refers to i, left refers to j, and right refers to 10.0?<br>
> But for the typeconvnode, what is the result/left/right node? </p>
<p>AFAIK the tree of that statement will be the following:</p>
<p>AssigmentNode<br>
Left: Loadnode for i<br>
Right: BinaryNode for /:<br>
Left: Loadnode for j<br>
Right: Constnode for 10.0<br>
Resultdef: floatdef (not necessarily the def of i)</p>
<p>If i and the resultdef of the binary node are not the same a typeconvnode will also be added, where:<br>
Left: the binary node<br>
Right: Nil (AFAIK a typeconvnode doesn't have a right node at all...)<br>
Resultdef: the degree if the target type (here the def if i)</p>
<p>> In general, is there a way for me to learn about the node generating<br>
> process? E.g. add print somewhere to show it? Add in each node seems too<br>
> much...</p>
<p>AFAIK FPC has an option for this. Call the compiler using -h and check the -v options. One of them should dump the tree to a txt file.</p>
<p>Regards,<br>
Sven</p>