<HTML>
<style> BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; }</style>Seems fair.  Users probably wouldn't find much use for it anyway, and it would only increase the size of the compiler binary.<br>
<br>
I figure though it could be very useful for, say, allowing compilation and linking with C++ code (if https://www.freepascal.org/future.html is still accurate!)<br>
<br>
I'm happy to know that you like the idea though.<br>
<div><br>
</div><div>Gareth aka. Kit<br>
</div> <br>
<br>
<span style="font-weight: bold;">On Thu 27/12/18 20:43 , Florian Klämpfl florian@freepascal.org sent:<br>
</span><blockquote style="BORDER-LEFT: #F5F5F5 2px solid; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px; PADDING-LEFT: 5px; PADDING-RIGHT: 0px">Am 23.12.2018 um 17:09 schrieb J. Gareth Moreton:
<br>

<span style="color: rgb(102, 102, 102);">> Hi everyone,
</span><br>

<span style="color: rgb(102, 102, 102);">> 
</span><br>

<span style="color: rgb(102, 102, 102);">> I've developed a feature to output the compiler-generated node trees into XML files that could prove useful for
</span><br>

<span style="color: rgb(102, 102, 102);">> debugging purposes.  While the ability to print the nodes to the console or a log file already exist, it gets buried
</span><br>

<span style="color: rgb(102, 102, 102);">> especially if the System unit has its nodes output (the XML file it generated for me is 4.8 MB in size!).
</span><br>

<span style="color: rgb(102, 102, 102);">> 
</span><br>

<span style="color: rgb(102, 102, 102);">> I plan to use this to help me debug and analyse code paths for the "pure" feature that's been on my table for a while,
</span><br>

<span style="color: rgb(102, 102, 102);">> and it might help with debugging in general.  I figure it's a bit more convenient than a console output because you can
</span><br>

<span style="color: rgb(102, 102, 102);">> open the file afterwards in Notepad++ or some other editor that can handle XML files (which I hope are valid!!) and
</span><br>

<span style="color: rgb(102, 102, 102);">> hence visually open and close branches.
</span><br>

<span style="color: rgb(102, 102, 102);">> 
</span><br>

<span style="color: rgb(102, 102, 102);">> Note that it is currently very much a work in progress and hasn't been fully tested, and reuses a lot of features like
</span><br>

<span style="color: rgb(102, 102, 102);">> the "printnodeindent" variable and an error message if it fails to access a file.
</span><br>

<span style="color: rgb(102, 102, 102);">> 
</span><br>

<span style="color: rgb(102, 102, 102);">> To activate, specify the "-Cm" command line parameter (I wanted either "-Cn" or "-Ci", for 'node' and 'intermediate'
</span><br>

<span style="color: rgb(102, 102, 102);">> respectively, but both are taken!).  It's not documented at present, especially as it might be rejected or changed.  The
</span><br>

<span style="color: rgb(102, 102, 102);">> XML files have .ppx extensions and are placed in the output directory.  Let me know how it works out for you.
</span><br>


<br>

While I like the possibility to output the node tree as xml, I do not think that it should be exposed to users by
<br>

command line switches. Instead, if the compiler is compiled with a certain define, it could generate xml node tree output.
<br>


<br>

_______________________________________________
<br>

fpc-devel maillist  -  <a href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a>
<br>

<a target="_blank" href="<a href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</a>"><span style="color: red;">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</span></a>
<br>

<br>

<br>

</blockquote></HTML>