Index: chap-inquiry/inquiry.tex =================================================================== --- chap-inquiry/inquiry.tex (revision 118) +++ chap-inquiry/inquiry.tex (working copy) @@ -514,11 +514,10 @@ handlers with objects, and to test which error handler is associated with an object. \mpiiidotiMergeNEWforSINGLEendII% MPI-2.1 round-two - end of modification -\mpiiidotiMergeNEWforSINGLEbegin% MPI-2.1 round-two - begin of text-move -On -\mpiiidotiMergeNEWforSINGLEendII% MPI-2.1 round-two - ongoing text-move -the other hand, there are, in C and C++, +\mpiiidotiMergeNEWforSINGLEbegin% MPI-2.1 round-two - begin of modification +C and C++ have distinct typedefs for user defined error handling callback +\mpiiidotiMergeNEWforSINGLEendII% MPI-2.1 round-two - ongoing modification functions that accept, respectively, communicator, file, and window arguments. \begchangefiniii @@ -662,11 +661,12 @@ \mpiiidotiMergeFromONEdotTHREEbegin% MPI-2.1 - take lines: MPI-1.1, Chap. 7, p.195 l.15 (MPI-2.0 p.32 l.32-37), File 1.3/inquiry.tex, lines 377-384 \begin{users} -Users are discouraged from using a Fortran \mpifunc{HANDLER\_FUNCTION} since the +Users are discouraged from using a Fortran +\mpiskipfunc{\{COMM,WIN,FILE\}\_ERRHANDLER\_FN} since the routine expects a variable number of arguments. Some Fortran systems may allow this but some may fail to give the correct result or compile/link this code. Thus, it will not, in general, be possible to -create portable code with a Fortran \mpifunc{HANDLER\_FUNCTION}. +create portable code with a Fortran \mpiskipfunc{\{COMM,WIN,FILE\}\_ERRHANDLER\_FN}. \end{users} \mpiiidotiMergeFromONEdotTHREEend% MPI-2.1 - end of take lines \mpiiidotiMergeFromTWOdotZERObegin% MPI-2.1 - take lines: MPI-2.0, Sect. 4.13.1, p.62 l.29 - p.62 l.31, File 2.0/misc-2.tex, lines 2858-2863 @@ -784,6 +784,9 @@ \mpicppemptybind{MPI::Win::Create\_errhandler(MPI::Win::Errhandler\_fn* function)}{static MPI::Errhandler} \endchangefiniii +\mpiiidotiMergeNEWforSINGLEbegin% MPI-2.1 round-two - begin of modification +Creates an error handler that can be attached to a window object. +\mpiiidotiMergeNEWforSINGLEendII% MPI-2.1 round-two - end of modification The user routine should be, in C, a function of type \constskip{MPI\_Win\_errhandler\_fn}, which is defined as @@ -859,6 +862,9 @@ \mpicppemptybind{MPI::File::Create\_errhandler(MPI::File::Errhandler\_fn* function)}{static MPI::Errhandler} \endchangefiniii +\mpiiidotiMergeNEWforSINGLEbegin% MPI-2.1 round-two - begin of modification +Creates an error handler that can be attached to a file object. +\mpiiidotiMergeNEWforSINGLEendII% MPI-2.1 round-two - end of modification The user routine should be, in C, a function of type \constskip{MPI\_File\_errhandler\_fn}, which is defined as @@ -944,7 +950,10 @@ deallocation and sets \mpiarg{errhandler} to \const{MPI\_ERRHANDLER\_NULL}. The error handler will be deallocated after -all communicators associated with it have been deallocated. +\mpiiidotiMergeNEWforSINGLEbegin% MPI-2.1 round-two - begin of modification +all objects associated with it (communicator, window, or file) +are deallocated. +\mpiiidotiMergeNEWforSINGLEendII% MPI-2.1 round-two - end of modification \begin{funcdef}{MPI\_ERROR\_STRING( errorcode, string, resultlen )}