This is the mail archive of the
mailing list for the GCC project.
Re: Minor exception bug with unexpected
> On Thu, Mar 19, 1998 at 04:24:35PM +0100, Alexandre Oliva wrote:
>> ak writes:
>> > The appended example dumps core in __check_eh_spec. Although that
>> > is legal in CD2 [except.special says "The unexpected() function shall
>> > not return"], it is still not very nice to the user. The patch
>> > makes unexpected() call terminate() in this case.
>> I'd rather call abort() instead of terminate(). Calling terminate()
>> might cause yet more unexpected results (unavoidable pun, sorry :-)
> What unexpected results should it cause? abort is a bit too radical
> for my tastes.
What if terminate() is replaced by the programmer too, and it returns
instead of calling terminating? Instead of adding a call to
terminate() then a call to abort(), I'd rather call abort() directly,
because terminate() is *not* expected to be called after unexpected().
Since we're moving into grey area (undefined behavior), I'd rather
keep things simple, and abort()ing seems better to me, even for
Universidade Estadual de Campinas, SP, Brasil