<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
There isn't really overflow here, just having trouble implementing longint.<BR>
For example <BR>
ToInt(FIRST(INTEGER) & MAXU32)) overflows, though it shouldn't matter.<BR>
<BR>
- Jay<BR> <BR>> Date: Fri, 29 Jan 2010 12:11:39 -0600<BR>> From: rodney_bates@lcwb.coop<BR>> To: m3devel@elegosoft.com<BR>> Subject: Re: [M3devel] [M3commit] CVS Update: cm3<BR>> <BR>> <BR>> <BR>> Tony Hosking wrote:<BR>> > Note that the front-end refuses to do any constant folding that results <BR>> > in overflow. Instead, it generates code that will execute at run-time. <BR>> > If that causes a run-time error then fine. Similarly, the back-end <BR>> > should never do constant folding for things that overflow.<BR>> <BR>> Hmm, I didn't know that. I think that is a very good idea. It really<BR>> preserves language semantics, while gaining efficiency where possible.<BR>> <BR>> <BR>> > <BR>> > On 29 Jan 2010, at 11:48, Jay K wrote:<BR>> > <BR>> >> For now I'm treating the error as a warning and continuing on.<BR>> >> <BR>> >> - Jay<BR>> >><BR>> >> <BR>> >> ------------------------------------------------------------------------<BR>> >> From: hosking@cs.purdue.edu <mailto:hosking@cs.purdue.edu><BR>> >> Date: Fri, 29 Jan 2010 10:31:35 -0500<BR>> >> To: jkrell@elego.de <mailto:jkrell@elego.de><BR>> >> CC: m3commit@elegosoft.com <mailto:m3commit@elegosoft.com><BR>> >> Subject: Re: [M3commit] CVS Update: cm3<BR>> >><BR>> >> Why do you need that?<BR>> >><BR>> >> Antony Hosking | Associate Professor | Computer Science | Purdue <BR>> >> University<BR>> >> 305 N. University Street | West Lafayette | IN 47907 | USA<BR>> >> Office +1 765 494 6001 | Mobile +1 765 427 5484<BR>> >><BR>> >><BR>> >><BR>> >><BR>> >> On 29 Jan 2010, at 09:57, Jay Krell wrote:<BR>> >><BR>> >> CVSROOT: /usr/cvs<BR>> >> Changes by: jkrell@birch. 10/01/29 09:57:33<BR>> >><BR>> >> Modified files:<BR>> >> cm3/m3-sys/m3middle/src/: Target.m3 <BR>> >><BR>> >> Log message:<BR>> >> in ToInt and IntI, do the conversion even if there is overflow<BR>> >> (still returning FALSE for overflow)<BR>> >><BR>> >><BR>> >><BR>> > <BR> </body>
</html>