* Added mechanism to catch reentrant calls to methods that could change states in FSM/HFSM
* Added missing include for HFSM unit tests
* Fixed error text spacing
* Disabled move/copy semantics for reentrancy guard
* Updated FSM generator
* Made move semantics only available for C++11 and higher
---------
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
Previous changes were wrongfully made in fsm.h and type_traits.h
instead of in their generator counterparts.
Add CI check to ensure generated files are in sync.
* Add checks to vector and fix test failures
* Add tests to vector
* Add tests to external buffer and non trivial
* All tests should be implemented
* Add checks to vector_pointer and vector_pointer_ext
* Get bad iterators from a second vector
* Removed ETL_NOEXCEPT from delegate operator(), call_if(), and call_or()
Removed ETL_NOEXCEPT from closureoperator(), call_if(), and call_or()
* Updated version and release notes
* Updated version and release notes
* Remove noexcept from delegate method stubs. (#1185)
In addition to removing noexcept from call_if, this is also needed to prevent
an abort when cancelling a pthread that is executing a delegate.
* Updated version and release notes
* Introduce Cast to void for Condition of Assert
Currently, in case we use a parameter of a function _only_ inside of an
ETL_ASSERT and the ETL configuration disables the ETL_ASSERT, we get a
compiler warning about an unused parameter. Therefore, this change casts
the condition of ETL_ASSERT to void.
* Use sizeof to avoid evaluation of Expression
In case we disable ASSERTs in e.g. non debug builds, we want to expand
it to "nothing", similar to how the std assert works. Introducing a cast
to void on the conidition would still evaluate it and potentially cause
side-effects. Therefore, we use the sizeof operator to ensure the
expression is not evaluated in case ASSERTs are disabled.
---------
Co-authored-by: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Co-authored-by: Marco Nilsson <marco@zyax.se>
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
* Removed ETL_NOEXCEPT from delegate operator(), call_if(), and call_or()
Removed ETL_NOEXCEPT from closureoperator(), call_if(), and call_or()
* Updated version and release notes
* Updated version and release notes
* Remove noexcept from delegate method stubs. (#1185)
In addition to removing noexcept from call_if, this is also needed to prevent
an abort when cancelling a pthread that is executing a delegate.
* Updated version and release notes
* Allow easy Creation of Generic Exceptions with just a Text
Today when using ETL_ASSERT you need to pass a concrete exception type.
However, it can be quite unhandy to define a custom exception type for
each assert, therefore we want to also allow to simply use the generic
etl::exception type and directly provide the message.
---------
Co-authored-by: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Co-authored-by: Marco Nilsson <marco@zyax.se>
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
* Removed ETL_NOEXCEPT from delegate operator(), call_if(), and call_or()
Removed ETL_NOEXCEPT from closureoperator(), call_if(), and call_or()
* Updated version and release notes
* Updated version and release notes
* Remove noexcept from delegate method stubs. (#1185)
In addition to removing noexcept from call_if, this is also needed to prevent
an abort when cancelling a pthread that is executing a delegate.
* Updated version and release notes
* Enforce Semicolon after ETL_ASSERT
---------
Co-authored-by: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Co-authored-by: Marco Nilsson <marco@zyax.se>
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>