I'm probably missing something.

If I will use the "foo" library call if it is present and functional, and
autoconf knows that:

- some systems provide a fully functional foo()
- some systems provide a functional foo() that has the bar bug
- some systems provide a functional foo() that has the baz bug
- some systems provide a nonfunctional foo()
- some systems do not provide foo()

I would expect that in the last 2 cases HAVE_FOO would be undefined.

In the partial cases I can see HAVE_FOO plus HAVE_FOO_BAR_BUG or
HAVE_FOO_BAZ_BUG .

If the system provides a nonfunctional foo() I can see defining
HAVE_BROKEN_FOO, because I have seen systems that have broken loaders and
one simply cannot provide a replacement function.  Granted, I haven't come
across many of these systems in recent years.

The number of cases where foo() is provided and also totally broken is tiny
when compared with the number of times a function is provided and it works.

Why, then, provide a HAVE_WORKING_FOO when HAVE_BROKEN_FOO seems so much
more appropriate?

H

Reply via email to