[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
Re: [Stds-754] Motion: Define multiple-exception semantics
This is item 19 for July. - Dan
Date: Sun, 25 Jun 2006 13:59:30 -0700 (PDT)
From: David Hough 754R work <754r@xxxxxxxxxxx>
Subject: [Stds-754] Motion: Define multiple-exception semantics
Motion: Define multiple-exception semantics
Rationale:
The current specification doesn't specify what happens when alternate
exception handling is enabled for an exception that arises on an operation
that signals more than one exception at once (overflow+inexact or
underflow+inexact). Since languages define almost everything else to
do with alternate exception handling, they should define this too.
Alternative possibilities include requiring that all enabled
alternate exception handling is invoked (what if the first one is a
longjump?) and requiring that flags be raised for all default exceptions.
I don't know if the latter is consistent with any existing hardware.
The text is intended to encompass nonstandard
operations that might signal additional
combinations of exceptions, since the programming interface of
5.7.2. Exception signaling operations explicitly caters to that possibility.
Text:
* In 7.0, replace the existing text
The only exceptions that can coincide on the same operation are
inexact with overflow and inexact with underflow.
with
For the operations specified in this standard,
the only exceptions that can coincide on the same operation are
inexact with overflow and inexact with underflow.
When an operation signals coincident exceptions, none of which
have alternate exception handling enabled, each signaled exception will
receive its default handling.
When an operation signals coincident exceptions, some or all of which
have alternate exception handling enabled, alternate
exception handling will be invoked for the most important exception,
and languages define
whether other signaled exceptions receive default handling,
alternate handling, or are ignored. Exceptions are listed in this
clause in order of decreasing importance (invalid most important,
inexact least important).
* Delete A.4. Precedence, since that specification is subsumed in the
foregoing.