From f7fab27b25c3b94b251c4d4f4181d5f75092f479 Mon Sep 17 00:00:00 2001 From: David Young Date: Tue, 14 Jul 2020 08:58:11 -0500 Subject: If the function-enter macro fails, return FAIL. Now the compiler can see that if H5FD__vfd_swmr_header_deserialize() succeeds, then the header that was passed in was actually initialized. This squashes a used-before-initialized warning from GCC. --- src/H5FDvfd_swmr.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/H5FDvfd_swmr.c b/src/H5FDvfd_swmr.c index f720606..b833fc8 100644 --- a/src/H5FDvfd_swmr.c +++ b/src/H5FDvfd_swmr.c @@ -1125,7 +1125,7 @@ H5FD__vfd_swmr_header_deserialize(H5FD_t *_file, uint32_t stored_chksum; /* Stored metadata checksum */ uint32_t computed_chksum; /* Computed metadata checksum */ uint8_t *p; - htri_t ret_value = TRUE; + htri_t ret_value = FAIL; uint64_t index_length; ssize_t nread; @@ -1193,6 +1193,8 @@ H5FD__vfd_swmr_header_deserialize(H5FD_t *_file, md_header->index_offset, md_header->index_length); #endif /* JRM */ + ret_value = TRUE; + done: FUNC_LEAVE_NOAPI(ret_value) -- cgit v0.12