llvm/llvm-project

[Clang] Explain satisfaction failure for more type traits

Open

#141.911 geöffnet am 29. Mai 2025

Auf GitHub ansehen
 (20 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)C++ (10.782 Forks)batch import
clang:diagnosticsclang:frontendgood first issue

Repository-Metriken

Stars
 (26.378 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 1T 2h) (1.000 gemergte PRs in 30 T)

Beschreibung

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.

Contributor Guide