<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Hi all:<br>Thanks for the message and now I caught it, I have found a thesis on the <* FIELDS *> specification feature, perhaps would be a nice idea to use it to verify the trees in both Olivetti and CM3 front end, and to convert back and forth (for instance when select ESC-ing a program so just doing it once and for all is faster).<br><br>And thinking it more, I guess similarly this could be the way to watch the back end to reconstruct/infer the types same from the gcc assembly (and the CLEF tree) and compare and match if they truly match to prove it's correct.<br><br>Thanks in advance<br><br>--- El <b>mar, 28/2/12, Antony Hosking <i><antony.hosking@gmail.com></i></b> escribió:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>De: Antony Hosking <antony.hosking@gmail.com><br>Asunto: Re:
 [M3devel] atomic operations in cm3 (also fails on AMD64_LINUX)<br>Para: "Daniel Alejandro Benavides D." <dabenavidesd@yahoo.es><br>CC: "Dragiša Durić" <dragisha@m3w.org>, "m3devel" <m3devel@elegosoft.com>, "Jay K" <jay.krell@cornell.edu><br>Fecha: martes, 28 de febrero, 2012 15:46<br><br><div id="yiv723077437"><div>It is the front end outputting badly typed IR.<div><br></div><div><div><div><div>On Feb 28, 2012, at 1:09 PM, Daniel Alejandro Benavides D. wrote:</div><br class="yiv723077437Apple-interchange-newline"><blockquote type="cite"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td style="font-family: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; font-size: inherit; line-height: inherit; font-size-adjust: inherit; font-stretch: inherit;" valign="top">Hi all:<br>I don't understand it, what is breaking, the compiler front end, the backend or both or what else? Besides platform
 feature instability, means that you are doing UNSAFE MODULEs? Question, is your machine SMP? I have one 32 and 64 UP LINUXLIBC6 capable, does it matter if is in one or in the other?<br>Thanks in advance<br><br>--- El <b>mar, 28/2/12, Dragiša Durić <i><<a rel="nofollow" ymailto="mailto:dragisha@m3w.org" target="_blank" href="/mc/compose?to=dragisha@m3w.org">dragisha@m3w.org</a>></i></b> escribió:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>De: Dragiša Durić <<a rel="nofollow" ymailto="mailto:dragisha@m3w.org" target="_blank" href="/mc/compose?to=dragisha@m3w.org">dragisha@m3w.org</a>><br>Asunto: Re: [M3devel] atomic operations in cm3 (also fails on AMD64_LINUX)<br>Para: "Antony Hosking" <<a rel="nofollow" ymailto="mailto:antony.hosking@gmail.com" target="_blank" href="/mc/compose?to=antony.hosking@gmail.com">antony.hosking@gmail.com</a>><br>CC: "m3devel" <<a
 rel="nofollow" ymailto="mailto:m3devel@elegosoft.com" target="_blank" href="/mc/compose?to=m3devel@elegosoft.com">m3devel@elegosoft.com</a>>, "Jay K" <<a rel="nofollow" ymailto="mailto:jay.krell@cornell.edu" target="_blank" href="/mc/compose?to=jay.krell@cornell.edu">jay.krell@cornell.edu</a>><br>Fecha: martes, 28 de febrero, 2012 09:08<br><br><div id="yiv723077437"><div><div>% cm3</div><div>--- building in ../AMD64_LINUX ---</div><div><br></div><div>new source -> compiling AtomicAddress.m3</div><div>"../AMD64_LINUX/AtomicAddress.m3", line 3:  18 code generation errors</div><div>1 error encountered</div><div>new exporters -> recompiling AtomicAddress.i3</div><div>compilation failed => not building program "test"</div><div>Fatal Error: package build failed</div><div><br></div><div>% cat
 m3makefile </div><div>import("libm3")</div><div><br></div><div>...</div><div><br></div><div>Generic_module("Atomic")</div><div>template("atomic")</div><div>Atomic("Address")</div><div><br></div><div>program ("test")</div><div><br></div><div><div>On Feb 28, 2012, at 2:25 PM, Antony Hosking wrote:</div><br class="yiv723077437Apple-interchange-newline"><blockquote type="cite"><div style="">Yes, this is a known bug.<div><br><div><div>On Feb 28, 2012, at 8:15 AM, Dragiša Durić wrote:</div><br class="yiv723077437Apple-interchange-newline"><blockquote type="cite"><div style=""><div>% cm3</div><div>--- building in ../AMD64_DARWIN ---</div><div><br></div><div>new source -> compiling Proxy.m3</div><div>"../src/Proxy.m3", line 13: warning: not used (JobHandler)</div><div>1 warning encountered</div><div>new source -> compiling AtomicAddress.i3</div><div>new source -> compiling AtomicAddress.m3</div><div>"../AMD64_DARWIN/AtomicAddress.m3 =>
 ../src/Atomic.mg", line 52: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64    ] got [ Addr  Int64   ]</div><div><br></div><div><br></div><div>***</div><div>*** runtime error:</div><div>***    Segmentation violation - possible attempt to dereference NIL</div><div>***    pc = 0x1002f0838 = Concat + 0x8a in ../src/text/TextCat.m3</div><div>***</div><div><br></div><div>zsh: abort      cm3</div><div><br></div><div><div>On Feb
 27, 2012, at 8:15 AM, Dragiša Durić wrote:</div><br class="yiv723077437Apple-interchange-newline"><blockquote type="cite"><div style=""><div>m3-libs/m3core/src/atomic/Atomic.ig is well commented, also.</div><div><br></div><div><br></div><div><div>On Feb 27, 2012, at 1:37 AM, Jay K wrote:</div><br class="yiv723077437Apple-interchange-newline"><blockquote type="cite"><span class="yiv723077437Apple-style-span" style="font-family: Tahoma; font-size: 13px;">Shows how to use it all.</span><span class="yiv723077437Apple-style-span" style="font-family: Tahoma; font-size: 13px;"><br></span><span class="yiv723077437Apple-style-span" style="font-family: Tahoma; font-size: 13px;"> </span><span class="yiv723077437Apple-style-span" style="font-family: Tahoma; font-size: 13px;"><br></span><span class="yiv723077437Apple-style-span" style="font-family: Tahoma; font-size: 13px;">It is disabled. Let's try
 it..</span></blockquote></div><br></div></blockquote></div><br></div></blockquote></div><br></div></div></blockquote></div><br></div></div></blockquote></td></tr></tbody></table></blockquote></div><br></div></div></div></div></blockquote></td></tr></table>