llvm/llvm-project

[Clang] Explain satisfaction failure for more type traits

Ouverte

#141 911 ouverte le 29 mai 2025

 (20 commentaires) (0 réaction) (0 personne assignée)C++ (10 782 forks)batch import
clang:diagnosticsclang:frontendgood first issue

Métriques du dépôt

Stars
 (26 378 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

Last week, we added the scaffolding for clang to explain why a standard type trait is not satisfied - when used either in a static_assert or as atomic constraint, in Sema::DiagnoseTypeTraitDetails (#141238)

https://gcc.godbolt.org/z/xb7PcxzTx

So far, this has only been done for std::is_trivially_relocatable.

There are plenty of type traits that could benefit from additional diagnostics https://eel.is/c++draft/type.traits#meta.type.synop

I figure adding support for more type traits (one at a time!) could be a good first issue, and it's always nice to improve our diagnostics.

Guide contributeur