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
* Move __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS before `#include <stdint.h>`. (#601)
Macros must be defined before first include of stdint.h. Else they have no effect.
* Replace ETL_COMPILER_ICCAVR by ETL_COMPILER_IAR. (#602)
The current definition mechanism for ETL_COMPILER_ICCAVR does not work. Both IAR compilers, for ARM and AVR define `__IAR_SYSTEMS_ICC__`. Thus `ETL_COMPILER_TYPE_DETECTED` will be defined in line before ETL_COMPILER_ICCAVR is defined. This switch will never be entered.
Currently I see no reason for differentiating both compilers (`__ICCARM__` and `__ICCAVR__`). The condition for the IAR compiler platform (`__IAR_SYSTEMS_ICC__`) is sufficient (combined with <C++11 detection).
At the moment ETL_COMPILER_ICCAVR is used as a switch condition for using `#pragma push_macro`. But actually IAR ARM and IAR AVR have no such macro defined. ETL_COMPILER_IAR is defined for both compilers. Thus the switch condition is replaced with ETL_COMPILER_IAR.
* Fix 'maybe-uninitialized' g++ error on macos (#600)
* Add documentation to the pair class
* Add test directory to the EXAMPLE_PATH
* Update .gitignore
- Remove duplicate entries
- Add doxygen output directories
* Add Select1st and Select2nd functors
* Merge select1st and select2nd into utility.h
Co-authored-by: David Hebbeker <dhebbeker@users.noreply.github.com>
* Move __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS before `#include <stdint.h>`. (#601)
Macros must be defined before first include of stdint.h. Else they have no effect.
* Replace ETL_COMPILER_ICCAVR by ETL_COMPILER_IAR. (#602)
The current definition mechanism for ETL_COMPILER_ICCAVR does not work. Both IAR compilers, for ARM and AVR define `__IAR_SYSTEMS_ICC__`. Thus `ETL_COMPILER_TYPE_DETECTED` will be defined in line before ETL_COMPILER_ICCAVR is defined. This switch will never be entered.
Currently I see no reason for differentiating both compilers (`__ICCARM__` and `__ICCAVR__`). The condition for the IAR compiler platform (`__IAR_SYSTEMS_ICC__`) is sufficient (combined with <C++11 detection).
At the moment ETL_COMPILER_ICCAVR is used as a switch condition for using `#pragma push_macro`. But actually IAR ARM and IAR AVR have no such macro defined. ETL_COMPILER_IAR is defined for both compilers. Thus the switch condition is replaced with ETL_COMPILER_IAR.
* Fix 'maybe-uninitialized' g++ error on macos (#600)
* Add documentation to the pair class
* Add test directory to the EXAMPLE_PATH
* Update .gitignore
- Remove duplicate entries
- Add doxygen output directories
* Add Select1st and Select2nd functors
* Merge select1st and select2nd into utility.h
Co-authored-by: David Hebbeker <dhebbeker@users.noreply.github.com>
* updated the version handling
- Introduces a new version.txt file
- This file is parsed by CMake to determine the current version
* assign version in project call
* use version variable
* Meson update
1. Minor fix for GCC build
2. Use external version file which can be used by CMake as well
* get version from git tag now
* ci/cd broke..
* maybe this solves the error
* updated workflow files
* one last test
* remove git describe call