The code I want to execute in my exception handler may itself throw an exception.
Is the follow structure legal C++? If yes, are there any downsides?
try
{
// ...
}
catch (const E&)
{
try
{
// ...
}
catch (const F&)
{
}
}
No, there are no downsides. That’s the way you should do it.