On Tue, Nov 01, 2005 at 11:17:52AM -0700, Jeffrey A Law wrote:
> On Tue, 2005-11-01 at 11:06 -0500, Diego Novillo wrote:
> > To prevent losing location information for the warning, I had modified the 
> > propagation engine to warn as it folded the expression away.
> Possibly a useful thing to have, but I don't think we want to put
> the burden of detecting uninitialized variables onto each 
> optimizer :-)

Just an off-the-wall idea: What if dereferencing an uninitialized variable
is considered a side effect?  Then that side effect must be preserved
unless it is unreachable.  Consider

       while (i > 0)
          i--;
       // no more uses of i.

Instead of throwing everything away, this would become

        __check_initialized(i);

and we would still get the warning.





Reply via email to