On Mon, 16 Aug 2004, Jeffrey D. Oldham wrote:
Richard Guenther wrote:
The following patch fixes an error and robustifies MPI request
handling.
Tested by having it in my local tree for a long time.
Ok?
Richard.
2004Aug16 Richard Guenther <address@hidden>
* src/Threads/IterateSchedulers/SerialAsync.h: Guard against
LAM MPI automatically dragging in C++ support, fix message
polling return value check, complete messages first, remove
unused variable.
What problems does mpicxx.h cause? I am both curious and want to know
so I can approve the patch.
The problem is incompatible C++ ABIs for the compiler used to build LAM
(gcc 2.95) and the compiler I try to build POOMA with (gcc 3.4), so
linking will fail either with ABI problems or missing symbols if not
linking the C++ support libraries (as the header somehow manages to pull
symbols regardless of not using any of the C++ support). As we don't use
any of the MPI C++ API we don't need its declarations either. Other
MPI implementations require you to explicitly pull mpicxx.h, but LAM aims
to be clever in just doing
#ifdef __cplusplus
#include <mpicxx.h>
#endif
which I think is a bug in LAM, but can be easily worked around by us.
But I can leave this chunk of the patch out, if you like.