aboutsummaryrefslogtreecommitdiff
path: root/clang/www
diff options
context:
space:
mode:
authorVlad Serebrennikov <serebrennikov.vladislav@gmail.com>2024-07-05 22:27:04 +0400
committerGitHub <noreply@github.com>2024-07-05 22:27:04 +0400
commit788731cdbd732180639988c9589adbe63bb28afa (patch)
tree09f805fc70bafbae3579889ba1f7f2180c8f8a0b /clang/www
parent0f1da49b4d854ce7c6572000da3fb6cb0a1245d2 (diff)
downloadllvm-788731cdbd732180639988c9589adbe63bb28afa.zip
llvm-788731cdbd732180639988c9589adbe63bb28afa.tar.gz
llvm-788731cdbd732180639988c9589adbe63bb28afa.tar.bz2
[clang] Implement P3144R2 "Deleting a Pointer to an Incomplete Type..." (#97733)
This patch implements (not yet published) [P3144R2](https://wiki.edg.com/pub/Wg21stlouis2024/StrawPolls/p3144r2.pdf) "Deleting a Pointer to an Incomplete Type Should be Ill-formed". Wording changes (not yet merged into the working draft) read: > 7.6.2.9 [expr.delete] Delete > If the object being deleted has incomplete class type at the point of deletion <del>and the complete class has a non-trivial destructor or a deallocation function, the behavior is undefined</del>, <ins>the program is ill-formed</ins>. We preserve status quo of emitting a warning when deleting a pointer to incomplete type up to, and including, C++23, but make it ill-formed since C++26. Same goes for deleting pointers to `void`, which has been allowed as an extension.
Diffstat (limited to 'clang/www')
-rwxr-xr-xclang/www/cxx_status.html2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/www/cxx_status.html b/clang/www/cxx_status.html
index f12ce38..0c013e6 100755
--- a/clang/www/cxx_status.html
+++ b/clang/www/cxx_status.html
@@ -213,7 +213,7 @@ C++23, informally referred to as C++26.</p>
<tr>
<td>Deleting a Pointer to an Incomplete Type Should be Ill-formed</td>
<td><a href="https://wg21.link/P3144">P3144R2</a></td>
- <td class="none" align="center">No</td>
+ <td class="Unreleased" align="center">Clang 19</td>
</tr>
<tr>
<td>Ordering of constraints involving fold expressions</td>