https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94901
Bug ID: 94901 Summary: [10 Regression] <type_traits> uses BADNAME _T Product: gcc Version: 10.0 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- GCC 10 adds: template <typename _T, size_t = sizeof(_T)> constexpr true_type __is_complete_or_unbounded(__type_identity<_T>) { return {}; } But _T is a documented BADNAME and needs to be replaced with _Tp. This was reported on IRC, I don't have a full reproducer, but it's clearly a bug.