[M3commit] CVS Update: cm3

Jay K jay.krell at cornell.edu
Tue Jun 1 23:44:27 CEST 2010


Start removing the rampant use of volatile in the backend and these warnings show up.
 
Volatile quashes the uninitialized checks in the backend.
 
Is it really ok for an INTEGER to be uninitialized? I realize it contains an "integer" value, as all bit patterns are.
 
Some of these really do seem like bugs. Some do not.
I'll try making fault_proc noreturn, which should remove some of them.
 
 
 - Jay




----------------------------------------
> From: hosking at cs.purdue.edu
> To: jkrell at elego.de
> Date: Tue, 1 Jun 2010 16:29:20 -0500
> CC: m3commit at elegosoft.com
> Subject: Re: [M3commit] CVS Update: cm3
>
> This is bogus. The M3 compiler guarantees all variables are initialized.
>
> Sent from my iPhone
>
> On Jun 1, 2010, at 2:42 PM, jkrell at elego.de (Jay Krell) wrote:
>
>> CVSROOT: /usr/cvs
>> Changes by: jkrell at birch. 10/06/01 14:42:00
>>
>> Modified files:
>> cm3/m3-libs/m3core/src/convert/: Convert.m3
>>
>> Log message:
>> initialize locals; I get warnings that some not quite all, are
>> used uninitialized if I remove the volatile/sideeffects on every
>> load/store in parse.c 		 	   		  


More information about the M3commit mailing list