llvm-project
91354fb1 - [C++20] Destroying delete can cause a type to be noexcept when deleting (#118687)

Commit
1 year ago
[C++20] Destroying delete can cause a type to be noexcept when deleting (#118687) Given a `noexcept` operator with an operand that calls `delete`, Clang was not considering whether the selected `operator delete` function was a destroying delete or not when inspecting whether the deleted object type has a throwing destructor. Thus, the operator would return `false` for a type with a potentially throwing destructor even though that destructor would not be called due to the destroying delete. Clang now takes the kind of delete operator into consideration. Fixes #118660
Author
Parents
Loading