iix>Если все исключения унаследованны от разных классов то как же отлавливать все это добро сгенерированное d.t(a). Не легче ли все исключени поймать iix>и преобразовать в свое (error_d_t_s)?
Практически во всех более менее современных языках — исключения наследуются от одного класса. В случае C++ все несколько сложнее. Лучше всегда подходить к вопросу конкретно в каждом случае, и думать — зачем ты перехватываешь, и что ты хочешь получить на том или ином этапе. Иногда в C++ я специально выпускал исключения наверх, чтобы можно было ватсоном снять стек.