<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
cm3.exe from a few days ago doesn't understand the VAL(LONGINT, INTEGER) used in Convert.m3.<BR>
 I had "fixed" Convert.m3 that but Tony put it back.<BR>
 <BR>
cm3/m3quake packages from a period this week only work with current libm3.<BR>
  That is fixed.<BR>
 <BR>
Normally you can either use an old cm3 and skip libm3/m3core or you can use a fairly recent cm3 and not stop skip them.<BR>
Neither was the case for a short time, but I restored the first option.<BR>
 <BR>
 - Jay<BR><BR> <BR>
<HR id=stopSpelling>
From: rcolebur@SCIRES.COM<BR>To: m3devel@elegosoft.com<BR>Date: Fri, 15 Jan 2010 16:45:42 -0500<BR>Subject: Re: [M3devel] [M3commit] WebFile/QScanner use of File.T.status().size (64bit file size on 32bit platform)<BR><BR>
<STYLE>
.ExternalClass .ecxshape
{;}
</STYLE>

<STYLE>
.ExternalClass p.ecxMsoNormal, .ExternalClass li.ecxMsoNormal, .ExternalClass div.ecxMsoNormal
{margin-bottom:.0001pt;font-size:12.0pt;font-family:'Times New Roman','serif';}
.ExternalClass a:link, .ExternalClass span.ecxMsoHyperlink
{color:blue;text-decoration:underline;}
.ExternalClass a:visited, .ExternalClass span.ecxMsoHyperlinkFollowed
{color:purple;text-decoration:underline;}
.ExternalClass p
{margin-right:0in;margin-left:0in;font-size:12.0pt;font-family:'Times New Roman','serif';}
.ExternalClass span.ecxecxapple-style-span
{;}
.ExternalClass span.ecxecxapple-converted-space
{;}
.ExternalClass span.ecxEmailStyle20
{font-family:'Calibri','sans-serif';color:#1F497D;}
.ExternalClass .ecxMsoChpDefault
{font-size:10.0pt;}
@page Section1
{size:8.5in 11.0in;}
.ExternalClass div.ecxSection1
{page:Section1;}
</STYLE>

<DIV class=ecxSection1>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">Jay:</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt"> </SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">Not sure about your statement that recent cm3.exe can’t be used to bootstrap new compiler.</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt"> </SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">I haven’t done an update in last 2 days, but up until then, I’ve been using my then current cm3.exe to bootstrap the new stuff on Windows without any trouble.</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt"> </SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">Are you saying that if I get current update (I’m only a couple of days out of sync with HEAD) that I won’t be able to bootstrap anymore?</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt"> </SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">Regards,</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">Randy Coleburn</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt"> </SPAN></P>
<DIV>
<DIV style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><B><SPAN style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt">From:</SPAN></B><SPAN style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt"> jayk123@hotmail.com [mailto:jayk123@hotmail.com] <B>On Behalf Of </B>Jay K<BR><B>Sent:</B> Friday, January 15, 2010 4:34 PM<BR><B>To:</B> Tony<BR><B>Cc:</B> m3devel; m3commit@elegosoft.com<BR><B>Subject:</B> Re: [M3commit] [M3devel] WebFile/QScanner use of File.T.status().size (64bit file size on 32bit platform)</SPAN></P></DIV></DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal> </P>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">We were in a state where neither m3core nor cm3/m3quake could be built with old tools/libraries.<BR>That is more ok for m3core, less ok for cm3/m3quake.<BR>As well, m3core also couldn't be built with recent but slightly old compiler.<BR>    See, I didn't remove the use of LONGINT, just the use of VAL(LONGINT, INTEGER).<BR>    As well, maybe cm3/m3quake couldn't be built with recent tools/libraries.<BR> <BR> <BR>The sysutils/m3quake/cm3 changes should stand?<BR>Ok removing "32" from the name and letting it return >4GB on 64bit platforms.<BR>But I think either it can't use libm3.File.T.status().size, OR we have to<BR>make status().size more compatible such as by introducing statusL or sizeL.<BR>32bit code wouldn't see >4GB file sizes unless actively changed.<BR>Maybe not a bad idea.<BR> <BR> <BR> - Jay<BR><BR> </SPAN></P>
<DIV style="TEXT-ALIGN: center; MARGIN-LEFT: 0.5in" class=ecxMsoNormal align=center><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">
<HR id=ecxstopSpelling align=center SIZE=2 width="100%">
</SPAN></DIV>
<P style="MARGIN-BOTTOM: 12pt; MARGIN-LEFT: 0.5in; MARGIN-RIGHT: 0in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">From: hosking@cs.purdue.edu<BR>Date: Fri, 15 Jan 2010 16:17:15 -0500<BR>To: jay.krell@cornell.edu<BR>CC: m3devel@elegosoft.com; m3commit@elegosoft.com<BR>Subject: Re: [M3devel] WebFile/QScanner use of File.T.status().size (64bit file size on 32bit platform)</SPAN></P>
<DIV>
<DIV>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN class=ecxecxapple-style-span><SPAN style="FONT-FAMILY: 'Helvetica','sans-serif'; COLOR: black; FONT-SIZE: 13.5pt">On 15 Jan 2010, at 15:57, Jay K wrote:</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Helvetica','sans-serif'; COLOR: black; FONT-SIZE: 9pt"></SPAN></P></DIV></DIV></DIV>
<DIV>
<BLOCKQUOTE style="MARGIN-BOTTOM: 5pt">
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">I at least did move the hacks to one place.<BR>I agree it isn't nice.<BR>This is due to my changes, not yours -- changing File.T.status().size to LONGINT.<BR>There's no way to use that in the "compiler" and still support old compiler/libm3, right?</SPAN></P></DIV></BLOCKQUOTE>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P></DIV>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">RIght.  Except we should not try to maintain compatibility between among trunk versions.  If you want to build as of a particular version then use libraries that match that version.</SPAN></P></DIV>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P></DIV>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">My next set of commits for LONGCARD make this even more critical because the library has hardwired stuff that that makes it require a particular version of the compiler to compile it.  ;-)</SPAN></P></DIV>
<BLOCKQUOTE style="MARGIN-BOTTOM: 5pt">
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">Ok now that I centralized it to sysutils?<BR> <BR> <BR>Leave status() alone as using INTEGER and introduce statusL()?<BR> <BR> <BR>Or leave size alone and introduce sizeL?<BR> That's not a complete solution because you have to set size to something.<BR>  -1 if it doesn't fit?<BR> <BR> <BR>Or just get past the bootstrapping and put it back using VAL?</SPAN></P></DIV></BLOCKQUOTE>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P></DIV>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">Yes.</SPAN></P></DIV>
<BLOCKQUOTE style="MARGIN-BOTTOM: 5pt">
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">It seems a tough situation..the compiler is otherwise I believe<BR>very compatible with old compiler/libm3.</SPAN></P></DIV></BLOCKQUOTE>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P></DIV>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt">It very soon will not be.</SPAN></P></DIV>
<BLOCKQUOTE style="MARGIN-BOTTOM: 5pt">
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P>
<DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> <BR> <BR> - Jay<BR><BR> <BR>> From:<SPAN class=ecxecxapple-converted-space> </SPAN><A href="mailto:hosking@cs.purdue.edu">hosking@cs.purdue.edu</A><BR>> Date: Fri, 15 Jan 2010 10:13:06 -0500<BR>> To:<SPAN class=ecxecxapple-converted-space> </SPAN><A href="mailto:jkrell@elego.de">jkrell@elego.de</A><BR>> CC:<SPAN class=ecxecxapple-converted-space> </SPAN><A href="mailto:m3commit@elegosoft.com">m3commit@elegosoft.com</A><BR>> Subject: Re: [M3commit] CVS Update: cm3<BR>><SPAN class=ecxecxapple-converted-space> </SPAN><BR>> Jay, all of these changes seem unnecessary (and worse, clutter the source with a variety of hacks). I had no problem building against both versions of m3core and libm3 in order to bootstrap a new compiler. What is going on here?<BR>><SPAN class=ecxecxapple-converted-space> </SPAN><BR>> On 15 Jan 2010, at 14:41, Jay Krell wrote:<BR>><SPAN class=ecxecxapple-converted-space> </SPAN><BR>> > CVSROOT: /usr/cvs<BR>> > Changes by: jkrell@birch. 10/01/15 14:41:00<BR>> ><SPAN class=ecxecxapple-converted-space> </SPAN><BR>> > Modified files:<BR>> > cm3/m3-sys/m3quake/src/: QCompiler.m3 QScanner.i3 QScanner.m3<SPAN class=ecxecxapple-converted-space> </SPAN><BR>> > m3makefile<SPAN class=ecxecxapple-converted-space> </SPAN><BR>> > Added files:<BR>> > cm3/m3-sys/m3quake/src/: QScannerC.c<SPAN class=ecxecxapple-converted-space> </SPAN><BR>> ><SPAN class=ecxecxapple-converted-space> </SPAN><BR>> > Log message:<BR>> > m3quake also can't use libm3 File.T.status().size and be compatible<BR>> > with both old and new libm3 (INTEGER vs. LONGINT)<BR>><SPAN class=ecxecxapple-converted-space> </SPAN></SPAN></P></DIV></BLOCKQUOTE></DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt"> </SPAN></P></DIV>                                     </body>
</html>