Made try catch block smaller

exception_ptr has a no-throw copy and move constructor
so does not need to be surrounded by try catch