// If a destructor raises an exception during propagation, will the // code even compile? What happens in C++? struct E{}; struct C { ~C() { throw E(); } }; int main() { try { C x; throw E(); } catch( E ) { // do nothing } // catch } // main