cpp/types/bad cast

An exception of this type is thrown when a to a reference type fails the run-time check (e.g. because the types are not related by inheritance), and also from std if the requested facet does not exist in the locale.