Jeff Squyres wrote: > On Feb 23, 2011, at 9:48 AM, Tim Prince wrote: > >>> I agree with your logic, but the problem is where the code containing >>> the error is coming from - it's comping from a header files that's a >>> part of Open MPI, which makes me think this is a cmpiler error, since >>> I'm sure there are plenty of people using the same header file. in their >>> code. >>> >> Are you certain that they all find it necessary to re-define identifiers >> from that header file, rather than picking parameter names which don't >> conflict? > > Without seeing the code, it sounds like Tim might be right: someone is trying > to re-define the MPI_STATUS_SIZE parameter that is being defined by OMPI's > mpif-config.h header file. Regardless of include file/initialization > ordering (i.e., regardless of whether mpif-config.h is the first or Nth > entity to try to set this parameter), user code should never set this > parameter value. > > Or any symbol that begins with MPI_, for that matter. The entire "MPI_" > namespace is reserved for MPI. >
I understand that, and I checked the code to make sure the programmer didn't do anything stupid like that. The entire code is only a few hundred lines in two different files. In the entire program, there is only 1 include statement: include 'mpif.h' and MPI_STATUS_SIZE appears only once: integer ierr,istatus(MPI_STATUS_SIZE) I have limited knowledge of Fortran programming, but based on this, I don't see how MPI_STATUS_SIZE could be getting overwritten. -- Prentice