size_t to int. This is in recognition of the fact that these two
classes are primarily used for fortran<-->c convertsion of various
entities (attributes, MPI objects), and MPI defines that an int must
be used to hold MPI fortran handles. Hence, why use size_t
internally? See the comment in src/class/ompi_pointer_array.h for a
better description.
Mixed in a few attribute fixes in this commit as well.
This commit, therefore:
- converts the indexing from size_t to int
- changes all locations in the code that I could find that used size_t
as the interface to ompi_bitmap_t or ompi_pointer_array_t
- convert to use OMPI_FINT_2_INT / OMPI_INT_2_FINT macros in various
src/mpi/c/*f2c.c and src/mpi/c/*c2f.c files
- check the return code of ompi_comm_free() to ensure that everything
worked properly before returning MPI_SUCCESS
- unified all src/mpi/c/*f2c.c functions (i.e., they all do the same
thing)
- tie up some loose ends w.r.t. MPI_Request handling in fortran; set
the req_f_to_c_index to MPI_UNDEFINED when it does not have a fortran
index
- still need to add a configure test to find OMPI_FORTRAN_HANDLE_MAX
for ompi_bitmap.c and ompi_pointer_array.c (hard-wired to INT_MAX
right now)
- re-organized, consolidated, and unified some ompi_pointer_array.c
code -- fixed a few minor bugs w.r.t. lowest_free (could have left
some unintentional holes in the array)
This commit was SVN r3302.
thingy needs to go on the *declaration*, not the *definition*. Well,
at least this was all done en masse and via an automated mechanism, so
total time wasted was only about 15 minutes...
This commit was SVN r2858.
ompi_pointer_array_get_item() function instead of accessing the array
directly. This is because accessing the array directly in
multi-threaded situations is unsafe (someone else may be writing to
the array, the array may get moved out from under you via realloc(),
etc.).
This commit was SVN r2634.
- the f2c functions should return the corresponding *_NULL functions
and not invoke an MPI exception if an invalid fortran handle is
passed
- the error check should be outside MPI_PARAM_CHECK -- MPI defines the
behavior of when an invalid fortran handle is passed; it is not
dependant upon whether we are checking parameters or not
This commit was SVN r2140.
somewhat tied together and I'd rather have a consistent commit rather
than several smaller commits that individually break the tree:
- first cut of src/file/file.c: MPI_File handling. More to come here.
- tweaked MPI_Info handling a bit: cause MPI_Info_f2c to invoke error
handler if provided index is out of range (vs. returing
MPI_INFO_NULL without invoking an error handler)
- moved general MPI MCA params off into their own .h and .c file (so
that ompi_info can call it and therefore display MPI MCA params)
- first [abbreviated] cut of src/mca/io/base/* -- much more to come
here; stripped down to basics for this commit
- filled in a small number of MPI_File* functions for testing purposes
- updated a bunch of doxygen docs
--> Unresolved questions about MPI_ERRORS_RETURN, MPI_ERRORS_ABORT,
and MPI::ERRORS_THROW_EXCEPTIONS because of vagueness in MPI
standard -- Edgar and I are discussing what to do here
--> Unresolved questions about what to do in a case like this:
MPI_File_open(..., &file);
MPI_File_close(&file);
MPI_File_read(..., &file);
because MPI-2:9.7 says that the default error handler on MPI_File
handles is MPI_ERRORS_RETURN -- we can't even print a warning
here! This certainly violates the Law of Least Astonishment for
MPI users (who certainly expect MPI functions that fail to
complain loudly and to abort by default).
This commit was SVN r2136.
- Mark those who are still not yet implemented:
- return an error
- have a grep-able string indicating that they are not yet
implemented
- ensure every function checks for init/finalize
- add more error checking to a bunch of functions
- unify the error checking -- it reflected about 3 different
[previous] error checking styles and MPI exception invocation styles
This commit was SVN r1817.