[libcxx-commits] [PATCH] D56398: Add new EINTEGRITY errno

Dimitry Andric via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Nov 13 11:28:01 PST 2019


dim added a subscriber: howard.hinnant.
dim added a comment.

In D56398#1744265 <https://reviews.llvm.org/D56398#1744265>, @ldionne wrote:

> Sorry if this is a basic question, but why are we trying to provide `EINTEGRITY` in libc++'s `errno.h` header at all? I don't see this being part of the C or C++ Standard.


That is a very good question, this review has been sitting for so long that the reason also slipped my mind. :)  @emaste any idea?  As far as I remember, this "new" errno value was added by Kirk McKusick after he added integrity checks to the BSD FFS file system, and I suspect he just went through all headers that referred to file system specific errno values to extend them.

That said, doesn't libc++'s errno.h also provide lots of errno values that are not standardized anywhere? (I'm not even sure if there *is* a standardized list of "must support" errno values...)

> If systems want to provide this macro, they can in their own `errno.h` header -- that's why we have a `#include_next`. I'd like to understand that before this proceeds. I do love removing the `ELAST` logic if we don't need it, though.

Yes, I could not really figure out the rationale for the `ELAST` logic was there, since it was there from the start. Maybe @howard.hinnant remembers.


Repository:
  rCXX libc++

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D56398/new/

https://reviews.llvm.org/D56398





More information about the libcxx-commits mailing list