From owner-freebsd-current Tue Mar 21 5:31:51 2000 Delivered-To: freebsd-current@freebsd.org Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by hub.freebsd.org (Postfix) with ESMTP id 0E5EE37B79A for ; Tue, 21 Mar 2000 05:31:47 -0800 (PST) (envelope-from bde@zeta.org.au) Received: from bde.zeta.org.au (bde.zeta.org.au [203.2.228.102]) by mailman.zeta.org.au (8.8.7/8.8.7) with ESMTP id AAA25934; Wed, 22 Mar 2000 00:38:44 +1100 Date: Wed, 22 Mar 2000 00:31:01 +1100 (EST) From: Bruce Evans X-Sender: bde@alphplex.bde.org To: David Malone Cc: Martin Cracauer , current@FreeBSD.ORG Subject: Re: Floating point exceptions. In-Reply-To: <200003210924.aa02305@salmon.maths.tcd.ie> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Tue, 21 Mar 2000, David Malone wrote: > Is there a way of setting the control word which is in any sense > portable? Most machines I've looked at seem to have no documented > way of setting what exceptions should be masked, and each one that > does has a different set of calls. No. C99 provides an (optional) portable way of setting the rounding mode (fesetround() corresponds to fpsetround()), but doesn't provide a portable way to set the precision or exception masks. It only provides fesetenv(), and the only portable args for fesetenv() are FE_DFL_ENV (which gives the default environment) and a pointer to a result filled in by a previous call to fegetenv(). Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message