www.digitalmars.com         C & C++   DMDScript  

D - Exceptions cause nasties on try-level stack.

I'm working on a test program, and the following has an infinite loop

  for(i = 0; i < cIterations; ++i)
  {
   try
   {
    int z = 1;

    throw new IntException(z);
   }
   catch(IntException x)
   {
    total_x += x.getValue();
   }
  }

because the throwing of the exception hoses i to the same large number each
time through the loop. The same behaviour happens whether the throw is
directly within the try{} or within a function.

Walter, I'll be sending you the latest test prog distr for your perusal.
Obviously we'd need a fix for this very soon in order to get in the article
by Monday's deadline.

Matthew
Apr 10 2003