summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Remove HD from HDposix_memalign() (#3196)Dana Robinson2023-06-282-10/+7
| | | | The posix_memalign call is only used in the direct VFD, which can only be built if posix_memalign() is available.
* Rename HDsystem() to system() (#3197)Dana Robinson2023-06-281-3/+0
| | | | system() is only used in the iopipe test and the things it calls (which are POSIX-y) are protected by an ifdef.
* Rename HD(f)printf() to (f)printf() (#3194)Dana Robinson2023-06-28103-2022/+1981
|
* Rename HDassert() to assert() (#3191)Dana Robinson2023-06-28305-12425/+12413
| | | | | * Change HDassert to assert * Fix bin/make_err
* Rename HDpipe() to pipe() (#3192)Dana Robinson2023-06-281-3/+0
| | | Pipe is POSIX but implemented in Microsoft's CRT
* Rename HDqsort() to qsort() (#3193)Dana Robinson2023-06-289-31/+28
| | | | | | | | | * Rename HDqsort() to qsort() * Committing clang-format changes --------- Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Fix assertion failure when attempting to use IOC VFD directly (#3187)jhendersonHDF2023-06-281-0/+13
|
* Remove HD from fork/exec*/wait* (#3190)Dana Robinson2023-06-281-18/+0
| | | | These are not C99 but are hidden behind ifdefs and are highly unlikely to ever have non-POSIX equivalents.
* Drop HD prefix & hbool_t from H5TS (#3180)Dana Robinson2023-06-282-51/+31
|
* Remove HDva_(arg|copy|end|start) (#3184)Dana Robinson2023-06-287-190/+175
|
* Remove H5F_evict_tagged_metadata() (#3165)Dana Robinson2023-06-215-44/+16
| | | | The rest of the library just calls H5AC_evict_tagged_metadata() directly.
* Remove dead code behind #ifdef OLD_WAY (#3163)Dana Robinson2023-06-213-42/+6
|
* Many fixes to various compiler warnings (#3124)Sean McBride2023-06-1914-39/+39
| | | | | | | | | | | * Fixed various -Wmissing-variable-declarations by adding static keyword * In a few cases, renamed the variable suffix from _g to _s. * Fixed some -Wmissing-variable-declarations by using different declaration macros * Fixed various -Wconditional-uninitialized warnings by just initializing variable to zero * Fixed various -Wcomma warnings * Fixed clang -Wstrict-prototypes warnings * Fixed various -Wunused-variable warnings * Updated some casts to fix the only 3 -Wcast-qual warnings * Fixed the only -Wsometimes-uninitialized warning
* Track s3 i/o when S3COMMS_DEBUG enabled (#3139)mattjala2023-06-161-0/+5
| | | * Track s3 i/o when S3COMMS_DEBUG enabled
* Remove HD prefix from network calls (#3142)Dana Robinson2023-06-162-50/+8
| | | HDsocket(), etc. Only affects the mirror VFD and its test code.
* Many clang -Wextra-semi-stmt fixes (#2537)Sean McBride2023-06-1697-537/+549
| | | | | * Adds semicolons to function-like macros * Adds a do..while(0) loop to some macros * Removes semicolons when inappropriate, especially H5E_TRY_BEGIN/END
* Removed .lnt linter files (#3143)Dana Robinson2023-06-163-145/+0
| | | These were last usefully modified in 2004
* Revert long double checks (#3133)Dana Robinson2023-06-153-0/+47
| | | | | | | * Revert "Remove long double conversion work-arounds (#3097)" This reverts commit 1e1dac1dac58fa18f6b7788346d1ba7d3315b0f9. * Update comments to reflect newer systems
* Remove unused HD macros (#3120)Dana Robinson2023-06-141-285/+0
| | | | | | | | | * Remove unused HD macros The library prefixes most C and POSIX API calls with 'HD'. We are going to start removing these so the code looks like normal C. This PR removes most of the unused HD markup macros. * Replace ntohl/ntohs
* clang-tidy clang-analyzer-core issues addressed (#3113)Allen Byrne2023-06-132-5/+3
| | | | | | | | src/H5system.c:1293:13: warning: Dereference of null pointer [clang-analyzer-core.NullDereference] src/H5trace.c:4048:17: warning: Passed-by-value struct argument contains uninitialized data (e.g., via the field chain: 'initial.user') [clang-analyzer-core.CallAndMessage]
* Remove H5detect and H5make_libsettings (#3104)Dana Robinson2023-06-1315-1452/+856
| | | | | | | | Removes H5detect and H5make_libsettings from the build and replaces their functionality with things that don't affect cross-compiling. H5detect --> floating-point types are now detected on library load H5make_libsettings --> Moved functionality to a new H5build_settings.c template file
* Remove long double conversion work-arounds (#3097)Dana Robinson2023-06-123-47/+0
| | | | | | | | | | | | | | | | | | | | | Several options and public symbols that were provided to paper over non-standard long double conversions between signed/unsigned long and long long values were removed from the Autotools and CMake. These were added twenty years ago, when C99 and 64-bit platforms were less common and are no longer needed. Autotools: --enable-dconv-accuracy CMake: HDF5_WANT_DATA_ACCURACY H5pubconf.h symbols: H5_WANT_DATA_ACCURACY H5_LDOUBLE_TO_LONG_SPECIAL H5_LONG_TO_LDOUBLE_SPECIAL H5_LDOUBLE_TO_LLONG_ACCURATE H5_LLONG_TO_LDOUBLE_CORRECT H5_DISABLE_SOME_LDOUBLE_CONV
* Address memory issues when copying empty enums (#3088)Dana Robinson2023-06-122-17/+26
| | | | | | | | | | When copying an empty enum type (including implicitly, as when an enum is contained in a compound type), the library would allocate 0-size blocks of memory and attempt to memcpy 0 bytes from NULL pointers, which are undefined behavior. In debug mode, the library would raise an assert in H5MM. The library now avoid undefined memory operations when copying empty enum types and a test that copies empty enums has been added.
* Fix misc warnings on Windows (#3094)Dana Robinson2023-06-113-21/+21
| | | | | * Debug functionality where pointers were munged into longs (which are only 32-bits on Windows) * Fix a missing cast in Wstrcasestr_wrap()
* Minor cleanup of H5detect.c (#3081)Dana Robinson2023-06-091-152/+115
| | | | | | * Clean up H5detect.c * Whitespace cleanup * Align things a bit better * Comment changes
* Remove Win32 POSIX redefinitions (#3068)Dana Robinson2023-06-071-35/+15
| | | | | | Microsoft has redefined most POSIX API calls with a leading underscore in order to strictly comply with C99. Nobody else cares about this and we define _CRT_NONSTDC_NO_WARNINGS in CMake Windows builds to suppress their warnings.
* Fix MSVC 32/64 bit shift conversion warnings (#3067)Dana Robinson2023-06-071-5/+5
|
* Add netCDF and HDF-EOS5 badges to README.md (#3065)Dana Robinson2023-06-071-1/+1
|
* Fix doxygen comments in structure and enable FAIL_ON_WARNINGS (#3059)Allen Byrne2023-06-061-0/+6
|
* CMake build is missing H5FDsubfiling.h #3037 (#3053)Allen Byrne2023-06-061-2/+2
|
* Move encode/decode macros to a new header (#3040)Dana Robinson2023-06-0634-456/+492
| | | | | | | | | | | Moves the file-independent encode and decode macros to a new H5encode.h header that is itself included in H5private.h. Removes UINT64ENCODE_VARLEN and UINT64DECODE_VARLEN, which were unused. Fixes include statements in files where H5VMprivate.h and H5MMprivate.h were included via H5Fprivate.h.
* Convert H5F haddr_t macros to H5 (#3039)Dana Robinson2023-06-05123-948/+945
| | | | | | | | | | | | | | | | | | | | | | Several macros for handling haddr_t values exist in H5Fprivate.h and have H5F prefixes, even though they have nothing to do with a particular file (e.g., H5F_addr_lt()). These macros have been moved to H5private.h and renamed to have an H5 prefix. Affected macros: H5F_addr_overflow H5F_addr_defined H5F_addr_eq H5F_addr_ne H5F_addr_lt H5F_addr_le H5F_addr_gt H5F_addr_ge H5F_addr_cmp H5F_addr_overlap H5F_addr_pow2 was unused and removed instead of converted.
* Add casts to type conversion to fix long dbl bug (#3038)Dana Robinson2023-06-031-2/+22
| | | | | | If a user buffer is misaligned in the type conversion code, memcpy could fail if the call is SSE-optimized by the compiler. This change adds uint8_t * casts so the compiler won't make optimistic assumptions about buffer alignment.
* Only pass efc pointer to H5F__efc_open (#3026)Dana Robinson2023-05-303-22/+21
| | | | The H5F__efc_open() API call only needs the efc pointer, so there is no need to pass the entire file struct in.
* Remove unused H5F_EN|DECODE_OFFSET macros (#3027)Dana Robinson2023-05-301-26/+0
|
* API test updates (#3018)jhendersonHDF2023-05-261-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | * Remove macros from api tests (#2929) * Remove macros and undefined callbacks (#2959) * Remove remaining macros from H5_api_tests_disabled.h (#2968) * Put some vol capability checks in testpar tests and remove remaining warnings (#2995) * API tests datatype generation cleanup * Clean up API tests' random datatype generation and fix bug with enum datatype generation * Init parallel API tests with MPI_THREAD_MULTIPLE * HDF5 API tests - Check VOL connector registration * Determine whether a VOL connector failed to load before running API tests * Cleanup some usages of H5VL_CAP_FLAG_CREATION_ORDER in API tests * Remove some now-unused macros from H5_api_tests_disabled.h * Enable HDF5 API tests by default * Implement CMake option to install HDF5 API tests * Check for invalid AAPL from H5Acreate * Enable building of VOL connectors alongside HDF5 in CMake * Prepend CMake VOL URL option indices with 0s so they come in order * Don't turn on API tests by default yet * Document VOL connector FetchContent functionality * Add release note for API test updates * Only install testing library if API tests are installed * Fix grammar
* Fix release version for some H5Pfapl routines (#3023)jhendersonHDF2023-05-261-3/+3
|
* Remove src/.indent.pro (#3008)Dana Robinson2023-05-251-150/+0
| | | | | There is no need for this since we use clang-format Fixes #3004
* Fix missing/misplaced h5_reset calls (#3001)Dana Robinson2023-05-231-6/+0
| | | | | | Fixes failures when running tests after building with thread-safety w/ code stacks on. Fixes #2990
* Fix FUNC_ENTER macro mismatch in H5VL_object_inc_rc() (#2991)bazimo2023-05-231-1/+1
|
* Fix 'datatype' misspellings ('dataype') (#2984)Dana Robinson2023-05-193-14/+14
|
* Add test for HDstrcasestr macro (#2115)jhendersonHDF2023-05-192-1/+24
|
* Change UBSAN for undefined instaed of address (#2964)Allen Byrne2023-05-171-2/+2
|
* Remove unnecessary fields from cache structs (#2951)Quincey Koziol2023-05-1526-524/+36
| | | | | | | | | | | | * Remove unnecessary 'magic' field from cache structs Signed-off-by: Quincey Koziol <quincey@koziol.cc> * Committing clang-format changes --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Warn about changing collections during iteration (#2950)mattjala2023-05-157-15/+37
| | | Resolves #92
* Prevent buffer overrun in H5S_select_deserialize (#2931)mattjala2023-05-1212-104/+233
| | | | | | | | | | | | | | | | | | | | | * Prevent buffer overrun in H5S_select_deserialize The call to H5S_select_deserialize from H5S_decode doesn't have the buffer size available to it, so to allow decoding there I set it to assume a max size buffer for now. Making the buffer size known in H5S_decode could be done by modifying the external API's H5Sdecode, or splitting H5Sdecode into two functions using a macro (similar to H5Sencode), with the macro taking one argument and assuming a max buffer size. * Conditional buffer check in H5S_select_deserialize Moved and renamed a macro for only checking buffer overflow when buffer size is known from H5Odtype.c to H5private.h, so it can be used throughout the library. Also silenced some build warnings about types.
* Move functions into more focused source code modules (#2936)Quincey Koziol2023-05-1216-7442/+7508
| | | | | | | | | | | | | | * Move functions into more focused source code modules, along with a small # of directly secondary effects. No actual changes to the contents of any moved routines. Signed-off-by: Quincey Koziol <quincey@koziol.cc> * Committing clang-format changes --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* More code duplication reduction (#2930)Quincey Koziol2023-05-094-2210/+1523
| | | | | | | | | | | | | | | | | | | | | | | | * Add failure value where it's missing from 1+ macros. Clean up whitespace / continuation characters ('\'). Made hash-table macros generic for use in both the package header and test header. Remove duplicated copy & pasted macros (by hoisting difference into #ifdef'd macro). Updated and re-flowed comments to read better. Also clean up a few compiler warnings in production builds. Signed-off-by: Quincey Koziol <quincey@koziol.cc> * Committing clang-format changes * Remove unused variable warning in H5C.c (#2844) * Remove trailing /* NDEBUG */ comment from #endif's * Committing clang-format changes --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Remove unused variable warning in H5C.c (#2844)H. Joe Lee2023-05-091-2/+2
|
* Reduce code duplication in macros (#2914)Quincey Koziol2023-05-081-539/+126
| | | | | | | | | | | | | | | | | | * Reduce code duplication in macros Signed-off-by: Quincey Koziol <quincey@koziol.cc> * "insert" -> "remove" in error string Signed-off-by: Quincey Koziol <koziol@lbl.gov> * Remove unused macro also Signed-off-by: Quincey Koziol <quincey@koziol.cc> --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Signed-off-by: Quincey Koziol <quincey@koziol.cc>