This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Static destructors not running
On 5/10/05, Christopher Faylor <cgf-no-personal-reply-please@cygwin.com> wrote:
> On Tue, May 10, 2005 at 11:54:45AM -0400, William M. (Mike) Miller wrote:
> >Yes, the output does appear when I call exit instead of returning
> >from main(). Unfortunately, that's not an option. For one thing,
> >this is shared code that works just fine on other systems (and
> >under Cygwin until I updated last Friday). For another, the
> >semantics of calling exit in main() are not exactly the same as
> >returning from main() -- local automatic objects in main() are not
> >destroyed by the exit() call, which is something some of this
> >code that is now failing relies on.
>
> I was trying to figure out the problem, not suggest that you should
> change all of your code.
Sorry, my misunderstanding.
> Previous to 1.5.16, static destructors were always called via a
> gcc "atexit" mechanism. This meant that there were scenarios where
> destructors would not be called at all so I made cygwin's exit call
> the destructors explicitly. I just forgot to make cygwin do the right
> thing when returning from main rather than exiting. This will be
> fixed in the next snapshot.
Great! Thanks very much.
--
William M. (Mike) Miller | Edison Design Group
william.m.miller@gmail.com
--
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/