[Mpi-forum] how to get MPI::Exception behavior from C bindings?

Jeff Hammond jhammond at alcf.anl.gov
Tue Nov 1 16:18:49 CDT 2011


Can someone explain how one can migrate (backwards) from the C++ to
the C bindings if they currently use MPI::Exception in a try-catch
block like this:

===================================
        try {
            ((ThreadBase*)(self))->run();
        }
        catch (const MPI::Exception& e) {
            error("caught an MPI exception");
        }
===================================

This is taken from MADNESS, btw.

I think it is only fair for those who want to kill the C++ bindings to
provide a clear description of how this will not break existing codes
that use C++ bindings.  Clearly, many things, e.g. MPI::BYTE ->
MPI_BYTE, are trivial, but I see error handling as being fundamentally
nontrivial.

Thanks,

Jeff

-- 
Jeff Hammond
Argonne Leadership Computing Facility
University of Chicago Computation Institute
jhammond at alcf.anl.gov / (630) 252-5381
http://www.linkedin.com/in/jeffhammond
https://wiki.alcf.anl.gov/index.php/User:Jhammond



More information about the mpi-forum mailing list