I&#39;ve just commited the fix, but not the comment ;)<br><br>Seriously, I don&#39;t know how we can document this kind of things. <br>Putting such comments in #compilerFlagsRelease  or #compilerFlagsRelease   doesn&#39;t make sense because they are aprox. 12 implementaions...I don&#39;t want to copy paste to all of them. Only in one? it doesn&#39;t make sense because people won&#39;t see it. So..how we document this kind of things?  I have no idea. <br>
<br>The same with class comments. There are so many classes that copy pasting or documenting only one doesn&#39;t make sense.<br><br>The only thing I though is doing something like this:<br><br><br>compilerFlagsRelease <br>
    ^#(&#39;-g3&#39; &#39;-Os&#39; &#39;-fvisibility=hidden&#39; &#39;-funroll-loops&#39; &#39;-fasm-blocks&#39; &#39;-finline-functions&#39; &#39;-mfpmath=sse&#39; &#39;-fomit-frame-pointer&#39; &#39;-march=pentium-m&#39; &#39;-mtune=prescott&#39; &#39;-falign-functions=16&#39; &#39;-fno-gcse&#39; &#39;-fno-cse-follow-jumps&#39; &#39;-std=gnu99&#39; &#39;-DBUILD_FOR_OSX&#39; &#39;-DUSE_INLINE_MEMORY_ACCESSORS&#39; &#39;-DLSB_FIRST&#39; &#39;-DUSE_INLINE_MEMORY_ACCESSORS&#39; &#39;-DHAVE_SYS_TIME_H&#39; &#39;-DHAVE_NANOSLEEP&#39; &#39;-DNDEBUG=0&#39; , self debugVMFlag: true,  &#39;-DCOGMTVM=0&#39; &#39;-DUSE_GLOBAL_STRUCT=0&#39; &#39;-DBASE_HEADER_SIZE=4&#39;)<br>
<br>&gt;&gt;debugVMFlagEnable: boolean<br>&quot;THIS flag is blagh...blh...&quot;<br>^ &#39;-DDEBUGVM=&#39;, boolean asNumber asString<br><br>or something like that...<br><br><br>cheers<br><br>Mariano<br><br><br><div class="gmail_quote">
On Wed, Apr 13, 2011 at 6:57 PM, Igor Stasenko <span dir="ltr">&lt;<a href="mailto:siguctua@gmail.com">siguctua@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im"><br>
On 13 April 2011 18:52, Mariano Martinez Peck &lt;<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt; Thanks Eliot for the explanation. So, some of those confs are incorrect. I will commit a fix tonight.<br>
&gt;<br>
<br>
</div>And with comments, comments! :)<br>
Thank you both!<br>
<div><div></div><div class="h5"><br>
&gt; Mariano<br>
&gt;<br>
&gt; On Wed, Apr 13, 2011 at 6:35 PM, Eliot Miranda &lt;<a href="mailto:eliot.miranda@gmail.com">eliot.miranda@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Wed, Apr 13, 2011 at 9:06 AM, Mariano Martinez Peck &lt;<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Hi Eliot. I am not sure if I understand correctly these flags, and if I do, then I think the CMake configurations are wrong.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; First, what are those flags intended for?   Which should be tuned on and which one off for both, release and debug ?<br>
&gt;&gt;<br>
&gt;&gt; NDEBUG is a Mac OS X/FreeBSD/Linux flag that controls asserts.  To get asserts working in Cog it was easiest to use this flag.  So if NDEBUG=0 asserts are eliminated and if NDEBUG=1 they are included and cause a warning to be printed to stdout when enabled (via a call to warning).  See platforms/Cross/vm/sqAssert.h.  Hence NDEBUG=0 for production and NDEBUG=1 for debug and assert VMs.<br>

&gt;&gt; DEBUGVM is a flag controlling details of code generation for the entry-points that jump from the interpreter into machine code.  Seer DEBUGVM and Debug in src/vm/cogit.c.  I needed this early on in development when the system was flakey.  Now I never use it.  One might suggest eliminating it but it will probably be useful again when we add new code generators (e.g. for ARM and x86-64).  So DEBUGVM=0 for production and assert VMs and either 1 or 0 for debug VMs, depending on what kind of problems you&#39;re looking to debug.<br>

&gt;&gt; HTH<br>
&gt;&gt; Eliot<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; In Unix/Windows conf, onlt for release, these are set:<br>
&gt;&gt;&gt; -DDEBUGVM=0 -DNDEBUG<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Mac Carbon release<br>
&gt;&gt;&gt; -DDEBUGVM=0 -DNDEBUG=1<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Mac Cocoa Cog (CocoaIOSCogConfig) debug<br>
&gt;&gt;&gt;  &#39;-DNDEBUG=1&#39; &#39;-DDEBUGVM=0&#39;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Mac Cocoa Cog (CocoaIOSCogConfig) release<br>
&gt;&gt;&gt; &#39;-DNDEBUG=1&#39; &#39;-DDEBUGVM=0&#39;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Mac Cocoa Cog MT  debug<br>
&gt;&gt;&gt; -DNDEBUG=0&#39; &#39;-DDEBUGVM=1&#39;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Mac Cocoa Cog MT  release<br>
&gt;&gt;&gt; &#39;-DNDEBUG=0&#39; &#39;-DDEBUGVM=1&#39;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; So...this is a mess.  Mac Cocoa Cog MT,  have the same for both release and debug. Is this correct?<br>
&gt;&gt;&gt; Mac Cocoa Cog, idem Mac Cocoa Cog MT<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; What is worst, Mac Cocoa Cog MT is the opposite of Mac Cocoa Cog<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; so...i have no idea how this should be, but sounds strange for me<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Cheers<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; --<br>
&gt;&gt;&gt; Mariano<br>
&gt;&gt;&gt; <a href="http://marianopeck.wordpress.com" target="_blank">http://marianopeck.wordpress.com</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Mariano<br>
&gt; <a href="http://marianopeck.wordpress.com" target="_blank">http://marianopeck.wordpress.com</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
<br>
<br>
<br>
</div></div><font color="#888888">--<br>
Best regards,<br>
Igor Stasenko AKA sig.<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Mariano<br><a href="http://marianopeck.wordpress.com" target="_blank">http://marianopeck.wordpress.com</a><br><br>