You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When working on https://github.com/mpi-forum/mpi-standard/pull/954 I noticed that not all symbols used in \mpi*{} macros (e.g., \mpidtype, \error, etc) have a corresponding main definition (e.g., \mpidtypemain, \errormain, etc). Some usages of \mpifunc appear to include argument lists (boo!) and there is at least one typo (MPI_FNIALIZE) somewhere in the text. Some of the symbols are no longer part of the standard (C++ types) or are a combination of several symbols (MPI_(I)RSEND), so they should probably be set using the corresponding skip macros. That way they do not end up in the index.
This cleanup is needed to ensure proper use of hyperref as otherwise some links will point to the first page of the document.
Here is the list of symbols reported by hyperref to be without a corresponding *main macro:
MPI::F_COMPLEX32
MPI::F_COMPLEX16
MPI::F_COMPLEX8
MPI::F_COMPLEX4
MPI::REAL16
MPI::INTEGER16
MPI::LONG_LONG
MPI::_LONG_LONG
MPI::LONG_DOUBLE_COMPLEX
MPI::DOUBLE_COMPLEX
MPI::COMPLEX
MPI::BOOL
MPI_(I)RSEND
MPI_T_cb_safety
MPI_T_source_order
MPI_F08_status*
MPI_Fint*
TYPE(MPI_Status), DIMENSION(*)
MPI_Status*
TYPE(MPI_Win)
MPI_Win
TYPE(MPI_Session)
MPI_Session
TYPE(MPI_File)
MPI_File
TYPE(MPI_Request)
TYPE(MPI_Group)
TYPE(MPI_Op)
MPI_Op
TYPE(MPI_Info)
TYPE(MPI_Datatype)
TYPE(MPI_Errhandler)
MPI_Errhandler
MPI_INTEGER_KIND
MPI_COUNT_KIND
TYPE(MPI_Message)
MPI_Message
MPI_WIN_GET_ATTR(win, MPI_WIN_BASE, val,
MPI_COMM_GET_ATTR(MPI_COMM_WORLD, MPI_TAG_UB,0
MPI_F08_STATUSES_IGNORE
MPI_F08_STATUS_IGNORE
MPI_F_STATUSES_IGNORE
MPI_F_STATUS_IGNORE
MPI_F_SYNC_REG(buff)
MPI_F_SYNC_REG(bbbb)
MPI_F_SYNC_REG(buf)
MPI_Datatype
TYPE(MPI_Comm)
PMPI_ISEND
PMPI_WTIME
PMPI_WTICK
MPI_T_ENUM_NULL
PMPI_
MPI_OFFSET_KIND
MPI_FILE_NULL
MPI_TEST(request, flag, status)
MPI_WAIT(request, status)
MPI_CANCEL(request)
MPI_GREQUEST_COMPLETE(request)
MPI_REQUEST_FREE(request)
MPI_MODE_NOSUCCEED
MPI_MODE_NOPUT
MPI_MODE_NOSTORE
MPI_MODE_NOCHECK
MPI_WIN_START($outgroup_i$, 04
MPI_WIN_POST($ingroup_i$,
MPI_MODE_NOPRECEDE
MPI_REPLACE
MPI_Aint *
MPI_WIN_SHARED_QUERY_CPTR
MPI_WIN_ALLOCATE_SHARED_CPTR
MPI_WIN_ALLOCATE_CPTR
MPI_NO_OP
MPI_UNIVERSE_SIZE
MPI_ERRHANDLER_C2F
MPI_ERRHANDLER_F2C
MPI_INFO_C2F
MPI_INFO_F2C
MPI_Comm
MPI_Group
MPI_INIT_THREAD()
MPI_THREAD_MULTIPLE
MPI_THREAD_SERIALIZED
MPI_THREAD_FUNNELED
MPI_THREAD_SINGLE
mpiexec
MPI_Info
MPI_LASTUSEDCODE
MPI_ERR_WIN
MPI_ERR_UNSUPPORTED_OPERATION
MPI_ERR_UNSUPPORTED_DATAREP
MPI_ERR_TRUNCATE
MPI_ERR_TOPOLOGY
MPI_ERR_TAG
MPI_ERR_SIZE
MPI_ERR_SESSION
MPI_ERR_ROOT
MPI_ERR_RMA_SYNC
MPI_ERR_RMA_SHARED
MPI_ERR_RMA_RANGE
MPI_ERR_RMA_FLAVOR
MPI_ERR_RMA_CONFLICT
MPI_ERR_RMA_ATTACH
MPI_ERR_REQUEST
MPI_ERR_READ_ONLY
MPI_ERR_RANK
MPI_ERR_QUOTA
MPI_ERR_OP
MPI_ERR_NOT_SAME
MPI_ERR_NO_SPACE
MPI_ERR_LOCKTYPE
MPI_ERR_IO
MPI_ERR_INFO
MPI_ERR_GROUP
MPI_ERR_FILE_EXISTS
MPI_ERR_FILE
MPI_ERR_ERRHANDLER
MPI_ERR_DISP
MPI_ERR_DIMS
MPI_ERR_COUNT
MPI_ERR_COMM
MPI_ERR_BUFFER
MPI_ERR_BAD_FILE
MPI_ERR_ASSERT
MPI_ERR_ARG
MPI_ERR_OTHER
MPI_ERR_UNKNOWN
MPI_ERR_INTERN
MPI_ALLOC_MEM_CPTR
MPI_COMM_SPLIT(comm, color, key, comm_gra
MPI_GRAPH_MAP(comm, nnodes, index, edges,
MPI_GRAPH_CREATE(comm, nnodes, index, edg
MPI_COMM_SPLIT(comm, color, key, comm_new
MPI_CART_SUB(comm, remain_dims, comm_new)
MPI_COMM_SPLIT(comm, color, key, comm_car
MPI_CART_MAP(comm, ndims, dims, periods,
MPI_CART_CREATE(comm, ndims, dims, period
MPI_DIMS_CREATE(7, 3, dims)
MPI_DIMS_CREATE(6, 3, dims)
MPI_DIMS_CREATE(7, 2, dims)
MPI_DIMS_CREATE(6, 2, dims)
MPI_MAX_OBJECT_NAME
MPI_ADDRESS_KIND
MPI_INFO_NULL
MPI_COMM_SPLIT(comm, color, key, newcomm
MPI_COMM_CREATE(comm, group, newcomm)
MPI_OP_NULL
MPI_INTEGER16
MPI_ALLGATHER(...)
MPI_RECV(recvbuf, recvcount$cdot $n, re
MPI_PACK(inbuf, incount, datatype, outbuf
MPI_PACK_SIZE(incount, datatype, comm, si
MPI_RECV(buf, count, datatype, dest, t
MPI_RECV(buf, count, datatype, source,04
MPI_SEND(buf, count, datatype, dest, t
MPI_SEND(buf, count, datatype, ...)
MPI_TYPE_CONTIGUOUS(2, type1, type2)
MPI_TYPE_CREATE_RESIZED(MPI_INT, -3, 9, t
MPI_TYPE_CREATE_STRUCT(count, B, D, T,04
MPI_TYPE_CREATE_HINDEXED(count, B, D, old
MPI_TYPE_INDEXED(count, B, D, oldtype,04
MPI_TYPE_VECTOR(count, blocklength, stride,
MPI_TYPE_INDEXED(2, B, D, oldtype, new
MPI_TYPE_VECTOR(1, count, n, oldtype,
MPI_TYPE_VECTOR(count, 1, 1, oldtype,
MPI_TYPE_CONTIGUOUS(count, oldtype, newtype
MPI_TYPE_VECTOR(3, 1, -2, oldtype, new
MPI_TYPE_VECTOR(2, 3, 4, oldtype, newt
MPI_RECV(buf, 1, datatype,$ .k
MPI_SEND(buf, 1, datatype,$ .k
MPI_FNIALIZE
MPI_Request
MPI_PACK_SIZE(count, datatype, comm, size
MPI_Status
TYPE(MPI_Status)
PMPI_AINT_DIFF
PMPI_AINT_ADD
MPI_Status_set_elements_c
MPI_Get_elements_c
MPI_Type_get_true_extent_c
MPI_Type_get_extent_c
MPI_Type_size_c
MPI_T_ERR_INVALID_ITEM
COMM_DELETE_ATTR_FUNCTION
DELETE_FUNCTION
COPY_FUNCTION
MPI_SUCCESS
COMM_COPY_ATTR_FUNCTION
MPI_ARGVS_NULL
MPI_ARGV_NULL
MPI_ERRCODES_IGNORE
MPI_COMM_WORLD
MPI_BOTTOM
MPI_UNDEFINED
Proposal
Chapter committees should check their chapter for missing *main macros for the symbols above and either define them or replace the used macros with the corresponding skip macros.
Problem
When working on https://github.com/mpi-forum/mpi-standard/pull/954 I noticed that not all symbols used in
\mpi*{}
macros (e.g.,\mpidtype
,\error
, etc) have a corresponding main definition (e.g.,\mpidtypemain
,\errormain
, etc). Some usages of\mpifunc
appear to include argument lists (boo!) and there is at least one typo (MPI_FNIALIZE
) somewhere in the text. Some of the symbols are no longer part of the standard (C++ types) or are a combination of several symbols (MPI_(I)RSEND
), so they should probably be set using the corresponding skip macros. That way they do not end up in the index.This cleanup is needed to ensure proper use of hyperref as otherwise some links will point to the first page of the document.
Here is the list of symbols reported by
hyperref
to be without a corresponding*main
macro:Proposal
Chapter committees should check their chapter for missing
*main
macros for the symbols above and either define them or replace the used macros with the corresponding skip macros.Changes to the Text
No changes to the semantics.
Impact on Implementations
None.
Impact on Users
Cleaner index, happier users.
References and Pull Requests
An attempt to extend the relevant macros to include hyperrefs: https://github.com/mpi-forum/mpi-standard/pull/954
The text was updated successfully, but these errors were encountered: