1817 Commits

Author SHA1 Message Date
John Wellbelove
4737fd0f03 Removed etl::type_tag and replaced its use with etl::in_place_type_t 2024-03-10 20:23:30 +00:00
John Wellbelove
8826b56493 Fixed existing initializer_list member functions
Added additional initializer_list member functions
2024-03-10 20:22:08 +00:00
John Wellbelove
46b636694d Fixed existing initializer_list member functions
Added additional initializer_list member functions
2024-03-10 20:21:30 +00:00
John Wellbelove
a77e435924 Fixed unsynched generators 2024-03-10 09:33:05 +00:00
John Wellbelove
8593f95208 Merge branch 'pull-request/#858-fix-unique_ptr-assigning-nullptr-to-a-null-unique_ptr-causes-an-assert' into development 2024-03-09 15:25:04 +00:00
John Wellbelove
9a520a37aa Merge branch 'pull-request/#849-fix-string_stream-add-missing-initializations-of-const-format-specifiers' into development
# Conflicts:
#	support/Release notes.txt
2024-03-09 15:23:47 +00:00
Derek Ludwig
abb0494e71
fix(unique_ptr): assigning nullptr to a null unique_ptr causes an assert (#858) 2024-03-09 14:57:15 +00:00
Manuel Knörle
7c24f66ecc
fix(string_stream): add missing initializations of const format specifiers (#849)
The const variables "left" and "right" are const default initialized.
The C++ standard states the following:
"A class type T is const-default-constructible if default-initialization
of T would invoke a user-provided constructor of T."
Since the "left_soec" and "right_spec" structs are PODs they are not
initialized per default. Due to the "constness" the variable can not be
modified later one, therefore the POD is in a state in which it is not
useful at all.
Since the mentioned structs are empty there would be no problem
in this case. This is an issue in the C++ standard (CWG Issue 253).
Some compilers already handle this issue with their own solution
despite the fact, that the standard did not provide a solution yet.
For some exotic compilers  (e.g. Tasking for TriCore) the include of
the "string_stream" header caused compilation errors:
"const variable "etl::left" requires an initializer -- class "etl::private_basic_format_spec::left_spec" has no user-provided default constructor"

References:
https://en.cppreference.com/w/cpp/language/default_initialization
https://cplusplus.github.io/CWG/issues/253.html
https://stackoverflow.com/questions/7411515/why-does-c-require-a-user-provided-default-constructor-to-default-construct-a
https://stackoverflow.com/questions/24943665/why-is-a-constructor-necessary-in-a-const-member-struct
2024-03-09 14:56:06 +00:00
John Wellbelove
b6db4195a3 Refactored etl::is_default_constructible definition 2024-03-09 12:03:52 +00:00
John Wellbelove
40326db14c Added etl::is_default_constructible_v 2024-03-09 10:31:20 +00:00
John Wellbelove
0cf4396fcb #854 in-place construction of shared message 2024-03-09 10:11:00 +00:00
John Wellbelove
59178e495a Added etl::type_tag<T> 2024-03-09 10:03:26 +00:00
John Wellbelove
cbf08d1efa Refactored message_packet constructors 2024-03-09 10:03:01 +00:00
John Wellbelove
82b05faa59 Merge branch 'pull-request/#854-in-place-construction-of-shared-message' of https://github.com/ETLCPP/etl into pull-request/#854-in-place-construction-of-shared-message 2024-03-08 12:04:40 +00:00
John Wellbelove
3ca09462a8 Fixed implicitly disabled copy constructor 2024-03-08 12:02:41 +00:00
SanderSmeenkInspiro
268ca4e04b
Add support for in-place instantiation of a shared message in the message pool (#854)
* #850 Fixed names according to Arduino's guidelines

* #850 Fixed names according to Arduino's guidelines

* Add support for in-place instantiation of a shared message in the message pool

---------

Co-authored-by: John Wellbelove <john.wellbelove@etlcpp.com>
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2024-03-08 10:02:47 +00:00
John Wellbelove
1e1ce38113 #850 Fixed names according to Arduino's guidelines 2024-03-08 09:31:27 +00:00
John Wellbelove
e1d563a32f Added etl::is_default_constructible 2024-03-06 19:02:45 +00:00
John Wellbelove
95af36acd3 Refactored message_packet constructors 2024-03-06 19:02:00 +00:00
John Wellbelove
b89f62a789 Changed optional 'simple' types implementation for C++14 constexpr compatibility 2024-03-06 19:00:51 +00:00
John Wellbelove
131ed46598 Changed shadowed variables 2024-03-05 12:17:09 +00:00
John Wellbelove
de6e6ab13c Added tests for message base_type 2024-03-05 09:55:08 +00:00
John Wellbelove
c6dc700cf3 Added message type traits 2024-03-05 09:55:08 +00:00
John Wellbelove
4245e23bee Merge branch 'pull-request/#804-variant-varadic-default-constructed-state' into development 2024-03-04 20:08:24 +00:00
John Wellbelove
7f13eeb06c Added fixes for deque operator-(). Removed redundant operator that was causing compile errors for C++20
# Conflicts:
#	test/test_deque.cpp
2024-03-04 13:10:17 +00:00
John Wellbelove
9a25ccbbae Removed duplicated include 2024-03-04 12:55:22 +00:00
John Wellbelove
573333586f Comment spelling fix 2024-03-04 12:55:03 +00:00
John Wellbelove
26e346e11e Added fixes for deque operator-(). Removed redundant operator that was causing compile errors for C++20 2024-03-04 12:54:38 +00:00
John Wellbelove
a98d387a11 #850 Fixed names according to Arduino's guidelines 2024-02-24 11:49:54 +00:00
Manuel Seeböck
134f8e4209
variant varadic default constructed state (#804)
* fixed variant varadic default constructed state

* updated testcases to account for default contructor changes
2024-02-22 19:14:37 +00:00
John Wellbelove
f04fe0f383 Merge branch 'hotfix/#818-etl-apply-code-spell-check-across-entire-code-base' into development 2024-02-22 19:07:12 +00:00
Pisit Sawangvonganan
c92d970d09
etl: apply code spell check across entire code base (#818)
Utilized a spell checking tool to identify and correct spelling
throughout all files in the code base.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-02-22 19:06:23 +00:00
John Wellbelove
de3091a6bc Merge branch 'hotfix/#845-message_packet-missing-a-copy-constructor' into development 2024-02-18 12:08:26 +00:00
John Wellbelove
a2b7eb5d5a Added specific copy and move constructors for C++17 and above. 2024-02-18 12:08:11 +00:00
John Wellbelove
0791d39444 Merge branch 'pull-request/#843-In-subspan-function,-add-static-checks-on-extents' into development 2024-02-18 10:48:17 +00:00
John Wellbelove
aad8024ef1 Edited comments 2024-02-18 10:48:01 +00:00
mike919192
4b12e982e6
In subspan function, add static checks on extents (#843)
* In subspan function, add static checks on extents

* Change to ETL_STATIC_ASSERT.  Add static assert for first and last functions

* Add static assert to pre c++11 subspan

* Change extent to Extent to better match existing code
2024-02-16 09:21:25 +00:00
John Wellbelove
89eedd4563 Merge branch 'hotfix/#819-etl-optional-cannot-return-an-optional-object-of-self-from-member-function' into development
# Conflicts:
#	include/etl/optional.h
2024-02-15 11:10:31 +00:00
John Wellbelove
ea74d2f02f etl::optional C++ compatibility updates 2024-02-15 10:50:45 +00:00
John Wellbelove
3cbc73e0c9 Updated unit tests for constexpr optional 2024-02-09 11:04:39 +00:00
John Wellbelove
2619b9e307 Refactored etl::optional implementation 2024-02-02 12:42:07 +00:00
John Wellbelove
c92771088c #834 char_traits.h throws warning for GHS compiler 2024-01-31 09:50:11 +00:00
John Wellbelove
19eff9d69e Merge branch 'master' into development
# Conflicts:
#	include/etl/optional.h
2024-01-28 20:39:28 +00:00
John Wellbelove
3caffa148f Merge branch 'hotfix/#829-Possible-bug-on-assign-of-etl-array' into development 2024-01-28 20:35:22 +00:00
John Wellbelove
ad33083543 Added safe copy to etl::array::assign
etl::array::assign now returns an iterator
2024-01-28 20:35:07 +00:00
John Wellbelove
9ed453e7ef Merge branch 'hotfix/#827-Declaration-order-for-etl--first_set_bit_position-in-binary_h' into development 2024-01-28 09:20:49 +00:00
John Wellbelove
c0f2bec6ae Comment fix 2024-01-28 09:20:15 +00:00
Chiraffollo
84031659fa
Fix #832: Only copy/move storage value when optional is valid (#833) 2024-01-27 00:55:51 +00:00
John Wellbelove
1d6a068e0a Merge branch 'hotfix/#803-etl-unordered_map-buffer-overflow' into development 2024-01-25 16:35:56 +00:00
John Wellbelove
77513730e0 Fixed shadow warnings in all files
#823 Multiple variable shadowing warnings in private/bitset_new.h
2024-01-25 14:22:26 +00:00