[Mpi-forum] Reserved MPI_ prefix & namespace in C and Fortran

Rolf Rabenseifner rabenseifner at hlrs.de
Fri Aug 24 10:31:46 CDT 2012


Dear all,

Jeremiah detected a very old inconsistency in the MPI standard:

> On page 19 line 14, the restriction on use of MPI_* names should also
> apply to preprocessor macros, namespaces in C++, types, and other
> things.

In MPI-2.2, it was page 18, lines 15-16:

   "Programs must not declare variables or functions 
    with names beginning with the prefix MPI_."

Together with MPI-2.2 p4:26

   "Any correct MPI-2.1 program is a correct MPI-2.2 program."

and the new constant declaration on p258:17: MPI_DIST_GRAPH,
the implication is that the MPI standard is inconsistent.

The solution is very simple, an MPI-2 errata ticket changing
MPI-2.2, lines 15-16 into (addition marked with {...}):

   "Programs must not declare variables, functions, 
    { constants, macros, types, or namespaces }
    with names beginning with the prefix MPI_."

And for Fortran on p17:41-42 (addition marked with {...}):

   "Programs must not declare variables, parameters, functions, 
    { derived types, or abstract interfaces }
    with names beginning with the prefix MPI_.  

It should be a single reading+vote errata ticket, because it does
not change the standard, it only makes it obvious.
The reservation was in MPI-2.1 in fact already there through the
sentence
  
   "Any correct MPI-2.1 program is a correct MPI-2.2 program."

because nobody could foresee, which new things we will 
have added to MPI-2.2.

Details are in ticket
https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/343

And see markups ticket0.343 on page 11 in
https://svn.mpi-forum.org/trac/mpi-forum-web/attachment/ticket/343/ticket0.343-terms-2.pdf

I hope that there is a broad consensus 
to solve this inconsistency.

Best regards
Rolf


----- Original Message -----
> From: "Jeremiah Willcock" <jewillco at osl.iu.edu>
> To: mpi-comments at mpi-forum.org
> Sent: Sunday, August 19, 2012 2:13:41 AM
> Subject: [Mpi-comments] Comments on MPI 3.0 draft 2
> These are in reference to the draft at
> <URL:http://meetings.mpi-forum.org/mpi3.0_draft_2.pdf>. Thank you for
> considering them.
> 
> -- Jeremiah Willcock
... 
> On page 19 line 14, the restriction on use of MPI_* names should also
> apply to preprocessor macros, namespaces in C++, types, and other
> things.

-- 
Dr. Rolf Rabenseifner . . . . . . . . . .. email rabenseifner at hlrs.de
High Performance Computing Center (HLRS) . phone ++49(0)711/685-65530
University of Stuttgart . . . . . . . . .. fax ++49(0)711 / 685-65832
Head of Dpmt Parallel Computing . . . www.hlrs.de/people/rabenseifner
Nobelstr. 19, D-70550 Stuttgart, Germany . (Office: Allmandring 30)



More information about the mpi-forum mailing list