[libcxx-commits] [libcxx] [libc++] Deprecate `is_pod(_v)` since C++20 (PR #129471)
A. Jiang via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Mar 5 18:49:45 PST 2025
================
@@ -95,8 +95,8 @@ namespace std
template <class T> struct is_unbounded_array; // C++20
// Member introspection:
- template <class T> struct is_pod;
template <class T> struct is_trivial;
+ template <class T> struct is_pod; // Deprecated in C++20
----------------
frederick-vs-ja wrote:
I decided to do the following drive-by changes:
- aligning all version comments to line 65,
- using `// since C++` instead of `// C++`, in lowercase as used in most version comments,
- changing the comments for `bool_constant` to `// since C++17` as it's a C++17 feature,
- changing the class-key of `result_of` to `struct`, which follows [N4659 [depr.meta.types]](https://timsong-cpp.github.io/cppwp/n4659/depr.meta.types) and the actual usage in libc++,
- consistently using `class` to introduce type template parameters,
- consistently using `inline constexpr` for variable templates,
- moving the comments for `is_nothrow_convertible_v` to the part for variable templates, and
- removing duplicated comments for `true_type` and `false_type`.
I found that we only use `deprecated in`/`removed in` (not "since"), so I didn't change these parts.
https://github.com/llvm/llvm-project/pull/129471
More information about the libcxx-commits
mailing list