Creates an invalid/null communicator object that can be used for initialization or to represent absence of a communicator.
function create_null_comm() result(comm) !! Creates an invalid/null communicator object that can be used !! for initialization or to represent absence of a communicator. type(comm_t) :: comm ! Explicitly initialize to null/invalid state comm%m_comm = MPI_COMM_NULL comm%m_rank = -1 comm%m_size = -1 comm%is_valid = .false. end function create_null_comm