J
jacob navia
Skarmander a écrit :
[snip]
[Jacob navia wrote]
Excuse me but "Future directions" means what it says: the directions
the comitee wants to follow in future issues of the standard.
Besides, in the paragraph J: "Common extensions" we have:
< quote >
J.5.6 Other arithmetic types
1 Additional arithmetic types, such as _ _int128 or double double, and
their appropriate conversions are defined (6.2.5, 6.3.1). Additional
floating types may have more range or precision than long double, may be
used for evaluating expressions of other floating types, and may be used
to define float_t or double_t.
< end quote >
This means that qfloat is included in the "common extensions" feature of
the standard, that explicitely mentions things that are not standard
but sufficiently common to be OKed, even if this is not normative.
All this extensions can be disabled when invoking the compiler with
-ansic
flag.
[snip]
[Jacob navia wrote]
[Skarmander wrote]A more precise floating type, besides, is mentioned in the C standard.
In the C standard it is specified in 6.11:
< quote >
6.11 Future language directions
6.11.1 Floating types
1 Future standardization may include additional floating-point types,
including those with greater range, precision, or both than long double.
< end quote >
Lcc-win32 follows this directive. The floating point type "qfloat",
conforms precisely to the usage of other floating point types.
Whoa there. This is *not* a directive, and not directed at you in any
case. You are indeed free to implement nonstandard floating point types,
but that is not a result of the section you quoted. That merely says
that the standards committee may add more types in the future. That
implementations may provide extensions so long as this doesn't affect
conforming programs is mentioned elsewhere.
Excuse me but "Future directions" means what it says: the directions
the comitee wants to follow in future issues of the standard.
Besides, in the paragraph J: "Common extensions" we have:
< quote >
J.5.6 Other arithmetic types
1 Additional arithmetic types, such as _ _int128 or double double, and
their appropriate conversions are defined (6.2.5, 6.3.1). Additional
floating types may have more range or precision than long double, may be
used for evaluating expressions of other floating types, and may be used
to define float_t or double_t.
< end quote >
This means that qfloat is included in the "common extensions" feature of
the standard, that explicitely mentions things that are not standard
but sufficiently common to be OKed, even if this is not normative.
All this extensions can be disabled when invoking the compiler with
-ansic
flag.