* Fix compilation with -Wsign-conversion
For tests with GCC and Clang
Fixes https://github.com/ETLCPP/etl/issues/632
* Fix support of negative Id in type_lookup.h: type_from_id
* Fix element access arithmetic in atomic_gcc_sync.h fetch_add/fetch_sub
* Fix rounded_integral_division.h: divide_round_half_odd(): direction is always 1
* Make code base with tests compile under gcc-14
* Update buffer_descriptors.h
Following the same style as non-tests headers have. E.g., include/etl/intrusive_list.h & include/etl/intrusive_forward_list.h
---------
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
C++14 compiler compatibility
Updated test run scripts
Changed some ETL_ASSERT macros to ETL_ASSERT_OR_RETURN
Changed unit test macros for C++20 compaibility
Updated test run scripts
Updated CMake files to allow C++ standard selection
Replaced ETL_ASSERT_AND_RETURN with ETL_ASSERT_OR_RETURN
Updated C++14 & C++20 unit test compatibility
Changed native char8_t check
Added optional optimisation argument to bash script