http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54812
--- Comment #6 from Daniel Krügler <daniel.kruegler at googlemail dot com> 2012-10-06 08:11:48 UTC --- (In reply to comment #5) I double-checked whether this might be related to http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html#1507 from a different perspective, but I'm pretty sure it isn't. 12.4 p11 seems very clear that the destructor would be called implicitly here and that access checking happens.