[all-commits] [llvm/llvm-project] fbc425: [clang-tidy] Teach `modernize-type-traits` about m...

Victor Chernyakin via All-commits all-commits at lists.llvm.org
Tue Jul 8 22:22:01 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: fbc4255ffcb8412a098926c7fc1ede823d6fb0e5
      https://github.com/llvm/llvm-project/commit/fbc4255ffcb8412a098926c7fc1ede823d6fb0e5
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2025-07-09 (Wed, 09 Jul 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/type-traits.rst
    M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp

  Log Message:
  -----------
  [clang-tidy] Teach `modernize-type-traits` about more type traits (#147074)

These new traits come from various standard versions:

C++14:

 - `tuple_element_t`

C++17:

- `is_placeholder_v`
- `is_bind_expression_v`
- `ratio_equal_v`
- `ratio_not_equal_v`
- `ratio_less_v`
- `ratio_less_equal_v`
- `ratio_greater_v`
- `ratio_greater_equal_v`
- `is_error_code_enum_v`
- `is_error_condition_enum_v`
- `is_execution_policy_v`
- `tuple_size_v`
- `variant_size_v`
- `uses_allocator_v`
- `variant_alternative_t`

C++20:

  - `compare_three_way_result_t`
  - `common_comparison_category_t`
  - `unwrap_ref_decay_t`
  - `unwrap_reference_t`

C++23:

- `is_implicit_lifetime_v`

C++26:

- `is_nothrow_relocatable_v`
- `is_replaceable_v`
- `is_trivially_relocatable_v`
- `is_virtual_base_of_v`

This doesn't add `treat_as_floating_point_v` or `is_clock_v` because
they require more invasive changes; instead I've opened #147072 to track
them.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list