C++

Jeff Squyres (jsquyres@lsc.nd.edu)
Mon, 23 Jun 1997 11:31:06 -0500 (EST)

In doing our proof-of-concept C++ implementation (layered on C), we found
3 minor errors:

1. Does comparing MPI::Status object make sense? It would be easier if we
could just say that you can't do it, because the implementation may hide
more than just MPI_TAG, MPI_SOURCE, and MPI_ERROR. Unless there's strong
feeling otherwise, I'd like to add a sentence or two in the bindings
chapter that says that == and != are not defined on MPI::Status objects.
OR, if people strongly want it, I'd like to say that == and != *only*
compare the three "public" pieces of information.

Either way, something needs to be said.

2. The name Comm::Get_topo should change -- it is virtual, and compilers
generate warnings that it is masked by Graphcomm::Get_topo. So the name
Comm::Get_topo should change to Comm::Get_topo_type.

3. For similar reasons, Cartcomm::Get_rank should also change (it masks
the virutal function Comm::Get_rank). It should change to
Cartcomm::Get_cart_rank.

(Aside -- Steve: do you want to make these changes, or do you want me to
do it?)

{+} Jeff Squyres
{+} squyres@cse.nd.edu
{+} Perpetual Obsessive Notre Dame Student Craving Utter Madness
{+} "I came to ND for 4 years and ended up staying for a decade"