This is the mail archive of the
mailing list for the GCC project.
Re: Patch for PR 14635 (regression: nan not in C90)
- From: Roger Sayle <roger at eyesopen dot com>
- To: "Joseph S. Myers" <jsm at polyomino dot org dot uk>
- Cc: Richard Henderson <rth at redhat dot com>, <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 19 Mar 2004 08:08:52 -0700 (MST)
- Subject: Re: Patch for PR 14635 (regression: nan not in C90)
On Fri, 19 Mar 2004, Joseph S. Myers wrote:
> I don't see this "called_as_builtin" on mainline.
Sorry, my mistake. Its called "CALLED_AS_BUILT_IN" and is the macro
used in builtins.c to differentiate "foo" from "__builtin_foo" when
both forms of a built-in are predeclared.
My apologies also for the confusion with whether this is a middle-end
vs. front-end problem. Clearly if the middle-end can't constant fold
an expression, the front-end can't have a problem, or more precisely
the front-end problem is latent. Adding support for folding nan, atan
or fabs just exposes the front-end's incorrect coding assumptions.
Its even made more problematic because fold can introduce calls to
built-in functions that didn't occur in the original tree. For example,
for min, max and fabs. So theoretically, it may be possible that
front-ends may also report "false negative" errors, in addition to
accepting "false positives".