46 Commits

Author SHA1 Message Date
Roland Reichwein
b83cef5668
Fix compilation with -Wsign-conversion (#1367)
* 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
2026-03-28 11:15:56 +00:00
John Wellbelove
d884719098 Fixed all 'extra semicolon' warnings 2025-12-16 09:15:26 +00:00
John Wellbelove
6c6c7b00a5 Remove redundant ETL_FORCE_NO_ADVANCED_CPP macro 2025-01-22 14:51:18 +00:00
John Wellbelove
bceca90cd9 Updates to constexpr binary tests 2024-08-06 13:40:21 +01:00
John Wellbelove
cc3d7d120d Split bit tests 2024-07-28 16:51:02 +01:00
John Wellbelove
d17f422dac Added binary functors for ~ & | ^ 2023-12-18 11:02:54 +00:00
John Wellbelove
cbbd1d840a Added additional etl::make_lsb_mask and etl::make_msb_mask binary functions 2023-12-04 08:38:42 +00:00
John Wellbelove
63d1a64e6c #787 etl::expected doesn't compile with ETL_LOG_ERRORS
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
2023-11-24 09:59:35 +00:00
John Wellbelove
81d2ec0f8d Added etl::bit_v for C++17 2023-08-10 12:08:42 +01:00
John Wellbelove
9f4c5bbb94 C++11 unit tests - Work in progress 2023-04-30 11:06:23 +01:00
John Wellbelove
e78e7b474a Added etl:lsb_mask, etl::make_lsb_mask, etl::msb_mask and etl::make_msb_mask 2022-09-11 00:55:55 +01:00
John Wellbelove
baa47d1c33 Updated copyright notice 2022-06-10 21:45:37 +01:00
John Wellbelove
c99d984453 Updates to bin.h, binary.h and endian.h 2022-01-08 11:38:04 +00:00
John Wellbelove
dc563239e5 Added all permutations of leading/trailing bit tests 2022-01-03 18:21:19 +00:00
CanastraRF
7c0f169b66
literal with suffix (#416) 2021-08-23 11:01:18 +01:00
John Wellbelove
dbfa71944f Abstracted unit test framework header 2021-03-05 13:52:34 +00:00
John Wellbelove
5d4d111671 Added iterator API to all etl::frame_check_sequence based template classes, such as CRCs and checksums 2020-10-07 11:06:10 +01:00
John Wellbelove
0180a7c9bd Reduced warnings from cppcheck v2.2 2020-10-04 14:24:52 +01:00
John Wellbelove
e323f2267f Changed http://www.etlcpp.com to https://www.etlcpp.com 2020-05-01 10:22:36 +01:00
John Wellbelove
bff480b9a2 Removed ETL's implementation of nullptr for pre C++11 compilers.
Created the macro ETL_NULLPTR for internal use. Equates to NULL or nullptr, dependent on the compiler version and project profile.
Added partial compile time versions of binary_fill and has_zero_byte.
2020-03-28 19:16:55 +00:00
John Wellbelove
d59f53fe25 C++98/03 compatibility changes 2020-03-27 13:11:17 +00:00
John Wellbelove
83347ccfdd Work in progress 2020-01-09 11:15:50 +00:00
John Wellbelove
fc50557003 Work in progress 2020-01-04 11:20:29 +00:00
John Wellbelove
d6f8b69326 Merge remote-tracking branch 'origin/feature/determine_compiler_versions' into development
# Conflicts:
#	examples/ArmTimerCallbacks - C++/ArmTimerCallbacks.uvprojx
#	examples/ArmTimerCallbacks - C++/main.cpp
#	include/etl/algorithm.h
#	include/etl/platform.h
#	include/etl/stl/alternate/limits.h
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
#	test/codeblocks/ETL.cbp
#	test/etl_profile.h
#	test/vs2017/etl.vcxproj
#	test/vs2017/etl.vcxproj.filters
2019-12-27 12:57:34 +00:00
John Wellbelove
bd008350a2 Merge remote-tracking branch 'origin/feature/changed_include_paths' into development
# Conflicts:
#	include/etl/version.h
2018-07-28 21:55:27 +01:00
John Wellbelove
83d495bc21 Added binary_merge, binary_interleave, is_odd, is_even 2018-05-20 09:16:20 +01:00
John Wellbelove
27aa3a2ab3 Added new binary utilities 2018-04-29 19:59:46 +01:00
Austin Morton
dcd42ee17e Fix assumption that min/max macros will always be defined on a Microsoft compiler (#72)
Merge in min-max changes to a feature branch
2018-04-24 14:27:18 +01:00
John Wellbelove
39ad0fe808 Added sign_extend functions with shift parameter. 2017-12-15 13:59:03 +00:00
John Wellbelove
c0169188ca Made some templates into normal functions and moved to binary.cpp
Added bit<> template constant
Added bit enumerations
2017-12-05 18:49:50 +00:00
John Wellbelove
26b7326d72 Updated Code::Blocks project.
Changed test project include paths to use unittest++ as sub-module.
2017-05-08 20:48:22 +01:00
John Wellbelove
dfbd0391a2 Added various tests 2016-05-03 19:17:26 +01:00
John Wellbelove
f1c5c20ba7 Changed folder structure to be compatible with Arduino library specifications 2016-02-28 14:04:22 +00:00
John Wellbelove
85c60f5407 Added more sign_extend tests for unsigned values. 2016-02-28 13:51:09 +00:00
John Wellbelove
da8a31c19e Added sign_extend template 2016-02-27 16:54:51 +00:00
jwellbelove
01ff869fb5 Fixed test compile warnings 2016-01-13 16:10:15 +00:00
John Wellbelove
16a1978f43 Added link to www.etlcpp.com in licence header. 2015-12-16 11:09:56 +00:00
John Wellbelove
2645cdf3e0 Casts to keep GCC happy 2015-12-11 19:06:33 +00:00
John Wellbelove
7bea827b94 Modified tests due to hash changes 2015-09-28 18:30:32 +01:00
John Wellbelove
16117d9a5c Added etl::max_value_for_nbits
Fixed etl::fold_bits by using etl::max_value_for_nbits in while loop.
2015-09-25 12:00:18 +01:00
John Wellbelove
690a68610b Added 'fold_bits' functionality. 2015-09-13 20:57:12 +01:00
jwellbelove
1777bb5f33 Added count_bits & parity. 2015-02-23 21:11:34 +00:00
jwellbelove
ae385d5561 Added Github link to copyright notice. 2015-02-22 13:23:18 +00:00
jwellbelove
a72fb6ddc2 Added binary / gray code conversions. 2015-02-21 21:19:25 +00:00
jwellbelove
d4ae5c9775 Added rotate (+- distance) 2015-02-15 10:22:01 +00:00
jwellbelove
e6435b4cb4 Binary utlities 2015-02-15 09:57:21 +00:00