[concept.destructible] (original) (raw)
18 Concepts library [concepts]
18.4 Language-related concepts [concepts.lang]
18.4.10 Concept destructible [concept.destructible]
The destructible concept specifies properties of all types, instances of which can be destroyed at the end of their lifetime, or reference types.
template<class T> concept [destructible](#concept:destructible "18.4.10 Concept destructible [concept.destructible]") = [is_Ânothrow_Âdestructible_Âv](meta.type.synop#lib:is%5Fnothrow%5Fdestructible%5Fv "20.15.3 Header <type_Âtraits> synopsis [meta.type.synop]")<T>;
[Note 1:
Unlike the Cpp17Destructible requirements (Table 32), this concept forbids destructors that are potentially throwing, even if a particular invocation of the destructor does not actually throw.
— _end note_]