[PATCH] D8467: C++14: Disable sized deallocation by default due to ABI breakage

John McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 11 12:49:37 PST 2021

rjmccall added a comment.

In D8467#3125471 <https://reviews.llvm.org/D8467#3125471>, @rnk wrote:

> In D8467#3125386 <https://reviews.llvm.org/D8467#3125386>, @rjmccall wrote:
>> Conceptually, this is (and will always be) a platform decision.  On Apple platforms, we have a formalized concept of deployment target, where specific minimum OS versions support sized deallocation and others do not.  On most other platforms, this is much vaguer — basically down to what C++ libraries you've got installed — and probably has to be controlled by a flag.  Enabling that flag by default on any particular Linux distribution release is something I'm not sure we can do unconditionally.
> It is already a flag, `-fsized-deallocation`. On some level, whatever default we choose is just a guess about the C++ library support level. Clang tries to encode all kinds of Linux distro-specific knowledge, and it's often wrong anyway. After all that logic, there will be some default. I think at this point the feature should default to being enabled.

Okay.  I think that's fine for most platforms.  Apple would like this to only be enabled conditionally based on deployment target.




More information about the cfe-commits mailing list