John Wellbelove
15675f29a6
Updates to constexpr operators
2024-03-17 13:56:56 +00:00
Drew Rife
a8ca216f4e
Update ETL_CONSTEXPR and C++14 desgination from type_def ( #862 )
...
* feat: make type_def constexpr
* test: macro constexpr
* test: implicit constexpr
* test: get constexpr
* refactor: remove constexpr from assignment
* test: comparisons constexpr
* fix: cpp11 support for constexpr get method
* fix: c++11 issue with constexpr get reference
* refactor: remove constexpr from the get methods
* refactor: make assignment operators non-constexpr
* refactor: remove constexpr from assignment and get
* refactor: make other methods ETL_CONSTEXPR14
* test: operator preincrement
* test: postincrement
* test: predecrement constexpr
* test: post decrement constexpr
* fix: post decrement test
* test: addition assignment constexpr
* test: subtraction assignment constexpr
* test: multiplication assignment operator
* test: and assignment constexpr
* test: or assignment constexpr
* test: xor assignment constexpr
* tet: left shift assignment constexpr
* test: right shift assignment constexpr
* test: operator modules assignment
* style: revert personal clang-format changes
* refactor: use free functions to test
* refactor: remove constexpr non-constexpr test functions
* style: remove erroneous tab
2024-03-16 12:07:00 +00:00
John Wellbelove
7b358dd35a
Added constexpr to compare functions
2024-03-16 11:26:15 +00:00
Benzinnos
80af5a4891
Add eq and ne operators for compare utility. ( #863 )
...
* Add eq and ne operators
* Add three-way comparison to compare utils.
* Three-way comparison test now using own test data.
* Rename test struct for three-way comparison test.
---------
Co-authored-by: grigorev <grigorev@protei.ru>
2024-03-15 18:15:07 +00:00
John Wellbelove
cb2700e75d
Modified accepts() message router functions to interrogate subscribed and successor routers to achieve consistency.
2024-03-15 13:01:59 +00:00
John Wellbelove
80613827c9
Turned etl::send_message into templates so that direct calls to concrete routers are possible
2024-03-15 10:58:11 +00:00
Drew Rife
48c496cd44
Implement Constexpr Strong Typedef ( #861 )
...
* feat: make type_def constexpr
* test: macro constexpr
* test: implicit constexpr
* test: get constexpr
* refactor: remove constexpr from assignment
* test: comparisons constexpr
* fix: cpp11 support for constexpr get method
2024-03-13 09:56:47 +00:00
John Wellbelove
b807bad3e3
#847-Add-has_active_timer-to-callback_timer
2024-03-13 09:54:29 +00:00
John Wellbelove
2a5565791c
Deleted etl::span fixed extent default constructor
2024-03-11 18:34:51 +00:00
John Wellbelove
e5523d2d0b
Added C++11 conditional compilation around rvalue reference functions
2024-03-11 18:11:44 +00:00
John Wellbelove
881f3d8e62
#841 Change push to push_back on containers, so they can be used with std::back_inserter
2024-03-11 18:10:46 +00:00
John Wellbelove
1cc94b6418
#827 Declaration order for etl::first_set_bit_position in binary.h
2024-03-11 18:09:50 +00:00
John Wellbelove
ce79721a4d
#855 Strange expression in volatile atomic operator--
2024-03-11 18:09:19 +00:00
John Wellbelove
199bb131df
Minor fixes
2024-03-11 08:37:13 +00:00
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
John Wellbelove
664bdac4bd
Initial refactor
2024-01-21 15:02:01 +00:00
John Wellbelove
51b10c498c
Added to_ulong() and to_ullong()
2024-01-20 21:03:17 +00:00
John Wellbelove
5e78b48b6c
#815 etl::remove_if calls predicate twice for first iterator, where predicate returns true.
2024-01-20 18:35:20 +00:00
John Wellbelove
816e87ae00
Merge branch 'feature/#774-Truncating-access-for-etl-bitset' into development
...
# Conflicts:
# test/vs2022/etl.vcxproj.filters
2024-01-20 18:32:59 +00:00
John Wellbelove
94ee20e2fd
Fix C++ standard syntax compatibility for repair()
2024-01-20 18:10:34 +00:00
John Wellbelove
83e23b9adf
Fix C++ standard syntax compatibility for repair()
2024-01-20 10:08:15 +00:00
John Wellbelove
1825c54570
Minor C++ standards compatibility tweaks
2024-01-20 09:44:51 +00:00
John Wellbelove
47d3d67a14
Modified definition of bitset::Storage_Type for compatibility with C++03
2024-01-18 09:54:07 +00:00
John Wellbelove
0770e76d42
Merge branch 'pull-request/#812-Implement-SAE-J1850-CRC8' into development
2024-01-18 09:30:11 +00:00
Drew Rife
ac4c3e67e6
Implement SAE J1850 CRC8 and "Zero" version ( #812 )
...
* feat: added 8bit j1850 crc parameters
* feat: add crc8 j1850 header
* feat: add crc j1850 zero header
* feat: add the crc j1850 headers to crc.h
* test: j1850 4 constructor
* build: crc8 j1850 tests
* test: crc8 j1850 4 add values
* test: crc8 j1850 4 add range
* test: crc8 j1850 4 add range via iterator
* test: crc8 j1850 4 add range endian
* test: crc8 j1850 16 constructor
* test: crc8 j1850 16 add values
* test: crc8 j1850 16 add range
* test: crc8 j1850 16 add range via iterator
* test: crc8 j1850 16 add range endian
* test: crc8 j1850 156 constructor
* test: crc8 j1850 256 add values
* test: crc8 j1850 256 add range
* test: crc8 j1850 add range via iterator
* test: crc8 j1850 256 add range endian
* test: initial commit of crc j1850 zero tests
* build: crc8 j1850 zero tests
* test: crc8 j1850 zero 4 add values
* test: crc8 j1850 zero 4 add range
* test: crc8 j1850 zero 4 add range via iterator
* test: crc8 j1850 zero 4 add range endian
* test: crc8 j1850 zero 16 constructor
* test: crc8 j1850 zero 16 add values
* test: crc8 j1850 zero 16 add range
* test: crc8 j1850 zero 16 add range via iterator
* test: crc8 j1850 zero 16 add range endian
* test: crc8 j1850 zero 256 constructor
* test: crc8 j1850 zero 256 add values
* test: crc8 j1850 zero 256 add range
* test: crc8 j1850 zero 256 add range via iterator
* test: crc8 j1850 zero 256 add range endian
* fix: header include guards
2024-01-13 11:48:55 +00:00
John Wellbelove
3d3dad8499
Work in progress
2024-01-13 11:45:57 +00:00
John Wellbelove
3ca624efb0
Changed case of template constants
2024-01-13 11:45:38 +00:00
John Wellbelove
8f6055e99b
Removed ETL_STATIC_CONSTANT
2024-01-13 11:44:59 +00:00
John Wellbelove
ce7ce3bb72
Make binary functor operator() const
2024-01-13 11:44:40 +00:00
John Wellbelove
a7271e470a
Work in progress
...
Comprehensive bitset type comparisons
2024-01-04 00:11:54 +00:00
John Wellbelove
78d2ccf55e
Work in progress
...
Finished updating explicit single element tests for bitset_ext
2023-12-29 16:00:10 +00:00
John Wellbelove
58f469ebd4
Work in progress
...
Finished updating explicit single element tests
2023-12-29 09:33:20 +00:00
John Wellbelove
c5c88ae010
Work in progress
2023-12-18 15:28:32 +00:00
John Wellbelove
aa4b27b6e6
Work in progress for etl::bitset::extract
2023-12-18 15:21:05 +00:00
John Wellbelove
236af6190a
Work in progress for etl::bitset::extract
2023-12-18 15:21:05 +00:00
John Wellbelove
2c8aafedcd
Work in progress for etl::bitset::extract
2023-12-18 15:21:05 +00:00
John Wellbelove
a5b425f03e
Work in progress for etl::bitset::extract
2023-12-18 15:21:04 +00:00
John Wellbelove
d3b3fdbd40
Fixed 'nodiscard' keyword errors
2023-12-18 11:28:12 +00:00
John Wellbelove
c75617c2b6
#805 legacy etl::bitset set/reset does not work if the element type is greater than 8 bit
2023-12-18 11:07:42 +00:00
John Wellbelove
d17f422dac
Added binary functors for ~ & | ^
2023-12-18 11:02:54 +00:00
John Wellbelove
7bb125a360
Added etl::generate algorithm
2023-12-17 12:54:01 +00:00
John Wellbelove
59cd9e66d7
#807 Change in legacy etl::bitset with nullptr construction + error handling
...
Harmonised operation of legacy and new etl::bitset
Added ETL_ASSERT checks for nullptr buffer pointers for etl::bitset_ext
2023-12-16 12:57:36 +00:00
John Wellbelove
8f88aa0141
Fixed etl::optional operator =() for invalid values with non-pod types
2023-12-15 10:06:21 +00:00
John Wellbelove
489429bd7c
Fixed operator == implementations
2023-12-13 09:58:44 +00:00
John Wellbelove
dd060d5013
Updated version and release
2023-12-10 16:25:45 +00:00
John Wellbelove
f500cd29a8
Prioritize ETL_TARGET_OS_* for mutex selection
2023-12-10 12:57:39 +00:00
John Wellbelove
783be74dd3
Updated version and release notes
2023-12-08 09:26:23 +00:00
John Wellbelove
eba9c5797d
Added CRC1 (AKA Parity)
...
Modified test suit names
2023-12-08 09:03:17 +00:00
John Wellbelove
9161413337
Merge branch 'hotfix/#799-Iterator-returned-by-crc.input()-does-not-satisfy-std--output_iterator' into development
2023-12-08 08:46:34 +00:00
John Wellbelove
6775dba40d
Fixed output iterator for frame_check_sequence and pseudo_moving_average
2023-12-08 08:46:16 +00:00
John Wellbelove
4b97e82876
Added CRC1 (AKA Parity)
...
Modified test suit names
2023-12-07 16:19:46 +00:00
John Wellbelove
1027e66279
#795 etl::private_variant doesn't fully respect the chosen error reporting.
2023-12-05 14:24:32 +00:00
John Wellbelove
bdba48016b
typo
2023-12-05 09:59:44 +00:00
John Wellbelove
8aa799a3cb
Added check for NAN definitions for C++11 FP functions
2023-12-05 09:53:47 +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
4606e33a6d
Merge branch 'pull-request/#782-Set-is-full-error-when-adding-existing-item' into development
2023-11-24 11:26:55 +00:00
İsmail Tüzün
c6fecd9d7c
Set is full error when adding existing item ( #782 )
...
* Fixed set_full error when inserting existing item.
* Added test inserting existing value to full set
* Added test inserting existing value to full flat_set and reference_flat_set
* Fixed unordered_set_full error when inserting existing item.
2023-11-24 11:24:52 +00:00
John Wellbelove
b732b14c53
Update version and release notes
2023-11-24 11:22:50 +00:00
John Wellbelove
04211563f5
Fix useless cast
2023-11-24 10:23:12 +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
f5879a757a
Merge branch 'hotfix/#779-hash-h-warnings-produced-with-Wfloat-equal' into development
...
# Conflicts:
# test/run-tests.sh
# test/vs2022/etl.vcxproj.filters
2023-11-21 17:55:57 +00:00
John Wellbelove
61da85fa77
Removed float-equal warnings
...
Added functions is_nan, is_infinity, is_zero & is_exactly_equal
Fixed array-bounds warnings for GCC and -O2 optimisation
2023-11-21 15:13:24 +00:00
John Wellbelove
03cbf64c42
Merge branch 'hotfix/#787-etl-expected-doesn't-compile-with-ETL_LOG_ERRORS' into development
2023-11-14 10:35:32 +00:00
John Wellbelove
6c3eddaf76
Changed etl::expected_invalid to non-template type
...
Added tests for rereference operators
2023-11-14 10:35:04 +00:00
John Wellbelove
521bae91eb
Merge branch 'hotfix/#781-etl-multi_span-iterator-function-operator-fails-if-first-span-is-empty' into development
2023-11-14 00:08:57 +00:00
John Wellbelove
b6650120f8
Added u8string + utilities
...
Changed char types to unsigned 'least' types
2023-11-14 00:06:57 +00:00
John Wellbelove
c400779905
#781 etl::multi_span::iterator::operator *() fails if first span is empty
2023-11-03 18:37:25 +01:00
John Wellbelove
5622a98571
Refactoring
2023-10-31 11:12:07 +01:00
John Wellbelove
23a76d2371
Refactored back_inserter support
2023-10-29 09:01:08 +01:00
John Wellbelove
9a5ed96f8e
Renamed test file
2023-10-29 09:00:49 +01:00
John Wellbelove
02e69f5757
Added padding flag
2023-10-29 09:00:49 +01:00
John Wellbelove
b1a042385f
Removed static from encode and decode functions
2023-10-29 09:00:49 +01:00
John Wellbelove
0523fc869a
Static version of Base64 - RFC-6848 - No optional padding
2023-10-29 09:00:49 +01:00
John Wellbelove
58c55a8bb6
Updates
2023-10-29 08:59:11 +01:00
John Wellbelove
f9233f99ab
Refactor to support multiple RFCs
2023-10-29 08:58:11 +01:00
John Wellbelove
8db9613320
Renamed test file
2023-10-29 08:58:11 +01:00
John Wellbelove
5016d4033f
Added padding flag
2023-10-29 08:58:10 +01:00
John Wellbelove
456a56e7aa
Removed static from encode and decode functions
2023-10-29 08:58:10 +01:00
John Wellbelove
25338fb0d1
Static version of Base64 - RFC-6848 - No optional padding
2023-10-29 08:58:10 +01:00
John Wellbelove
91a150e37b
Updates
2023-10-29 08:58:10 +01:00
John Wellbelove
47e16bd010
Updated version and release notes
2023-10-28 22:52:41 +02:00
John Wellbelove
09c3b30f83
Revert "Added add_lvalue_reference for rvalue reference"
...
This reverts commit a09efffb8fadb0c25923fe5435b7b1f9bdd673f1.
2023-10-28 11:38:54 +02:00
John Wellbelove
a09efffb8f
Added add_lvalue_reference for rvalue reference
2023-10-28 11:35:38 +02:00
John Wellbelove
f8d5c31f66
Refactored swap
2023-10-28 11:33:25 +02:00
John Wellbelove
39c3ca8dea
Merge remote-tracking branch 'origin/pull-request/#777-Allow-Building-Tests-as-Submodule-and-GCC-less-than-11' into development
2023-10-27 10:20:58 +02:00
jmartens-42
13759c1cbb
moved BUILD_TESTS check outside of root cmake check to allow building tests in submodules ( #777 )
...
added check for GNUC >= 11 for -Wstringop-overread ignore pragma since it isn't introduced until gcc/g++-11
Co-authored-by: Josh <joshua.martens@magna.com>
2023-10-26 20:07:23 +02:00
John Wellbelove
e8eeeba875
Merge branch 'master' into development
2023-10-23 09:59:41 +01:00
John Wellbelove
85f2e09ef7
#776 Add missing semicolons
2023-10-23 09:35:01 +01:00
H1MSK
837a5156b4
Add missing semicolons ( #776 )
2023-10-22 16:16:04 +01:00
John Wellbelove
5ca6e05eb8
Added etl::string interface to etl::base64
2023-10-15 11:44:23 +01:00
John Wellbelove
21a9b884bc
Added etl::string::fill()
2023-10-15 11:44:23 +01:00
John Wellbelove
6bc244cf8e
Final changes
2023-10-15 11:44:22 +01:00
John Wellbelove
f7281dc680
Initial code
2023-10-15 11:44:22 +01:00
John Wellbelove
91a357d18d
static_cast for string_view & array_view size() member functions
2023-10-15 11:44:22 +01:00
John Wellbelove
92e880f3b1
#773 Return raw pointer for etl::multi_span::operator->()
2023-10-14 21:34:39 +01:00
David Hebbeker
e631a0fd9b
Return raw pointer for etl::multi_span::operator->(). ( #773 )
...
- using `operator*()` in case getting the current element is changed one day
- using `&` to get the address
Simply returning `p_value` may break in case the internal type of `p_value` would change. This way it is more robust to changes.
2023-10-13 20:48:46 +01:00
John Wellbelove
24b145896d
Updated versions
2023-09-27 17:56:10 +01:00
John Wellbelove
11155eb9f1
Fixed alignment functionality
2023-09-27 13:48:53 +01:00
John Wellbelove
d507106764
Merge branch 'development' of https://github.com/ETLCPP/etl into development
2023-09-24 19:56:38 +01:00
John Wellbelove
754ac74d5a
Updated release notes
2023-09-24 19:48:15 +01:00
John Wellbelove
61713b6ce4
Refactored storage for etl::optional
2023-09-24 18:54:24 +01:00
John Wellbelove
1f368ead6c
#766 etl::unique_ptr::reset() can call deleter with nullptr argument
2023-09-23 11:29:14 +01:00
John Wellbelove
40df32148e
Merge branch 'hotfix/#749-Code-change-causes-warning-with-armcc-compiler' into development
2023-09-21 18:25:01 +01:00
John Wellbelove
2b6f6de846
Commets added
2023-09-21 18:22:48 +01:00
John Wellbelove
9a73f5e3a5
Enabled etl::overload for C++11 & C++14
2023-09-20 23:06:45 +01:00
Andreas
ee8be059e8
Remove BOM from random.h ( #762 )
...
random.h is the only file with UTF8-BOM and IAR can not handle it.
For compatibility reasons it should be removed.
Co-authored-by: Andreas Pelczer <pelczer@stoerk-tronic.com>
2023-09-20 23:06:45 +01:00
Andreas
b2adb0de9f
Make "private" includes relativ ( #761 )
...
Avoid "include not found" when indirectly including etl-header
Co-authored-by: Andreas Pelczer <pelczer@stoerk-tronic.com>
2023-09-20 23:06:33 +01:00
Soma Veszelovszki
93091cff0f
Fixed: move assignment not working for non-empty containers ( #759 )
2023-09-20 23:06:32 +01:00
John Wellbelove
9311256931
Possible fix for #756
2023-09-20 23:06:32 +01:00
John Wellbelove
0216ecf020
Updated version and release notes
2023-09-20 23:06:32 +01:00
John Wellbelove
4469aeb63c
Added conversion operators to std::span
...
MacOS clang span issue
MacOS clang span issue
MacOS clang span issue
MacOS clang span issue
MacOS clang span issue
2023-09-20 23:06:32 +01:00
John Wellbelove
d51784765f
const_reference at(size_t i) const is only constexpr from C++14
2023-09-04 08:08:34 +01:00
John Wellbelove
a4879c8908
#755 warning about constexpr in array.h
2023-09-03 23:50:03 +01:00
John Wellbelove
01d96609cf
#753 [porting] IAR's overload resolution struggles with etl::span::span(etl::array&)
...
#754 ambiguous etl::bit_stream_reader::bit_stream_reader() for some etl::span
2023-09-02 14:50:24 +01:00
John Wellbelove
7fdaa7c9a4
Updated vesrion and release notes
2023-08-29 13:48:24 +01:00
John Wellbelove
94654689e8
Removed semicolon warnings
2023-08-29 09:25:58 +01:00
John Wellbelove
b38afd7fc9
Updated version and release notes
2023-08-26 11:49:17 +01:00
John Wellbelove
5402a3ed14
Added destructor to CMSIS_RTOS2 mutex
2023-08-26 10:46:05 +01:00
John Wellbelove
c92ab94220
Change to require semicolons after debug count macros.
...
Added error assert for vector reserve greater than capacity.
2023-08-25 21:08:01 +01:00
John Wellbelove
ee7fc16192
Merge branch 'feature/#744-get-time-when-next-timer-will-expire-etl--callback_timer' into development
...
# Conflicts:
# .gitignore
# include/etl/intrusive_forward_list.h
2023-08-25 15:38:13 +01:00
John Wellbelove
a65725a283
Merge branch 'hotfix/#746-Missing-etl--legacy--variant-overload-of-emplace-with-0-Arguments' into development
2023-08-25 15:36:05 +01:00
John Wellbelove
076896e329
Remove used variable
2023-08-25 15:14:26 +01:00
John Wellbelove
f5f0ef35f5
Remove used variable
2023-08-25 12:25:38 +01:00
John Wellbelove
7e31561363
Fix issue of release of an object on empty an pool
2023-08-25 10:32:25 +01:00
John Wellbelove
53084ae932
Added c++03 zero parameter emplace member functions
2023-08-25 02:05:46 +01:00
John Wellbelove
7e266687a2
Added C++03 compatible etl::move or etl::move_backward
2023-08-23 19:54:28 +01:00
John Wellbelove
f4ca3cefe1
Added 'sentence case' versions of constants
2023-08-21 21:33:44 +01:00
John Wellbelove
11daaa398b
Added time_to_next() status function
2023-08-21 20:58:44 +01:00
John Wellbelove
870759fcab
Removed unused variable
...
Minor format edit
2023-08-21 20:57:33 +01:00
John Wellbelove
77fb39c9d2
Removed redundant #includes
2023-08-20 20:16:27 +01:00
John Wellbelove
06761ca562
#745 Assertion triggered in hash.h when compiling for MSP430
2023-08-19 12:27:57 +01:00
John Wellbelove
faed17ab99
Allow C++03 delegate in etl::callback_timer
2023-08-18 20:54:47 +01:00
John Wellbelove
45fb06af3f
Changes require for non-virtual messages
2023-08-18 20:51:36 +01:00
John Wellbelove
13d723f2db
Merge branch 'development' of https://github.com/ETLCPP/etl into development
2023-08-15 12:41:13 +01:00
David Hebbeker
9985539787
Remove some unreachable code in bitset_new.h ( #743 )
...
Warning[Pe111]: statement is unreachable
2023-08-15 12:39:28 +01:00
John Wellbelove
27e9e3c1b8
Added support for self transitions
2023-08-13 14:10:55 +01:00
John Wellbelove
2c3fa4a796
Added multi char type strcmp, strncmp, strcpy & strncpy
2023-08-13 10:39:02 +01:00
John Wellbelove
9d59e2d77e
Edited comments
2023-08-13 10:36:52 +01:00
John Wellbelove
2ec6ed54db
Merge branch 'pull-request/#741-add-stringify-macro' into development
2023-08-13 10:34:11 +01:00
John Wellbelove
81815a2dc9
Updated stringify macro for variadic parameters
2023-08-13 10:33:48 +01:00
David Hebbeker
cab9b76821
add stringify macro ( #741 )
...
* Add include/linux/stringify.h from Linux kernel 2.6.12-rc2
(cherry picked from commit 1da177e4c3 )
* Make __stringify support variable argument macros too
For example:
__stringify(__entry->irq, __entry->ret)
will now convert it to:
"REC->irq, REC->ret"
It also still supports single arguments as the old macro did.
Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
Acked-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
LKML-Reference: <49DC6751.30308@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
(cherry picked from commit 8f7c2c3731 )
* Add documentation.
* Adjust names in order to satisfy naming convention.
* Use __VA_ARGS__ instead a GNU extension as this works with more compilers.
Works with the newest versions of ICCAVR, GCC, CLANG and MSCV. C++11 may be required.
* Adjust to ETL folder structure.
* Change include guard to the one usual in ETL.
* Add definition guard for STRINGIFY.
---------
Co-authored-by: Linus Torvalds <torvalds@ppc970.osdl.org>
Co-authored-by: Zhaolei <zhaolei@cn.fujitsu.com>
2023-08-11 10:09:06 +01:00
John Wellbelove
81d2ec0f8d
Added etl::bit_v for C++17
2023-08-10 12:08:42 +01:00
John Wellbelove
91eb44d657
Updated release notes and version
2023-08-10 12:08:41 +01:00
John Wellbelove
d1aaa77ade
Resolve all C++ -O2 warnings
...
Resolve all C++ -O2 warnings
Resolve all C++ -O2 warnings
2023-08-10 12:08:18 +01:00
John Wellbelove
6eb5b359ad
Updated release notes and version
2023-08-09 08:57:20 +01:00
John Wellbelove
d7fd06f795
Resolve all C++ -O2 warnings
2023-08-07 08:04:19 +01:00
John Wellbelove
8b5ff06e44
Resolve all C++ -O2 warnings
2023-08-06 23:39:11 +01:00
John Wellbelove
2b1d48d735
Added pessimizing-move warning disable for GCC
2023-08-04 11:58:31 +01:00
John Wellbelove
547184442d
Possible fix
2023-08-04 11:58:31 +01:00
John Wellbelove
5fbf6c7684
Merge branch 'hotfix/#737-etl-equal-specialisation-for-etl--span-is-deduced-wrongly-when-using-STL-and-CPP20' into development
2023-08-04 11:58:08 +01:00
John Wellbelove
591996e21a
Added C++20 four iterator std::equal variants
2023-08-04 11:57:49 +01:00
John Wellbelove
33a4a29caf
Merge branch 'hotfix/#739-Could-not-compile-ETL-with-gcc-9.4.0-(C++11)' into development
2023-08-04 07:18:22 +01:00
John Wellbelove
a6b912e3e0
Added compatibility for GCC-9 + C++11
2023-08-04 07:18:03 +01:00
John Wellbelove
1b70808386
Changed assignment from etl::unexpected to use variant::emplace instead of direct assignment
2023-08-03 09:54:31 +01:00
John Wellbelove
21a4b523e9
Added missing return reference from emplace member function
2023-08-03 09:53:13 +01:00
John Wellbelove
0eaeb7977f
Updated version and release notes
2023-07-18 19:05:11 +01:00
John Wellbelove
75be75bbec
Merge branch 'pull-request/#733-Fix-etl--expected-assignment-from-etl--unexpected' into development
2023-07-18 11:33:13 +01:00
John Wellbelove
6da22a63e0
Merge branch 'pull-request/#734-add-missing-new-line-at-end-of-file' into development
2023-07-18 11:33:06 +01:00
John Wellbelove
2bbcf696dd
Merge branch 'pull-request/#735-fix-bug-in-minmax-include-mismatch-detection' into development
2023-07-18 11:32:58 +01:00
John Wellbelove
8d1219bd72
#733-Fix-etl--expected-assignment-from-etl--unexpected
...
Added unit tests for changes
Added missing etl::forward in etl::expected::emplace
2023-07-18 10:46:29 +01:00
John Wellbelove
4a1dc781d6
#733-Fix-etl--expected-assignment-from-etl--unexpected
...
Added unit tests for changes
2023-07-18 09:40:47 +01:00
Manuel Knörle
1a3c2a788b
style: add missing new line at end of file ( #734 )
2023-07-18 08:12:53 +01:00
Vitmark97
9cd491e5aa
Fix etl::expected assignment from etl::unexpected ( #733 )
...
* Fix etl::expected assignment from etl::unexpected
* Make it more clear that assignment is from etl::unexpected
2023-07-18 06:40:14 +01:00
Manuel Knörle
cea24a6c20
fix(minmax): fix bug in minmax include mismatch detection ( #735 )
...
When using Green Hills, IAR or TASKING compiler the define
'ETL_PUSHED_MIN_MAX' is not set in 'minmax_push.h'.
Therefore the include of 'minmax_pop.h' always leads to
a compilation error (minmax_pop without matching push).
2023-07-18 06:39:15 +01:00
John Wellbelove
85ec267ea8
Refactored etl::forward_like for C++11 compatibility
2023-07-15 19:37:05 +01:00
John Wellbelove
73c96a4c6c
Added etl::forward_like
2023-07-15 09:51:08 +01:00
John Wellbelove
24272d99c0
Enhanced min/max push/pop headers
2023-07-12 10:44:36 +01:00
John Wellbelove
0f6200e09c
Added return to end of file
2023-07-12 10:41:02 +01:00
John Wellbelove
86b147d2a4
Updated version and release notes
2023-07-10 21:10:07 +01:00
Manuel Seeböck
8c47217982
fixed optional access operators ( #730 )
2023-07-10 19:47:28 +01:00
John Wellbelove
4c4c597fe5
Removed redundant ';'
2023-07-06 20:09:12 +01:00
John Wellbelove
e6a921c094
Add etl::forward wrapper around variadic arguments for create()
2023-07-05 20:18:24 +01:00
John Wellbelove
98c74bfda8
Updated version and release notes
2023-07-04 18:57:44 +01:00
John Wellbelove
635135dbc3
Synchronised generators with headers
2023-07-04 18:54:58 +01:00
Chiraffollo
1292c5eab8
Fix issue #722 Bitset accesses memory out of bounds ( #724 )
...
* Fix issue #722 Bitset accesses memory out of bounds
* Fix #709 in intrusive_list operator-> (#721 )
* Fix issue #722 Bitset accesses memory out of bounds
2023-07-04 11:46:00 +01:00
John Wellbelove
3760b26339
Fixed rvalue overloads
2023-07-04 11:46:00 +01:00
Vitmark97
98be5be390
Added conditionally explicit etl::expected constructors that work in C++11 ( #719 )
2023-07-04 11:46:00 +01:00
John Wellbelove
4bcc0c2568
Fixed address sanitizer issues in unit tests
2023-07-04 11:45:11 +01:00
John Wellbelove
197e0815e6
PR for constexpr for etl::array
2023-07-04 11:45:11 +01:00
John Wellbelove
2d41441f02
Added ETL_CONSTEXPR11 as a synonym for ETL_CONSTEXPR
2023-07-04 11:45:11 +01:00
Vitmark97
5ed39c0e09
Allow manipulation of etl::array in constexpr function ( #718 )
...
* iota can be contexpr
* Make it possible to iterate over etl::array in constexpr functions
2023-07-04 11:45:10 +01:00
John Wellbelove
3510fd61a9
Updated intrusive links
...
Refactored intrusive_forward_list so that links report status consistantly
2023-07-04 11:45:10 +01:00
John Wellbelove
ed589c91c6
Added etl::is_forward_link, etl::is_bidirectional_link and etl::is_tree_link to intrusive links.
...
Added Constructors, access and status member functions to intrusive links.
2023-07-04 11:45:10 +01:00
John Wellbelove
c3c12da861
Initial updates and fixes
2023-07-04 11:45:10 +01:00
John Wellbelove
cfa39d9b4e
Removed commented out line
2023-07-04 11:45:09 +01:00
John Wellbelove
5eec513d8a
Added clear() to delegate
2023-07-04 11:45:09 +01:00
John Wellbelove
a0af0f9415
Modified the POD specialisation to accept objects that have deleted default constructors
2023-07-04 11:45:09 +01:00
John Wellbelove
8dad4e8efc
Removed blank line
2023-07-04 11:41:01 +01:00
John Wellbelove
c9bb331f4c
Added C++11 alignment matcher code
2023-07-04 11:41:01 +01:00
John Wellbelove
81cd2df218
Removed C++14 only feature from variant
2023-07-04 11:41:01 +01:00
Sencer Yazıcı
d5efffa96f
fix missing class key with friend ( #708 )
2023-07-04 11:41:01 +01:00
John Wellbelove
177299977d
Refactored visitor and variant to allow const variants and fix passing references to visitors
2023-07-04 11:41:00 +01:00
Chiraffollo
7f990d7a76
Fix #709 in intrusive_list operator-> ( #721 )
2023-07-01 12:40:07 +01:00
Daniel Jour
96092d841f
optional::operator=(nullopt_t) sets valid to false ( #715 )
...
* optional::operator=(nullopt_t) sets valid to false
Fixes https://github.com/ETLCPP/etl/issues/714
* Add test case for #714
2023-06-17 08:19:03 +01:00
Pasi Miettinen
f55fb92540
parameter_pack: Fix C++17 pedantic build ( #707 )
...
Co-authored-by: Pasi Miettinen <pasim@onenav.ai>
2023-06-09 18:15:03 +01:00
John Wellbelove
085d2c580a
Fix flat map const placement new issue
2023-06-04 15:57:37 +01:00
John Wellbelove
5f9290b8d1
#698 Behaviour of bidirectional_link nodes
2023-05-31 11:32:46 +01:00
John Wellbelove
e0747bfd32
Merge branch 'development' of https://github.com/ETLCPP/etl into development
2023-05-31 10:30:12 +01:00
Manuel Seeböck
adfaf07874
optional(POD) explicit operator bool ( #699 )
2023-05-31 10:29:43 +01:00
John Wellbelove
76bb902034
Added missing header include.
2023-05-28 10:03:46 +01:00
Michael Morgan
5ddc11b57d
Add rvalue accessors to expected and optional, and update constructors. ( #690 )
...
* Add rvalue methods to optional and expected.
* Fix constructors in expected.h.
* Fix sanity checks.
---------
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2023-05-20 11:43:49 +01:00