Merge pull request #579 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_integration to vol_integration
* commit '3a52792870b85ce94ab70e73216b035914dba0e0': (55 commits)
* Added missing H5VL package init/term/trace code to H5.c and H5private.h. * HD and other cleanup in H5.c. * Added dummy VOL class and getter to h5test code. * Yanked H5I_REFERENCE ID smoke check from test_misc19(). If you run ./testhdf5 -o misc this test failed due to no previous H5R code that would init the package. * Added H5I_VOL ID incr/decr checks to test_misc19() in tmisc.c.
Added H5E_VOL to Java constants.
Added H5I_VOL to C++ Doxygen comments and Java/JNI code.
More minor whitespace cleanup
Fixed a minor comment typo in H5R.c
* Reverted removal of H5I_REFERENCE to avoid breaking binary compatibility. * Added a quick H5I_REFERENCE smoke check to test_misc19() in tmisc.c.
Added missing free() call to test_misc19().
Purged the unused H5I_REFERENCE from the library.
Added a test for VFD IDs to testhdf5.
* Fixed a bug in H5VLregister(). * Added code to H5VLclose(). * Added a fake VOL interface to the vol.c unit test. This currently doesn't work due to changes being needed in the H5I package (in progress).
Added the H5VLis_registered() code.
Removed extraneous whitespece
Revert "Partial removal of NDEBUG ifdefs from the library."
Partial removal of NDEBUG ifdefs from the library.
Removed compiler flag cleanup since Solaris chokes on it.
Fix for HDFFV-10160 Modifications to fix the assertion/abort failure when the application does not close the file.
Updated MANIFEST
* Added a null_VOL plugin to test/ that does absolutely nothing. My intent is for this VOL plugin to be used to test registration (currently Autotools-only). * Added a couple of things to the plugin code to support the null VOL plugin. * Changed the VOL struct value field to an unsigned from an H5VL_class_value_t enum. It's not clear how that enumeration would be managed, in practice, and a max value of 128 is way too small. * Added H5VLpublic.h to hdf5.h and tidied the comments.
Added guts to H5VLunregister() API call.
Fixed a bug in autotools Fortran processing where a test for the presence of a C long double type always returned true.
...