Re: Machine epsilon: conclusion



On Sat, 30 Jun 2007 19:53:07 +0000, in comp.lang.c , Richard
Heathfield <rjh@xxxxxxxxxxxxxxx> 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.

This is untrue. A header can contain any extraneous material it likes,
as long as *when invoked in conforming mode* the compiler does not
pick up this material.

In any events your argument is specious: Pretty much every compiler
writer includes nonstandard stuff in their headers, and protects it
via conditionals etc.
--
Mark McIntyre

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it."
--Brian Kernighan
.



Relevant Pages

  • Re: Machine epsilon: conclusion
    ... Richard Heathfield wrote: ... implementation may define QFLT_EPSILON in the standard header ... Jacon already described how to suppress this definition if required. ... in some alphabets" - X3.4, ...
    (comp.lang.c)
  • Re: Machine epsilon: conclusion
    ... Richard Tobin said: ... Jacon already described how to suppress this definition if required. ... Either it's a standard header, ... Richard Heathfield ...
    (comp.lang.c)
  • Re: Machine epsilon: conclusion
    ... Richard Tobin said: ... It's a standard header when -ansic is specified, and a non-standard ... Richard Heathfield ...
    (comp.lang.c)
  • Re: Machine epsilon: conclusion
    ... Richard Heathfield wrote: ... implementation may define QFLT_EPSILON in the standard header ... Jacon already described how to suppress this definition if required. ... forbid implementation-defined types. ...
    (comp.lang.c)
  • Re: Machine epsilon: conclusion
    ... Richard Heathfield wrote: ... // qfloat epsilon truncated so that it fits in this page... ... implementation may define QFLT_EPSILON in the standard header, as I pointed out to you earlier this week. ...
    (comp.lang.c)