NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: standards/51044 (NetBSD cdefs.h defines __func__ incompatibly with C99)

On Aug 10,  2:48pm, Bruce Lilly wrote:
} On Wed, Aug 10, 2016 at 2:17 PM,  <> wrote:
} > You are seriously complaining about not conforming to C99 when you select
} > C89?
} No, I am complaining that the NetBSD headers trample on __func__ provided
} by compilers, and redefine it as __PRETTY_FUNCTION__ instead of the
} compiler's definition, based on a __GNUC_PREREQ__ macro, and that

     So, by defining that macro, you're claiming to be GNUC, or at
least compatible...

} results in different behavior when compiling with clang on NetBSD only
} (Linux, illumos headers do not trample on __func__).  gcc happens to
} define the non-standard __PRETTY_FUNCTION__ as equivalent to
} __FUNCTION__, whereas clang does not.  As __PRETTY_FUNCTION__

...but you're not actually compatible.  That's your problem.

} is non-standard, and differs among gcc-compatible compilers it should
} probably not be used to redefine __func__, nor is it useful in assertion
} messages, for the same reasons of incompatibility.
}-- End of excerpt from Bruce Lilly

Home | Main Index | Thread Index | Old Index