On Mon, 15 Dec 2003 16:09:20 +0000 (GMT), yyyyyyyy@xxxxxxxxxx wrote:
> Defect report from : Vivian W. Morabito , IBM Poughkeepsie
>
>(Please direct followup comments direct to yyyyyyyyyyyyyy@xxxxxxxxxxxxx)
>
>@ page -- line -- section -- comment {SUSV3001}
>
>Problem:
>
>Edition of Specification (Year): 2003
>
>Defect code : 3. Clarification required
>
>http://www.opengroup.org/onlinepubs/007904975/functions/feupdateenv.html
>
>
>We are requesting clarification on the following:
>
>The description of feupdateenv() states "The feupdateenv() function shall
>attempt to
>save the currently raised floating-point exceptions in its automatic storage,
>attempt to
>install the floating-point environment represented by the object pointed to by
>envp, and
>then attempt to raise the saved floating-point exceptions. The argument envp
>shall point
>to an object set by a call to feholdexcept() or fegetenv(), or equal a
>floating-point
>environment macro."
>
>
>Regarding the statement "and then attempt to raise the saved floating-point
>exceptions."
>what floating-point exceptions get raised?
>(1) Those that were originally saved away in the automatic storage
>or (2) those that are indicated by envp?
(1) Those that were originally saved away in the automatic storage
In effect, feupdateenv is like (ignoring unsuccessful calls):
int now;
now = fetestexcept(FE_ALL_EXCEPT); /* save current exceptions */
fesetenv(envp); /* restore environment */
feraiseexcept(now); /* re-raise current exceptions */
---
Fred J. Tydeman Tydeman Consulting
yyyyyyy@xxxxxxxxx Programming, testing, numerics
+1 (775) 287-5904 Vice-chair of J11 (ANSI "C")
Sample C99+FPCE tests: ftp://jump.net/pub/tybor/
Savers sleep well, investors eat well, spenders work forever.
|