This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 115e. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.

2024-11-11


2880. Accessibility check for destructor of incomplete class type

Section: 7.6.2.9  [expr.delete]     Status: accepted     Submitter: Alisdair Meredith     Date: 2024-03-07

[Resolved by paper P3144R2, approved at the June, 2024 meeting.]

Subclause 7.6.2.9 [expr.delete] paragraph 6 specifies:

... The destructor shall be accessible from the point where the delete-expression appears. ...

This check cannot be performed in case the operand of the delete-expression is a pointer to incomplete type.

Possible resolution:

Change in 7.6.2.9 [expr.delete] paragraph 6 as follows:

... The Unless the object being deleted has incomplete class type, the destructor shall be accessible from the point where the delete-expression appears. ...

Additional notes (September, 2024)

Paper P3144R2 (Deleting a Pointer to an Incomplete Type Should be Ill-formed), approved in June, 2024 made the deletion of pointer-to-incomplete class types ill-formed, thus the situation cannot appear anymore.