any: destruction support to in_situ-as-dynamic values

This commit is contained in:
Michele Caini
2024-11-15 18:32:40 +01:00
parent e092ca72f7
commit bf66a6cf0e

View File

@@ -98,7 +98,7 @@ class basic_any {
break;
case operation::destroy:
if constexpr(in_situ<Type>) {
elem->~Type();
(value.mode == any_policy::embedded) ? elem->~Type() : (delete elem);
} else if constexpr(std::is_array_v<Type>) {
delete[] elem;
} else {