[PATCH] D61165: Fix a crash where a [[no_destroy]] destructor was not emitted in an array

Erik Pilkington via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri May 3 17:06:41 PDT 2019


erik.pilkington added a comment.

In D61165#1490608 <https://reviews.llvm.org/D61165#1490608>, @rjmccall wrote:

> The flip side of that argument is that (1) there aren't very many users right now and (2) it's much easier to start conservative and then weaken the rule than it will be to strengthen it later.  It really isn't acceptable to just turn off access/use-checking for the destructor, so if we get trapped by the choice we make here, we'll end up having to either leak or call `std::terminate`.


I agree that'd we'd be much better off if we had to change our minds and relax the requirement here. Though we haven't been pushing on this, I would disagree with the point that there aren't many users, this was included in an open source release, an Xcode release, and there was a wg21 paper about it. That paper is currently the first result on google for the search "disabling static destructors". Hedging our bets here is an option, but I'd really like to avoid it if we can.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D61165/new/

https://reviews.llvm.org/D61165





More information about the cfe-commits mailing list