summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/H5Fsuper_cache.c6
-rw-r--r--src/H5HFcache.c7
-rw-r--r--src/H5HGcache.c6
3 files changed, 16 insertions, 3 deletions
diff --git a/src/H5Fsuper_cache.c b/src/H5Fsuper_cache.c
index ecb98ed..b5e4255 100644
--- a/src/H5Fsuper_cache.c
+++ b/src/H5Fsuper_cache.c
@@ -349,7 +349,11 @@ H5F__cache_superblock_get_final_load_size(const void *_image, size_t image_len,
{
const uint8_t *image = _image; /* Pointer into raw data buffer */
H5F_superblock_cache_ud_t *udata = (H5F_superblock_cache_ud_t *)_udata; /* User data */
- H5F_super_t sblock; /* Temporary file superblock */
+ /* Temporary file superblock, initialized because GCC 5.5 does not
+ * realize that H5F__superblock_prefix_decode() initializes it.
+ * TBD condition on compiler version.
+ */
+ H5F_super_t sblock = {.super_vers = 0, .sizeof_addr = 0, .sizeof_size = 0};
htri_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_STATIC
diff --git a/src/H5HFcache.c b/src/H5HFcache.c
index 2d1c1f2..39dc554 100644
--- a/src/H5HFcache.c
+++ b/src/H5HFcache.c
@@ -406,7 +406,12 @@ static herr_t
H5HF__cache_hdr_get_final_load_size(const void *_image, size_t image_len,
void *_udata, size_t *actual_len)
{
- H5HF_hdr_t hdr; /* Temporary fractal heap header */
+ /* Temporary fractal heap header, initialized because GCC 5.5 does
+ * not realize that the H5HF__hdr_prefix_decode() call is sufficient
+ * to initialize. GCC 8 is clever enough to see that the variable
+ * is initialized. TBD condition on compiler version.
+ */
+ H5HF_hdr_t hdr = {.filter_len = 0};
const uint8_t *image = (const uint8_t *)_image; /* Pointer into into supplied image */
H5HF_hdr_cache_ud_t *udata = (H5HF_hdr_cache_ud_t *)_udata; /* User data for callback */
herr_t ret_value = SUCCEED; /* Return value */
diff --git a/src/H5HGcache.c b/src/H5HGcache.c
index 29e88df..a6c9996 100644
--- a/src/H5HGcache.c
+++ b/src/H5HGcache.c
@@ -205,7 +205,11 @@ static herr_t
H5HG__cache_heap_get_final_load_size(const void *image, size_t image_len,
void *udata, size_t *actual_len)
{
- H5HG_heap_t heap; /* Global heap */
+ /* Global heap, initialized because GCC 5.5 cannot see that
+ * H5HG__hdr_deserialize() initializes. TBD condition on compiler
+ * version.
+ */
+ H5HG_heap_t heap = {.size = 0};
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_STATIC