[libcxx-commits] [PATCH] D132284: [libc++] Reduces the number of transitive includes.

Adrian Vogelsgesang via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Aug 25 14:49:45 PDT 2022


avogelsgesang added inline comments.


================
Comment at: libcxx/docs/DesignDocs/HeaderRemovalPolicy.rst:30
+To ease the removal of transitive includes in libc++, libc++ will remove
+unnecessary transitive includes in newly supported C++ versions. This means
+that users will have to fix their missing includes in order to upgrade to a
----------------
when do we consider a C++ version as "supported"?
As soon as we compile under that -std=c++XX flag without errors?
As soon as clang flips from -std=c++2b to -std=c++23?
As soon as we implemented all papers from that C++ version?

E.g., would we currently consider C++20 to be supported, despite not having implemented all papers, yet? If our bar is "some papers are implemented", which papers are those? Would we already consider C++23 as supported, given that we have implemented some of the C++23 papers?


================
Comment at: libcxx/docs/DesignDocs/HeaderRemovalPolicy.rst:71
+vendors. When a vendor updates libc++ several of their upstream packages might
+fail to compile, forcing them to fix these packages or file bug at their
+upstream packages. Usually upgrading software to a new language standard is
----------------



Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D132284



More information about the libcxx-commits mailing list