これは恐らくC++ Advent Calendar 2014の15日目です。 古来[要出典]より人々はいかに例外を投げた奴をトレースするかに命をかけてきた[要出典]。 投げられた例外自体や、そのメッセージを確認することはできるが、一体誰がその例外を投げたかという情報は一切乗らないからだ。 いっそのことsegfaultでもしてくれたほうがデバッガでスタックトレースを出力できる。 ある人は考えるだろう。 template <typename Base> struct exception_info : Base { explicit exception_info(const Base &base, const char *file, int line) : Base(base), file(file), line(line) {} virtual ~exception_info() noexce