Чем хуже код, тем больше, ага.
CC>Потому использовать исключения для обработки обычных ошибок это геморрой.
В кривых системах, само собой.
CC>Никто не гарантирует что то, что твоя функция вызывает, не вернёт ошибку.
Не вернет. А если вернет (через исключение), то там весь нужный контекст. Расширять контекст нужно только там, где, блин, нужно его расширять (потому что поведение недетерминированное).