Issue 2119: long double problem? (orb_revision) Source: (, ) Nature: Uncategorized Issue Severity: Summary: Summary: (2.2 3-24) and (2.2 13-8) I"m no floating point expert, but it seems to me that these two definitions are inconsistent. The first implies 1 + 15 + 64 = 80 bits of information, while the second implies 1 + 15 + 112 = 128 bits of information. Resolution: No inconsistency exists as explained in the archive. Revised Text: Actions taken: October 23, 1998: received issue September 16, 1999: closed issue Discussion: End of Annotations:===== Return-Path: Date: Fri, 23 Oct 1998 10:36:52 -0230 From: Matthew Newhook To: orb_revision@omg.org Subject: long double problem? Hi, In the 2.2 and 2.3 draft spec there is the following text: (2.2 3-24): The long double data type represents an IEEE double-extended floating-point number, which has an exponent of at least 15 bits in length and a signed fraction of at least 64 bits. See IEEE Standard for Binary Floating-Point Arithmetic, ANSI/IEEE Standard 754-1985, for a detailed specification. Then later (2.2 13-8) For double-extended floating-point values the exponent is 15 bits long, comprising e1 and e2 in the figure, where the 7 bits in e1 are the most significant. The fractional mantissa (f1 through f14) is 112 bits long, with f1 being the most significant. The value of a long double is determined by: I'm no floating point expert, but it seems to me that these two definitions are inconsistent. The first implies 1 + 15 + 64 = 80 bits of information, while the second implies 1 + 15 + 112 = 128 bits of information. Matthew -- Matthew Newhook E-Mail: mailto:matthew@ooc.com Software Designer WWW: http://www.ooc.com Object Oriented Concepts, Inc. Phone: (978) 439 9285 x 246 Return-Path: Sender: jis@fpk.hp.com Date: Fri, 23 Oct 1998 11:21:09 -0400 From: Jishnu Mukerji Organization: Hewlett-Packard New Jersey Laboratories To: Matthew Newhook , Juergen Boldt Cc: orb_revision@omg.org Subject: Re: (Issue 2119) long double problem? References: <19981023103652.A29660@wiley242h106.roadrunner.nf.net> Matthew Newhook wrote: > > Hi, > In the 2.2 and 2.3 draft spec there is the following text: > > (2.2 3-24): > > The long double data type represents an IEEE double-extended > floating-point number, which has an exponent of at least 15 bits > in > length and a signed fraction of at least 64 bits. See IEEE > Standard > for Binary Floating-Point Arithmetic, ANSI/IEEE Standard 754-1985, > for a detailed specification. Note the phrase "at least" that occurs before both the phrases "15 bits" and the "64 bits". This para describes the minimum requirement that must be met to be confomant with the IEEE double extended floating point standard, for the purposes of the CORBA standards. > Then later (2.2 13-8) > > For double-extended floating-point values the exponent is 15 bits > long, comprising e1 and e2 in the figure, where the 7 bits in e1 > are the most significant. The fractional mantissa (f1 through f14) > is 112 bits long, with f1 being the most significant. The value of > a > long double is determined by: In this paragraph: (i) 15 bits of exponent is "at least" 15 bits of exponent thus meeting the first criterion for being a IEEE double-extended floating-point number. (ii) The signed fraction is 112 bits which is certainly way more than the required minimum of 64 bits, thus the second criterion is met. In particular, there should be no difficulty transmitting a minimally conformant IEEE double-extended floating-point using the layout described in the GIOP chapter. The layout described in the GIOP chapter does place an upper bound on the size and precision of a double-extended floating-point that can be transmitted through IIOP. > > I'm no floating point expert, but it seems to me that these two > definitions are inconsistent. The first implies 1 + 15 + 64 = 80 > bits of information, while the second implies 1 + 15 + 112 = 128 > bits > of information. Me neither, but as explained above, I don't see any inconsistency between the paragraphs in the two chapters. BTW Juergen, 2119 is not really a C++ issue, it is a Core and/or Interop issue, since it involves what is now Chapter 3 and 15, which fall under the purview of the Core and Interop RTFs respectively Jishnu. -- Jishnu Mukerji Systems Architect Advanced Development Enterprise Internet Solution Center Enterprise Systems Group Email: jis@fpk.hp.com Hewlett-Packard New Jersey Labs, Tel: +1 973 443 7528 300 Campus Drive, 2E-62, Fax: +1 973 443 7422 Florham Park, NJ 07932, USA.