Re: Major Bug in Interpreter [Attn: Robert Craig]

new topic     » goto parent     » topic index » view thread      » older message » newer message

Patrick Barnes wrote:
> I don't think there would be many false positives here... Rob, what
> 'hundreds' are you talking about?

When I was implementing this stuff several months ago,
I did some tests, and found that while some examples
were fairly trivial, it quite often turned out, especially
in large Windows prgrams, that a very large number of variables
could potentially be overwritten by a particular function call
used on the RHS of a multiply subscripted assignment.

The reasons for this are:
   1. The function contains calls to other functions and procedures,
      which contain calls to other functions and procedures etc. ...

   2. A call-back can happen whenever Euphoria calls a .dll routine.
      The Euphoria call-back function might modify variables, directly
      or through calls to other routines.

   3. A program might have a forward call via routine id that
      opens up almost all the (non-private) variables in the
      whole program to possible modification

A human might be able to analyze the source code and rule out
the possibility of a routine calling another routine in a given
situation, or a call-back happening, but it's not practical 
for the Euphoria parser to do this.

If you want to experiment with warnings, 
modify source\parser.e to issue a warning 
anytime the variable "dangerous" is set to true.
I think that's essentially what you are after.

Regards,
   Rob Craig
   Rapid Deployment Software
   http://www.RapidEuphoria.com

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu