[Cfp-interest] a term for float, double, and long double

James W Thomas jaswthomas at sbcglobal.net
Fri May 31 18:40:57 PDT 2013


On the question of a name (generic, general, traditional, classical, etc.) for the float, double, and long double types, the two responses from WG 14 members stated a preference for "standard real floating types", to reflect the C naming model for integer types. I recall we didn't take that approach originally because we are proposing new types for the Standard (and shouldn't they be called "standard" too?). On second thought, since our new types are either conditionally normative or optional, it seems reasonable to have "standard" apply to the types the Standard requires of all implementations, and not to the types we're adding.

A second issue is whether "real" is needed as part of the name (for float, double, and long double), or would "standard floating types" be better. Since C11 made complex a conditionally normative feature, the types float, double, and long double are the only floating types the Standard now requires for all (hosted) implementations. If we did include "real" in the name, would we need to include it in the names of the new real floating types we'll be adding (decimal real floating types, etc.)? A minimalist scheme might be

real floating types
	standard floating types: float, double, long double
	decimal floating types: _Decimal32, _Decimal64, _Decimal128
	interchange floating types: _FloatN, _DecimalN
	extended floating types: _FloatNx, _DecimalNx

A modification that calls out IEC 60559 types might be

real floating types
	standard floating types: float, double, long double
	IEC 60559 floating types
		decimal floating types: _Decimal32, _Decimal64, _Decimal128
		IEC 60559 interchange floating types: _FloatN, _DecimalN
		IEC 60559 extended floating types: _FloatNx, _DecimalNx

where the IEC 60559 qualified types are introduced in Part 3.

Your thoughts?

-Jim





More information about the Cfp-interest mailing list