summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDana Robinson <43805+derobins@users.noreply.github.com>2021-03-05 04:30:09 (GMT)
committerGitHub <noreply@github.com>2021-03-05 04:30:09 (GMT)
commite84e5ee4672e22753a4d3d600dca2d5291953d78 (patch)
treecd9611a0a8bd16af9b372cd5f610750ca61d081a /src
parent580008d5bb39e3a9a4a92aefe06dce6941cd485b (diff)
downloadhdf5-e84e5ee4672e22753a4d3d600dca2d5291953d78.zip
hdf5-e84e5ee4672e22753a4d3d600dca2d5291953d78.tar.gz
hdf5-e84e5ee4672e22753a4d3d600dca2d5291953d78.tar.bz2
Fixes various warnings noticed on Windows (#425)
* Fixes various warnings noticed on Windows - Adds a prototype for our implementation of vasprintf - Return type of H5_get_utf16_str() is now non-const - Fixes possible uninitialized return type in Wremove_utf8 - Better isolation of fork() code in accum.c:test_swmr_write_big() - Better isolation of non-zlib code in dsets.c:test_filter_delete() - Removed unused variable in trefer.c:test_reference_cmpnd_obj() * Fixes clang-format issues
Diffstat (limited to 'src')
-rw-r--r--src/H5private.h12
-rw-r--r--src/H5system.c8
-rw-r--r--src/H5win32defs.h7
3 files changed, 15 insertions, 12 deletions
diff --git a/src/H5private.h b/src/H5private.h
index 741214f..64ab988 100644
--- a/src/H5private.h
+++ b/src/H5private.h
@@ -675,11 +675,6 @@ typedef struct {
#ifndef HDacos
#define HDacos(X) acos(X)
#endif /* HDacos */
-#ifndef HDvasprintf
-#ifdef H5_HAVE_VASPRINTF
-#define HDvasprintf(RET, FMT, A) vasprintf(RET, FMT, A)
-#endif /* H5_HAVE_VASPRINTF */
-#endif /* HDvasprintf */
#ifndef HDalarm
#ifdef H5_HAVE_ALARM
#define HDalarm(N) alarm(N)
@@ -1647,6 +1642,13 @@ H5_DLL int64_t HDstrtoll(const char *s, const char **rest, int base);
#ifndef HDutime
#define HDutime(S, T) utime(S, T)
#endif /* HDutime */
+#ifndef HDvasprintf
+#ifdef H5_HAVE_VASPRINTF
+#define HDvasprintf(RET, FMT, A) vasprintf(RET, FMT, A)
+#else
+H5_DLL int HDvasprintf(char **bufp, const char *fmt, va_list _ap);
+#endif /* H5_HAVE_VASPRINTF */
+#endif /* HDvasprintf */
#ifndef HDva_arg
#define HDva_arg(A, T) va_arg(A, T)
#endif /* HDva_arg */
diff --git a/src/H5system.c b/src/H5system.c
index 2ac3f93..53307a8 100644
--- a/src/H5system.c
+++ b/src/H5system.c
@@ -66,7 +66,7 @@
/* Track whether tzset routine was called */
static hbool_t H5_ntzset = FALSE;
-#ifndef HDvasprintf
+#ifndef H5_HAVE_VASPRINTF
/* HDvasprintf provides vasprintf-like function on targets where it is
* unavailable.
*/
@@ -94,7 +94,7 @@ HDvasprintf(char **bufp, const char *fmt, va_list _ap)
}
return -1;
}
-#endif
+#endif /* H5_HAVE_VASPRINTF */
/*-------------------------------------------------------------------------
* Function: HDstrtoll
@@ -737,7 +737,7 @@ Wroundf(float arg)
*
*-------------------------------------------------------------------------
*/
-const wchar_t *
+wchar_t *
H5_get_utf16_str(const char *s)
{
int nwchars = -1; /* Length of the UTF-16 buffer */
@@ -833,7 +833,7 @@ int
Wremove_utf8(const char *path)
{
wchar_t *wpath = NULL; /* UTF-16 version of the path */
- int ret;
+ int ret = -1;
/* Convert the input UTF-8 path to UTF-16 */
if (NULL == (wpath = H5_get_utf16_str(path)))
diff --git a/src/H5win32defs.h b/src/H5win32defs.h
index b4b253f..8f3947a 100644
--- a/src/H5win32defs.h
+++ b/src/H5win32defs.h
@@ -176,9 +176,10 @@ H5_DLL int c99_snprintf(char *str, size_t size, const char *format, ...);
H5_DLL int c99_vsnprintf(char *str, size_t size, const char *format, va_list ap);
H5_DLL int Wnanosleep(const struct timespec *req, struct timespec *rem);
H5_DLL herr_t H5_expand_windows_env_vars(char **env_var);
-H5_DLL const wchar_t *H5_get_utf16_str(const char *s);
-H5_DLL int Wopen_utf8(const char *path, int oflag, ...);
-H5_DLL int Wremove_utf8(const char *path);
+H5_DLL wchar_t *H5_get_utf16_str(const char *s);
+H5_DLL int Wopen_utf8(const char *path, int oflag, ...);
+H5_DLL int Wremove_utf8(const char *path);
+H5_DLL int H5_get_win32_times(H5_timevals_t *tvs);
/* Round functions only needed for VS2012 and earlier.
* They are always built to ensure they don't go stale and