* Removed ETL_USE_TYPE_TRAITS_BUILTINS macro
* Added ETL_DISABLE_BUILTIN_FUNCTIONS to allow tests to to be run without using builtins
* clang-format updates
---------
Co-authored-by: John Wellbelove <john.wellbelove@etlcpp.com>
* Updated ignore for hard link for CLion
* Initial working version
* Optimised advance template call
* Further optimsed advance
Updated docs and tests
* Moved comparison operators out of the class.
* Implement spaceship operator <=> for No-STL case (#1604)
This was disabled explicitly in recent commit
232c948674cff1b4b72c2d6b3acfa7342d096dd1 to prevent using
the <compare> header from STL.
Now, re-enabling by implementing an ETL version of it in compare.h
* Sponsorship message updates
* Fix duplicated check runs
* Refactored the advance function to fix issues with signed unsigned mod operations.
* clang-format
* Updated documentation for cyclic_value
* Modified code comments
* Fixed a logic issue in advance() where a less than maximum step from the minimum value for a cyclic value covering the full type's range would take the wrong logical path (Step would roll over), although calculating the correct result.
This could be cofusing to someone debugging cyclc_value.
* Added runtime ans static asserts for reverse ordered limts.
* clang-format
* Spelling fix 'fast' -> 'last'
* Code review updates
* clang-format
* Code review updates
* Code review updates
---------
Co-authored-by: John Wellbelove <john.wellbelove@etlcpp.com>
Co-authored-by: Roland Reichwein <Roland.Reichwein@bmw.de>
Includes C++26 related infrastructure macros.
Fixes compile errors when compiling under C++26.
Initially supported C++26 features:
- [[indeterminate]]
- new 2022 ISO prefixes in ratio.h
- atomic fetch_max() and fetch_min()
- is_virtual_base_of
- is_trivially_relocatable and trivially_relocate
- saturation arithmetic: add_sat, sub_sat, mul_sat, div_sat, saturate_cast
* Fix run-syntax-checks.sh to run with bash
Contains bash specific syntax, and sync with the other *.sh files
in this directory.
* Add missing header file adaptors to the directory and CMakeLists.txt
* run-syntax-checks.sh without ETL_IN_UNIT_TEST
* Fix usage of make_unsigned
* Removing crc.h from syntax checks because of redundancy
* Remove ETL_USING_CPP11 from unit tests
Unit tests are always run with at least C++11.
* Add missing copyright header in test_manchester.cpp
* Fixed usage of ETL_DEPRECATED_REASON(), wrong syntax by order
---------
Co-authored-by: John Wellbelove <john.wellbelove@etlcpp.com>
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
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