14 Commits

Author SHA1 Message Date
John Wellbelove
a0668ff27f Fixed etl::expected in-place test syntax 2025-01-24 14:32:33 +00:00
John Wellbelove
efa7c19e8b Fixed etl::expected in-place constructors 2025-01-22 14:50:42 +00:00
Chiraffollo
64be8a63d7 Add missing swap implementations for expected (#928)
* Fix missing partial specialisation equal operators

* Add missing swap implementations for expected
2024-07-28 16:47:12 +01:00
Chiraffollo
0c87973061 Fix missing partial specialisation equal operators (#927) 2024-07-28 16:47:12 +01:00
Chiraffollo
752617ab4c Fix issue #923 equality operator for class expected (#926)
* Add equality operators for class expected

* Add missing unequal operator

---------

Co-authored-by: Oliver Marx <omarx@de.pepperl-fuchs.com>
2024-07-28 16:47:12 +01: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
6c3eddaf76 Changed etl::expected_invalid to non-template type
Added tests for rereference operators
2023-11-14 10:35:04 +00: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
4a1dc781d6 #733-Fix-etl--expected-assignment-from-etl--unexpected
Added unit tests for changes
2023-07-18 09:40:47 +01:00
John Wellbelove
3760b26339 Fixed rvalue overloads 2023-07-04 11:46:00 +01:00
John Wellbelove
363a3e2dab Fix test array sizes
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
2023-04-02 11:06:43 +01:00
John Wellbelove
a1ce449d83 C++03 compatibility changes 2023-02-09 14:22:14 +01:00
John Wellbelove
1d12a86114 Work in progress 2023-02-08 16:40:15 +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