From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kevin Buettner To: Andrew Cagney , gdb-patches@sources.redhat.com Subject: Re: [rfc] Return old cleanup when doing a restore_cleanups() Date: Tue, 14 Aug 2001 17:37:00 -0000 Message-id: <1010815003647.ZM30617@ocotillo.lan> References: <3B782A6A.2050207@cygnus.com> X-SW-Source: 2001-08/msg00170.html On Aug 13, 3:28pm, Andrew Cagney wrote: > The attached patch tweeks the restore_cleanups() family of functions so > that the old cleanup is returned. > > In theory, that returned cleanup should be NULL (since the cleanup chain > will have been drained just prior to the restore_cleanups() call). In > reality, I'm not too sure. I'd like to find out what the old chain was > so I can add an assert to certain callers (e.g. catch_errors()). > > I guess the alternative is to just stick the assert in > restore_cleanups() and see what breaks. > > Thoughts? Preference? At the moment, the only caller of restore_cleanups() is catch_errors(), so the assert could just as easily go in restore_cleanups() without causing any more breakage than placing the assert in catch_errors(). If all (future) callers of restore_cleanups are supposed to drain the cleanup chain first, then I think the assert belongs in restore_cleanups(). If you think there might be a good reason to violate this rule, then the assert belongs in the caller. Personally, I'd rather see the assert go in restore_cleanups() until someone can demonstrate a good reason for not draining the cleanup chain. Kevin