Few years ago I wrote an article that explains a way to replace the chained exceptions in the C++ source code, maintaining the same level of information captured by the chained exceptions.
You can read it on DDJ online: “Unchaining Chained Exceptions in C++”
PS: now I would implement that library in a different way.