271 Commits

Author SHA1 Message Date
John Wellbelove
3c6c1ed527 Work in progress 2023-04-02 11:06:42 +01:00
John Wellbelove
bcad53ebb2 Array bounds and maybe-uninitialized warning fixes
Array bounds and maybe-uninitialized warning fixes

Added GCC/clang diagnostic disable for array bounds

Fixed false positive array bounds failure in unit tests

Added -01 & -03 quick tests

Fixed constexpr for exception constructor

Made virtual functions protected

Updated project files

Updated generated file

Updated versions and release notes
2023-03-02 13:15:42 +00:00
John Wellbelove
7bfa2d9429 Merge branch 'development' into hotfix/#649-intrusive_list-array-bounds-test-failure
# Conflicts:
#	include/etl/intrusive_forward_list.h
#	include/etl/intrusive_list.h
#	include/etl/optional.h
#	test/test_optional.cpp
#	test/vs2019/etl.vcxproj.filters
2023-02-28 19:31:33 +00:00
John Wellbelove
8ddf0935d3 Array bounds and maybe-uninitialized warning fixes 2023-02-28 18:33:49 +00:00
John Wellbelove
80b397380d Merge branch 'pull-request/#670-span-equality-operators' into development 2023-02-19 12:13:45 +00:00
John Wellbelove
f66a29589e Updated sanity check make files 2023-02-19 12:13:00 +00:00
John Wellbelove
2b96628850 Merge branch 'add-m17-crc' into development
# Conflicts:
#	test/vs2019/etl.vcxproj.filters
2023-02-12 11:46:39 +01:00
John Wellbelove
26caa70981 Added M17 CRC 2023-02-12 11:44:59 +01:00
John Wellbelove
8491133351 Work in progress 2023-02-12 11:26:03 +01:00
John Wellbelove
4c92670a6d Work-In-Progress for full implementation of etl::expected
fix set of ETL_NO_STL flag (#628)

Co-authored-by: Sergey Skorokhod <s.skorokhod@1440.space>

Removed duplicate include

unique_ptr updates - Work in progress

Updated versions & memory.h

Fix duplicate function

Fixed incorrect 'valid' flag in assignment operator for arithmetic specialisation

Updated version and release notes

Fix bug #636 in optional emplace for pod types (#638)

Updated version info

Updated generator test script

Only build tests if top level project (#639)

Removed trailing spaces

Updated version info

Incorrect C++03 enable_if syntax

Updated version info

Don't use `push_macro` and `pull_macro` with Tasking compiler (#643)

* Autodetect Tasking compiler

#642

* Don't use `push_macro` and `pop_macro` for Tasking compiler

#642

Co-authored-by: Todd Snider <tsnider@jlg.com>

#643 Don't use push_macro and pull_macro with Tasking compiler

Updated etl::delgate to handle const functors correctly

Updated version info

Fixed functor delegate enable_if

Updated release notes

Avoid 'missing return statement at end of non-void function' in `etl::visit<>()`. (#645)

* Avoid 'missing return statement at end of non-void function' in `etl::visit<>()`.

For some definitions of `ETL_ASSERT()` there may be no return statement in case of an invalid type.
This results in undefined behavior.

Warning[Pe940]: missing return statement at end of non-void function "etl::visit<TReturn,TVisitor,TVariant>(TVisitor &, TVariant const &) include\etl\private\variant_legacy.h 976

* Use more self-explaining code.

Substitute ET_ASSERT() and return by dedicated macro.
This moves the responsibility of how to handle errors to the dedicated place.

improve is_constructible, is_copy_constructible, is_move_constructible for type traits with default definitions (#648)

Removed unused ETL_USE_MEM_BUILTINS option

Updated version info

Updated release notes

Added etl::result<TValue, void> specialisation

Reverted code for etl::result<void, TError> specialisation

Added etl::result<TValue, void> specialisation

Reverted code for etl::result<void, TError> specialisation

Fixed perfect forwarding for make_xxx helper functions

Don't warn on tag missing when subproject (#653) (#655)

Different solution than proposed in the issue, since that proposed
solution would given unexpected results when an intermediate
(untagged) commit is checked out.

This change simply skips warning about a missing git version when this
is a subproject, and uses the original version calculation logic.

I've also renamed `determine_version` to `determine_version_with_file`.
I'd originally done this in an intermediate version of this PR, but I
think that keeping the renaming is clearer code.

Removed superfluous semicolons

Updated version and release notes

Removed testing for 18.04

Added testing for 22.04

Updated Github Actions for Clang

Updated version and release notes

clang updates for Github Actions

Added missing notes

emplace member functions return reference to emplaced value (#659)

emplace_front, emplace_back updates

Updated version and release info

Improved emplace testing

Changed unit test macro CHECK_FALSE_EQUAL to CHECK_NOT_EQUAL

Improved emplace testing

Changed unit test macro CHECK_FALSE_EQUAL to CHECK_NOT_EQUAL

Improved emplace testing

Work-In-Progress

Work-In-Progress

Added indexed emplace

More typedefs for etl::result

Work in progress

Work in progress

Work in progress

Changed default constructor

Added function comments
2023-02-06 20:01:34 +01:00
John Wellbelove
354f2042e6 Work-In-Progress 2023-02-06 19:59:03 +01:00
John Wellbelove
f858b36e82 Work-In-Progress 2023-02-06 19:48:51 +01:00
John Wellbelove
d93c330b76 Finalised etl::to_arithmetic 2022-10-29 21:37:46 +01:00
John Wellbelove
743d4e32ca Finished floating point conversions and tests 2022-10-24 14:24:28 +01:00
John Wellbelove
3d412e6e7d First implementation ideas 2022-10-19 19:30:51 +01:00
John Wellbelove
ce2a8ba0fc Updated string_view and char traits 2022-10-19 19:14:51 +01:00
John Wellbelove
c5257e6441 Updated VS2019 files 2022-10-19 12:22:52 +01:00
John Wellbelove
2d0d744c74 Updated etl::bitset and added etl::bitset_ext 2022-09-08 20:11:20 +01:00
John Wellbelove
e8cc472ac9 Finished etl::circular_iterator an circular extensions to etl::span 2022-09-06 19:43:01 +01:00
John Wellbelove
dc0ab72e09 circular_span first draft 2022-09-06 10:59:49 +01:00
John Wellbelove
25adb3c68c Almost finalised circular_iterator and tests 2022-09-04 23:44:51 +01:00
John Wellbelove
64fa058f6b Work in progress 2022-08-26 09:49:13 +01:00
John Wellbelove
7868445166 Work in progress
Modify specialisations for bitset element types
2022-08-17 20:35:44 +01:00
John Wellbelove
72263a9ced Work in progress
More tests
2022-08-16 18:10:05 +01:00
John Wellbelove
2d9c8ccd2a Work in progress
Start single element optimisations
2022-08-15 16:33:35 +01:00
John Wellbelove
3a4af24ab7 Work in progress
Added more CHECK macros
Added bitset_fast class for bitsets that are the same size as an integral type
2022-08-13 12:15:41 +01:00
John Wellbelove
3ee5abf74b Work in progress 2022-08-12 13:39:24 +01:00
John Wellbelove
e4966b1b20 Added missing char_traits unit tests and char_traits bug fixes 2022-08-04 15:36:10 +01:00
John Wellbelove
18f78348d2 Added CMake updates 2022-08-01 13:05:56 +01:00
John Wellbelove
40290c4fa2 Partial implementation 2022-07-31 13:55:23 +01:00
John Wellbelove
cd18cc6af0 Eradicated all GCC and clang warnings 2022-07-27 10:42:03 +01:00
John Wellbelove
b2e1c35540 Fixed swap function for circular_buffer_ext
Fixed circular_buffer iterator -> operators
Added functions and macros to etl::debug_count
2022-07-24 12:56:44 +01:00
John Wellbelove
a2e02d8dfa Added Log Errors event handler tests 2022-07-20 16:07:32 +01:00
John Wellbelove
4b465f64c4 Merge branch 'development' of https://github.com/ETLCPP/etl into development
# Conflicts:
#	test/vs2019/etl.vcxproj
2022-07-20 14:33:38 +01:00
John Wellbelove
adf9d690e1 Updated version and release notes 2022-07-20 14:32:43 +01:00
John Wellbelove
17b2a12482 Updated version and release notes 2022-07-20 14:10:40 +01:00
John Wellbelove
bcf147f096 Added etl::poly_span
Refacted parts of etl::span
2022-07-14 12:19:08 +01:00
John Wellbelove
adf9bd5c20 Work in progress 2022-07-10 14:09:46 +01:00
John Wellbelove
9dca59bf40 etl::poly_span without etl::dynamic_extent 2022-07-04 20:24:39 +01:00
John Wellbelove
aedb151b89 Renamed cumulative_moving_average to pseudo_moving_average 2022-06-23 13:47:49 +01:00
John Wellbelove
829d9fa220 Renamed cumulative_moving _average to pseudo_moving_average
Modified etl::debounce internal enumeration names to avoid clashes with Arduino
2022-06-22 17:37:59 +01:00
John Wellbelove
5a460f7fec Latest refactoring
Added little endian bit stream reader tests
2022-06-19 18:37:20 +01:00
John Wellbelove
fefe6d3975 Added endianness to bit_stream_writer 2022-06-18 20:57:26 +01:00
John Wellbelove
c83b222690 Merge branch 'feature/bit_stream-reader-and-writer-like-byte_stream' of https://github.com/ETLCPP/etl into feature/bit_stream-reader-and-writer-like-byte_stream
# Conflicts:
#	test/test_atomic.cpp
#	test/vs2019/etl.vcxproj.filters
2022-06-15 11:46:48 +01:00
John Wellbelove
f88999bb12 Latest updates to bit_stream_reader 2022-06-15 11:43:54 +01:00
John Wellbelove
9e0ff809fd Initial bit_stream_writer code 2022-06-15 11:43:12 +01:00
John Wellbelove
314cb452f7 Merge branch 'feature/variant-visit' into development
# Conflicts:
#	include/etl/private/variant_legacy.h
#	include/etl/private/variant_variadic.h
#	test/vs2019/etl.vcxproj.filters
2022-06-14 11:47:30 +01:00
John Wellbelove
c6e31f381f Added tests 2022-06-14 09:54:17 +01:00
John Wellbelove
cf24398209 Refactor etl::atomic implementations to allow non-(integrals/pointers/bool)
Changed etl::atomic and etl::mutex, with STL enabled, to be template aliases
2022-06-10 21:45:34 +01:00
Robin Söderholm
0ace9654da
Feature/variant visit (#554)
* add variant visit to c++11 and above

* visit legacy added

* update with multiple variants visit for variadic

* make it build on gcc and clang ubuntu
remove declval from utility.h due to ambiguity against type_traits.h version when using STL
2022-06-10 18:56:18 +01:00