HDF5 invented its own exception scheme because it is in C.