µOS++ IIIe Reference 7.0.0
The third edition of µOS++, a POSIX inspired open source framework, written in C++
Loading...
Searching...
No Matches
system_error
Go to the documentation of this file.
1/*
2 * This file is part of the µOS++ distribution.
3 * (https://github.com/micro-os-plus)
4 * Copyright (c) 2016-2023 Liviu Ionescu. All rights reserved.
5 *
6 * Permission to use, copy, modify, and/or distribute this software
7 * for any purpose is hereby granted, under the terms of the MIT license.
8 *
9 * If a copy of the license was not distributed with this file, it can
10 * be obtained from https://opensource.org/licenses/mit/.
11 */
12
13/*
14 * The code is inspired by LLVM libcxx and GNU libstdc++-v3.
15 */
16
17#ifndef CMSIS_PLUS_ESTD_SYSTEM_ERROR_
18#define CMSIS_PLUS_ESTD_SYSTEM_ERROR_
19
20// ----------------------------------------------------------------------------
21
22#if !defined(__ARM_EABI__)
23#include <system_error>
24#endif
25
26// ----------------------------------------------------------------------------
27
28#pragma GCC diagnostic push
29#if defined(__clang__)
30#pragma clang diagnostic ignored "-Wc++98-compat"
31#pragma clang diagnostic ignored "-Wreserved-identifier"
32#endif
33
34// ----------------------------------------------------------------------------
35
36namespace os
37{
38 namespace estd
39 {
40
41 // ------------------------------------------------------------------------
42
43 [[noreturn]] void
44 __throw_system_error (int ev, const char* what_arg);
45
46#if 1
47 [[noreturn]] void
48 __throw_cmsis_error (int ev, const char* what_arg);
49#endif
50 // --------------------------------------------------------------------------
51
52 } /* namespace estd */
53} /* namespace os */
54
55#pragma GCC diagnostic pop
56
57// ----------------------------------------------------------------------------
58
59#endif /* CMSIS_PLUS_ESTD_SYSTEM_ERROR_ */
void __throw_system_error(int ev, const char *what_arg)
void __throw_cmsis_error(int ev, const char *what_arg)
System namespace.