On Tue, May 10, 2005 at 09:06:36AM -0400, William M. (Mike) Miller wrote: >On 5/9/05, Dave Korn <[EMAIL PROTECTED]> wrote: >> ----Original Message---- >> >From: William M. (Mike) Miller >> > The output "In dtor." is missing. >> >> That's because stdout is already closed by the time your dtor runs. I >> stepped right into it, it does the printf call but somewhere down in the dll >> it checks the flags field in the stdout FILE object for read/write and finds >> it's not open for either, so it's at eof. Grep 'cantwrite' if you really >> want to find it. >> >> Anyway, your dtor is called. > >You're absolutely right -- the destructor is being called. I should >have checked that myself, rather than assuming that the absence >of its output meant that it was not being executed. Thanks for >investigating. > >I'm still left with the problem of figuring out what changed to cause >this result. Until I ran the "setup" application last Friday, I was >seeing output from static destructors, and now I don't. It would >save me a lot of work to be able to restore the old behavior, but I >don't know what was responsible for this change.
Just as a wild guess, does explicitly calling exit help at all? cgf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/