[libcxx-commits] [PATCH] D62428: [libcxx] Slightly improved policy for handling experimental features

Daphne Pfister via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Mon May 27 13:18:54 PDT 2019


daphnediane added a comment.

Not all package systems are good about cleaning up removed headers so the approach given by this patch could result in deprecated headers being left behind after an update instead of removed.

I wonder if something should be done with __has_include also as it seems like this could be a more generic problem for deprecated headers for more than just the TS experimental headers. Maybe have __has_include immediately check after finding a matching file if the same file exists with say a .rmh suffix evaluate to zero. Likewise if #include ( but not #include_next ) falls to find a file it could search for a the file with the suffix replaced with .rmh and if found print an error message about a deprecated header possibly including some content from the .rmh header with details. This would allow a header to be deprecated but still give useful messages if used  while not breaking __has_include. It would also help with cases where an updated library was installed where headers were removed and the old headers did not get rewritten with an installed package.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D62428





More information about the libcxx-commits mailing list