[x] Define MICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION to be 0/1 based on the value of MICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
[x] Add ::microlibrary::Assertion_Failure_Logger type alias
[x] Add ::microlibrary::Assertion_Failure_Logger_Pointer type alias
[x] Add ::microlibrary::register_assertion_failure_logger() function
[x] Add ::microlibrary::handle_assertion_failure() function
[x] Add ::microlibrary::trap_assertion_failure() function
[x] docs/error_handling.md (update)
[x] docs/usage.md (update)
[x] The ::microlibrary::Assertion_Failure_Logger type alias should be an alias for void ( void * data, ROM::String file, int line, Error_Code const & error ) noexcept if MICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION is false
[x] The ::microlibrary::Assertion_Failure_Logger type alias should be an alias for void ( Error_Code const & error ) noexcept if MICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION is true
[x] The ::microlibrary::Assertion_Failure_Logger_Pointer type alias should be an alias for std::add_pointer_t<Assertion_Failure_Logger>
[x] The ::microlibrary::register_assertion_failure_logger() function should have the following signature:
void register_assertion_failure_logger( Assertion_Failure_Logger_Pointer assertion_failure_logger, void * data ) noexcept;
[x] The ::microlibrary::handle_assertion_failure() function should have the following signature:
[[noreturn]] handle_assertion_failure() noexcept;
[x] The ::microlibrary::handle_assertion_failure() function should be defined as a weak alias for its default implementation
[x] The ::microlibrary::trap_assertion_failure should have the following signature if MICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION is false:
[x] The ::microlibrary::trap_assertion_failure should have the following signature if MICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION is true:
Add assertion failure handling facilities.
configuration/analyze-clang-tidy/CMakeLists.txt
(update)configuration/buiild-all-development_environment-test-automated/CMakeLists.txt
(update)configuration/build-arm_cortex_m0plus-hardware/CMakeLists.txt
(update)configuration/build-microchip_megaavr0-hardware-atmega4809/CMakeLists.txt
(update)configuration/build-microchip_megaavr-hardware-atmega2560/CMakeLists.txt
(update)configuration/build-microchip_megaavr-hardware-atmega328p/CMakeLists.txt
(update)configuration/build-microchip_sam_d21da1-hardware-atsamd21g18a/CMakeLists.txt
(update)CMakeLists.txt
(update)MICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
general project configuration optionMICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
general project configuration option validation-ffile-prefix-map
to compilation optionslibraries/microlibrary/ANY/ANY/CMakeLists.txt
(update)MICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
to be0
/1
based on the value ofMICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
libraries/microlibrary/ANY/ANY/include/microlibrary/assertion_failure.h
/libraries/microlibrary/ANY/ANY/source/microlibrary/assertion_failure.cc
(add)::microlibrary::Assertion_Failure_Logger
type alias::microlibrary::Assertion_Failure_Logger_Pointer
type alias::microlibrary::register_assertion_failure_logger()
function::microlibrary::handle_assertion_failure()
function::microlibrary::trap_assertion_failure()
functiondocs/error_handling.md
(update)docs/usage.md
(update)::microlibrary::Assertion_Failure_Logger
type alias should be an alias forvoid ( void * data, ROM::String file, int line, Error_Code const & error ) noexcept
ifMICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
is false::microlibrary::Assertion_Failure_Logger
type alias should be an alias forvoid ( Error_Code const & error ) noexcept
ifMICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
is true::microlibrary::Assertion_Failure_Logger_Pointer
type alias should be an alias forstd::add_pointer_t<Assertion_Failure_Logger>
::microlibrary::register_assertion_failure_logger()
function should have the following signature:::microlibrary::handle_assertion_failure()
function should have the following signature:::microlibrary::handle_assertion_failure()
function should be defined as a weak alias for its default implementation::microlibrary::trap_assertion_failure
should have the following signature ifMICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
is false:::microlibrary::trap_assertion_failure
should have the following signature ifMICROLIBRARY_SUPPRESS_ASSERTION_FAILURE_LOCATION_INFORMATION
is true: