* 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
* Add checks to vector and fix test failures
* Add tests to vector
* Add tests to external buffer and non trivial
* All tests should be implemented
* Add checks to vector_pointer and vector_pointer_ext
* Get bad iterators from a second vector
Updated CI scripts
#786 u8string
#783 Cannot insert existing value to full set
#781 etl::multi_span::iterator::operator *() fails if first span is empty
#780 endian enum_type produces useless-cast warnings
#779 hash.h: warnings produced with -Wfloat-equal
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