Normalization changes that wouldn't otherwise be necessary if the VDS branch
wasn't coming in shortly.
Tested on:
MacOSX/64 10.10.5 (amazon) w/serial & parallel
(h5committest forthcoming)
Close FAPL for external link test, to fix infinite loop closing the library.
Tested on:
MacOSX/64 10.10.5 (amazon) w/serial
(too minor to require h5committest)
Refactor property list code to "deep copy" properties in the correct way,
retraining the rest of the library to copy & release things correctly. This
cleans up another batch of memory leaks, etc. within the library.
Tested on:
MacOSX/64 10.10.5 (amazon) w/serial & parallel
Linux/32 2.6.x (jam) w/serial & parallel
(h5committest forthcoming)
compatible between 32 and 64 bit systems.
Expand cross platform property list encode/decode testing.
Fix warning in H5P__fill_value_enc.
Tested: jam, koala, ostrich (h5committest), ummon
NOTES:
- Developers will have to run autogen.sh before building with the autotools.
- autogen.sh takes the -p option to mimic the old bin/reconfigure behavior.
- The generated error, overflow and version headers have been left in place.
- The generated H5LT parser code has also been left in place.
- There are no changes for CMake users at this time.
Tested on: h5committest
Merge in part of Neil's property list fixes: Fix a minor memory leak,
add some sanity checks, clean up the code a little, and verify that encoding/
decoding default versions of the property lists works correctly.
Tested on:
MacOSX/64 10.10.5 (amazon) w/serial
(Too minor to require h5committest)
Complete revamp of package initialization/shutdown mechanism in the library.
Each package now has a single init/term routine.
This new way should avoid packages being re-initialized during library
shutdown and is also be _much_ more proactive about giving feedback for
resource leaks internal to the library.
Introduces a new "module" header file for packages in the library
(e.g src/H5Fmodule.h) which sets up some necessary package configuration macros
for the FUNC_ENTER/LEAVE macros. (The VFL drivers have their own slightly
modified version of this header, src/H5FDdrvr_module.h)
Also cleaned up a bunch of resources leaks all across the library and tests,
along with addressing many warnings, as I encountered them.
Tested on:
MacOSX/64 10.10.5 (amazon) w/serial & parallel
Linux/64 3.10.x (kituo) w/serial & parallel
Linux/64 2.6.x (ostrich) w/serial
Bring the "metadata rings" code from its branch (mdc_rings_v2) to the trunk.
(This change will support the page buffering feature)
Tested on:
MacOSX/64 10.10.5 (amazon) w/serial & parallel
(h5committest forthcoming)
gcc 4.9.2 was used to create the warning list
- implicit casts
- shadowed variables
- various enum issues
- other minor fixes (comments, unused macros, etc.)
Tested on: h5committest
The only remaining code consists of a few floating-point tests
that rely on pre-generated and checked-in VMS files. These have
been left alone, even though they will not be possible to
recreate, since testing VMS float behavior is still important.
Tested on: h5committest
Tested w/ h5committest
NOTES: - The manifest may still be messed up.
- Cmake fails since the dual binary work needs to be merged with
this repo's CMake externals.
Renamed a few "h5tri_t extended" variables to "h5tri_t was_extended".
Apparently, "extended" is a typedef name someplace in the headers used
on Solaris, which causes potentially confusing warnings to be emitted.
Tested on: h5committest
Solaris w/ Solaris Studio (emu)
Description:
XL compilers in ostrich (PowerPC64 linux) fail in test/dt_arith
because of the removal of the LLONG_TO_LDOUBLE_CORRECT (removed in
r26625) and LDOUBLE_TO_LLONG_ACCURATE (removed in r26623).
Solution:
Reverse revisions
r26623: bring back LDOUBLE_TO_LLONG_ACCURATE configure macro
r26625: bring back LLONG_TO_LDOUBLE_CORRECT configure macro
r26627: bring back WANT_DATA_ACCURACY configure macro which is
used together with the above two macros. This also brings
back the enable-dconv-accuracy configure option.
Tested:
h5committested.
Also tested in ostrich using the XL compilers.
a different ID in the same type. Added a new skiplist routine,
H5SL_try_free_safe, which iterates over items, freeing some of them, and which
intercepts and defers attempts to remove from the list outside of the main
iteration. Changed H5I_clear_type to use this function.
Tested: jam, koala, ostrich (h5committest); ummon
- Updated the preprocessor logic that defines the H5_ATTR_* macros. The Solaris
Studio compiler understands __attribute__ but not the specific attributes
that we use. The H5_ATTR_* macros are now defined as blank with that
compiler which significantly cleans up the warnings, making debugging
easier.
- Replaced a few lingering __attribute__ macros with H5_ATTR_* markup.
Tested on: h5committest
Solaris w/ Solaris Studio (emu)
Correct error with braces around macro (in production builds), also clean
up a few warnings.
Tested on:
MacOSX/64 10.10.3 (amazon) w/serial, parallel & production
Linux/32 2.6 (jam) w/serial & parallel
Clean up parameters to H5C__flush_single_entry: accept cache entry instead
of address, and make new flag for deleting entry from skiplist on destroy
instead of a separate parameter to the routine.
Tested on:
MacOSX/64 10.10.3 (amazon) w/serial & parallel
Linux/32 2.6.x (jam) w/serial & parallel
Split parallel metadata cache code into separate source code modules.
Tested on:
MacOSX/64 10.10.3 (amazon) w/serial & parallel
(too minor for h5committest)