Re: Machine epsilon: conclusion
- From: Harald van Dijk <truedfx@xxxxxxxxx>
- Date: Sat, 30 Jun 2007 22:41:53 +0200
Richard Heathfield wrote:
Harald van D?k said:
Richard Heathfield wrote:
Richard Tobin said:
In article <ltSdnT3DNLGY9xvbnZ2dnUVZ8tHinZ2d@xxxxxx>,
Richard Heathfield <rjh@xxxxxxxxxxxxxxx> wrote:
#define QFLT_EPSILON 1.09003771904865842969737513593110651 ...
#E-106
You have the same bug as last time. No standard-conforming
implementation may define QFLT_EPSILON in the standard header
<float.h>, as I pointed out to you earlier this week.
Jacon already described how to suppress this definition if required.
Either it's a standard header (as he claims), or it isn't. If it's a
standard header, it cannot contain QFLT_EPSILON. If it contains
QFLT_EPSILON, it can't be a standard header.
The C99 rationale section 7.1.2 gives an example of how it can, and
there is nothing whatsoever in the standard that contradicts it.
I think you're confusing the physical implementation of the header (as
some kind of file) with the concept of "standard header", the
implementation of which is neither here nor there, as the Standard
makes very clear. A standard header *MUST NOT* contain a definition of
QFLT_EPSILON. How the implementation deals with this is up to it.
I'll admit this can be interpreted differently, but I believe <float.h> is a
standard header (using the standard's definition), regardless of whether
the compiler is invoked in a conforming mode. The effect of a standard
header on a nonstandard implementation is outside of the scope of the
standard, but that doesn't make the header nonstandard.
.
- References:
- Machine epsilon: conclusion
- From: jacob navia
- Re: Machine epsilon: conclusion
- From: Richard Heathfield
- Re: Machine epsilon: conclusion
- From: Richard Tobin
- Re: Machine epsilon: conclusion
- From: Richard Heathfield
- Re: Machine epsilon: conclusion
- From: Harald van Dijk
- Re: Machine epsilon: conclusion
- From: Richard Heathfield
- Machine epsilon: conclusion
- Prev by Date: Re: Machine epsilon: conclusion
- Next by Date: Re: Struct assignment
- Previous by thread: Re: Machine epsilon: conclusion
- Next by thread: Re: Machine epsilon: conclusion
- Index(es):
Relevant Pages
|