Added tag v4.0.1 for changeset 93f0a3403c63
update versions in configure script
incorrect nonnull-attribute for various list.h functions - fixes #796
add usage instructions to install.md
remove -pedantic from the header compilation check to allow anonymous structs
mempool.h - internalize structs that are not C++ compatible
fixes #799 - missing return type in the C++ version of cx_strtok_next()
add extra test for compiling with a C++ compiler
fixes #800 - memory leaks in two CxTree test cases
update uwproj and start development of version 4.0.1
Added tag v4.0 for changeset 976e629ce990
fix online docs examples
fix qsort on macOS
proof-read documentation
fix that Microsoft's _strnicmp crashes when a string is NULL although count == 0
final docs fixes + add release date to the changelog
merge logo change
add new ucx logo
complete tree.c testing
fix tree node destruction + reactivate all tests
fix JSON tests
improve cxBufferReserve() test
add test for cx_strcat() with zero additional strings
add overflow tests for cx_array_insert_()
complete properties.c test coverage
remove the old UAP logo
rework of the entire tree API - resolves #772
add full generic support for cx_strsplit()
add full generic support for cx_strtrim()
remove unnecessary explicit calls to cx_str() from the tests
add full generic support for cx_strstr()
add full generic support for cx_strchr() and cx_strrchr()
overhaul all attributes
full generic support for cx_strsubs() and cx_strsubsl()
add cx_strcast_m()
partially revert the changes to cx_strcat() and add CX_NULLSTR macro
simplify cx_strtok_next() by removing the _m() variant - relates to #792
merge changes for Windows
fix compilation errors and warnings under MSVC
add test_properties_next_starts_with_newlines()
add cx_strat()
changes cx_strcat() family of function to return an int and removes two unnecessary variants
enable inline optimizations when creating hash keys from literals
adds support for CxHashKey pointers in CX_HASH_KEY() and all map functions
remove obsolete changelog entry for cx_cmp_memcmp()
fixes that cx_list_default_insert_array() has the wrong nonnull attribute when used for cxListEmplaceArray()
add WITH_MKSTEMP macro because the previous feature test did not always work
add ubsan feature (for debugging)
make find_remove tests robust against possible duplicates in the random test data
revert incorrect use of elem_size argument in cxArrayListCreate()
improve code in cxArrayListCreate()
add overflow check to cx_array_insert()
optimize test whether elements need to be moved in cx_array_insert()
adds cx_bstr() and cx_bstr_m()
adds cx_hash_key_as_string()
add support for any string as a delimiter in all cx_strsplit() variants
add support for any string to all cx_strreplace() variants
define own cx_thread_local macro that is compatible to C11/C17, C23, and MSVC
add more checks to the check-all.sh
fix missing parameter list for cx_test_suite_linked_list_low_level()
merge remote changes
use C11 _Thread_local keyword instead of macro
add support for any string to cx_strstr() and cx_strstr_m()
changes cx_strcpy() and cx_strcpy_a() to accept any string
annotate unreachable path (if the pre-condition is not violated)
add some compare_func2 tests for linked lists - resolves #622
improve output of test results
move low-level linked list tests to separate suite
update online documentation - relates to #622
add tests for cxMapCompare() - relates to #622
add complete test coverage for the new array features
add test for growing an array's capacity
use safe memcmp also as default for the hash map - relates to # 615
remove cx_ccmp_memcmp() again - i.e. we don't provide any 3-arg cmp func in compare.h
fixes elem_size for default memcmp-based compare function not robust against reallocations
fix outdated names of the cx_ccmp functions + adds first tests for using cx_compare_func2
fix cxSetAdvancedCompareFunc() setting the wrong custom data field
check-all.sh now also works when nothing has been configured so far
let check-all.sh restore the build tree when it's done
add tmpnam() fallback when in ISO C23 mode - resolves #786
make check-all.sh faster by adding parallelization
add cx_array_remove() and cx_array_remove_fast()
changes macros for adding/inserting a single element into an array to automatically take the address - relates to #619
add missing _c variants for some linked-list functions - relates to #622
fix nonnull attribute for cx_array_insert_sorted_c_() - relates to #622
add missing compare_func2 variants of the array functions - relates to #622
add convenience array_sort functions - relates to #622
use qsort_r() when it is available - relates to #622
fix and simplify discovery of memrchr
huge refactoring of collections to add support for 3-arg compare functions
add tests for freeing memory with a reallocation of size zero
update names of internal simple_clone funcs to shallow_clone funcs - relates to #780
remove dependency from tree.c to array_list.h
update the online docs with the new array API - resolves #619
minor improvement of iterator.h documentation
change build s.t. the online docs are generated exactly how we want to publish them
adds docstrings to the new array API - relates to #619
fix missing docstrings for the convenience macros in allocator.h
fixes docstring comment for 'continuation' member