<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>You should never mix versions.<BR>There is no need for a compatibilty mode.<BR> You get compatibility mode by building/using an older cm3 and cm3cg together.<br>The system is meant to be tightly coupled.<br>The file format exists I believe primarily as a licensing artifact.<BR> <BR> <BR>When you use the C backend, or the NT386 backend, or presumably LLVM backend, you don't get the files.<BR>An approximation of them is used in-memory for the C backend and the NT386 backend never<BR>materializes the data, they are just temporary call frames, one at a time.<BR> <BR> <BR>Unless you are in a development mode. Then m3cgcat is a useful<BR>dumper of them, and it can translate to C calling into the C backend..<BR> <BR> <BR>The files are not meant to live long.<br>And even if they did -- hypothetical cm3cginterp, cm3cjit, cm3cgrun --<br>it'd still be tightly coupled.<BR> <BR> <BR>We are free to change enum values and add/remove fields to each enum.<BR>The system has changed through time and there is no need to lock these aspects down.<BR> <BR> <BR>What we need to be compatible with it .m3 and .i3 files.<BR>They are currency.<BR> <BR> <BR>There is perhaps some need to be compatible with .o/.mo/.io and even .m3.c/.i3.c.<BR> <BR> <BR>The fact that the C backend has a different ABI than the gcc backend, in particular because<BR>of nested functions taking the frame pointer as the last C parameter and not in a special register,<BR>worries me, and makes me err toward appending "c" to BUILD_DIR and such, and maybe even TARGET.<BR>or "csj" for setjmp -- so that later we have "cppeh" C++ with C++ exception handling..<BR> <BR> <BR>But anyway, imho .mc files are internal, assuming Tony agrees..<BR> <BR><br>  - Jay<br><br> <BR><div>> Date: Sat, 13 Jun 2015 07:40:59 -0400<br>> From: hendrik@topoi.pooq.com<br>> To: m3devel@elegosoft.com<br>> Subject: Re: [M3devel] cm3: what are *.mc files<br>> <br>> On Sat, Jun 13, 2015 at 10:40:40AM +0200, Elmar Stellnberger wrote:<br></div><div>> > (and possibly one trying to force<br>> > application of cm3cg on a newer intermediate code<br>> > stream. ).<br>> <br>> Not to mention the possibility of having a compatibility mode for an <br>> old file format, in case it's not too much work.<br>> <br>> -- hendrik<br></div>                                         </div></body>
</html>