Imre Kis | f55f2aa | 2024-05-28 15:55:19 +0200 | [diff] [blame] | 1 | /* |
Imre Kis | 264d300 | 2024-05-28 16:54:34 +0200 | [diff] [blame] | 2 | * Copyright (c) 2018-2024, Arm Limited and Contributors. All rights reserved. |
Imre Kis | f55f2aa | 2024-05-28 15:55:19 +0200 | [diff] [blame] | 3 | * |
| 4 | * SPDX-License-Identifier: BSD-3-Clause |
| 5 | */ |
| 6 | |
| 7 | #ifndef ASSERT_H |
| 8 | #define ASSERT_H |
| 9 | |
| 10 | #include <cdefs.h> |
| 11 | |
Imre Kis | 264d300 | 2024-05-28 16:54:34 +0200 | [diff] [blame] | 12 | #ifndef NDEBUG |
| 13 | void __dead2 __assert(const char *file, int line, const char *func, const char *assertion); |
Imre Kis | f55f2aa | 2024-05-28 15:55:19 +0200 | [diff] [blame] | 14 | |
Imre Kis | 264d300 | 2024-05-28 16:54:34 +0200 | [diff] [blame] | 15 | #define assert(e) ((e) ? (void)0 : __assert(__FILE__, __LINE__, __func__, #e)) |
Imre Kis | f55f2aa | 2024-05-28 15:55:19 +0200 | [diff] [blame] | 16 | #else |
Imre Kis | 264d300 | 2024-05-28 16:54:34 +0200 | [diff] [blame] | 17 | #define assert(e) ((void)(e)) |
Imre Kis | f55f2aa | 2024-05-28 15:55:19 +0200 | [diff] [blame] | 18 | #endif |
| 19 | |
| 20 | #endif /* ASSERT_H */ |