<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Hi all:<br>I wonder if this Initialization runtime has done well at that, because that Main body doesn't start is not something of safe nature, all Main Modules must be safe on Modula-3.<br>Jay I can collaborate if you assign me something (for now on i386 later on x64), but we need to agree on how to do it (and if that implies be verbose in C let's do so) if I may say so.<br>I have read some research going on C safety based on determining minimum RT assumptions of all compilers and platforms, but I don't know the current state of that work. Model checking could be next stop, given the amount of static analyzer tools for C, etc, but again I don't know the state of the art of that research.<br>Thanks in advance<br><br>--- El <b>lun, 17/9/12, Jay K <i><jay.krell@cornell.edu></i></b> escribió:<br><blockquote style="border-left: 2px solid rgb(16, 16,
255); margin-left: 5px; padding-left: 5px;"><br>De: Jay K <jay.krell@cornell.edu><br>Asunto: [M3devel] update..<br>Para: "m3devel" <m3devel@elegosoft.com><br>Fecha: lunes, 17 de septiembre, 2012 17:04<br><br><div id="yiv2135652463">
<style><!--
#yiv2135652463 .yiv2135652463hmmessage P
{
margin:0px;padding:0px;}
#yiv2135652463 body.yiv2135652463hmmessage
{
font-size:12pt;font-family:Calibri;}
--></style><div><div dir="ltr"><font face="Calibri" size="3"> > ..it still crashes in RTLinker.InitRuntime, but it gets</font><br><font face="Calibri" size="3"> > significantly further</font><br><br><br><font face="Calibri" size="3">correction, it gets to the main module!</font><div style="font-family: Calibri; font-size: 12pt;"><br></div><div style="font-family: Calibri; font-size: 12pt;"><br></div><div><div><font face="Calibri">RunMainBody: ../src/runtime/common/RTTipe.i3(2)</font></div><div><font face="Calibri"> ../src/runtime/common/RTPacking.i3(3)</font></div><div><font face="Calibri"> ../src/runtime/common/RT0.i3(3)</font></div><div><font face="Calibri"> ../src/runtime/common/RTHooks.i3(3)</font></div><div><font face="Calibri"> ../src/runtime/common/RTTipe.m3(4)</font></div><div><font face="Calibri">RunMainBody: exec: ../src/runtime/common/RTTipe.i3(3)</font></div><div><font face="Calibri">RunMainBody: exec:
../src/runtime/common/RTTipe.m3(3)</font></div><div><font face="Calibri">AddUnitI: ../src/runtime/common/RTException.m3(3)</font></div><div><font face="Calibri"><br></font></div><div><font face="Calibri">Program received signal EXC_BAD_ACCESS, Could not access memory.</font></div><div><font face="Calibri">Reason: KERN_PROTECTION_FAILURE at address: 0x00000034</font></div><div><font face="Calibri">0x00033396 in Makefile__ScanCommandLine1 () at Makefile.mc.c:5407</font></div><div><font face="Calibri">5407<span class="yiv2135652463Apple-tab-span" style="white-space: pre;"> </span>(*(volatile INT32*)&L_103)=(INT32)(((INT32)(((INT32)(((INT32)(((INT32)(*(volatile UINT32*)(52+(ADDRESS)*(volatile ADDRESS*)(272+(ADDRESS)&M_Makefile))))))-((INT32)(((INT32)M3_INT32(1)))))))));</font></div><div><font face="Calibri">(gdb) bt</font></div><div><font face="Calibri">#0 0x00033396 in Makefile__ScanCommandLine1 () at Makefile.mc.c:5407</font></div><div><font
face="Calibri">#1 0x0003a166 in Main__DoIt () at Main.mc.c:359</font></div><div><font face="Calibri">#2 0x0003b2c2 in Main_M3 (mode=<incomplete type>) at Main.mc.c:1790</font></div><div><font face="Calibri">#3 0x0035d760 in RTLinker__AddUnit (b=0x3b29c "U??S??\024?") at RTLinker.mc.c:963</font></div><div><font face="Calibri">#4 0x00002902 in main (argc=1, argv=0xbffff8dc, envp=0xbffff8e4) at _m3main.c:16</font></div><div><font face="Calibri">(gdb) </font></div><div style="font-family: Calibri; font-size: 12pt;"><br></div><div style="font-family: Calibri; font-size: 12pt;"><br></div><div style="font-family: Calibri; font-size: 12pt;"><br></div><div style="font-family: Calibri; font-size: 12pt;">very nice</div><div style="font-family: Calibri; font-size: 12pt;"><br></div><div style="font-family: Calibri; font-size: 12pt;"><br></div><div style="font-family: Calibri; font-size: 12pt;"> - Jay</div><div
style="font-family: Calibri; font-size: 12pt;"><br><br><div><div id="yiv2135652463SkyDrivePlaceholder"></div>> Date: Mon, 17 Sep 2012 13:07:11 +0000<br>> To: m3commit@elegosoft.com<br>> From: jkrell@elego.de<br>> Subject: [M3commit] CVS Update: cm3<br>> <br>> CVSROOT: /usr/cvs<br>> Changes by: jkrell@birch. 12/09/17 13:07:11<br>> <br>> Modified files:<br>> cm3/m3-sys/m3back/src/: M3C.m3 <br>> <br>> Log message:<br>> is_const => const<br>> const => const_text<br>> 4 space indentation (work in progress)<br>> add target/wordsize at top of C<br>> restore "static" on non-exported globals (important! avoids duplicates<br>> and errors)<br>> <br>> and then most importantly, pad out segments to their declared sizes<br>> very important -- to get the zeros at the end instead of garbage<br>> this fixes crashing at "startup" (in RTLinker.InitRuntime)<br>> ..it still crashes in
RTLinker.InitRuntime, but it gets<br>> significantly further<br>> <br></div></div></div> </div></div>
</div></blockquote></td></tr></table>