`core.stdcpp.new_.cpp_delete(T)(T instance) if (is(T == class))` can never compile for any T with D linkage because it is annotated with @nogc and object.Object.~this() is not @nogc.
@n8sh created dlang/druntime pull request #3284 "core.stdcpp.new_.cpp_delete unnecessarily requires destruction to be @nogc" fixing this issue: - Fix Issue 21417 - core.stdcpp.new_.cpp_delete unnecessarily requires destruction to be @nogc https://github.com/dlang/druntime/pull/3284
dlang/druntime pull request #3284 "core.stdcpp.new_.cpp_delete unnecessarily requires destruction to be @nogc" was merged into stable: - 1d4a1dd61f2e5c5ff0965a9c222681dfaff2ed6d by Nathan Sashihara: Fix Issue 21417 - core.stdcpp.new_.cpp_delete unnecessarily requires destruction to be `@nogc` https://github.com/dlang/druntime/pull/3284