1 /*
2 * Copyright © 2021, Keith Packard <keithp@keithp.com>
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7 #include "picolibc-hooks.h"
8
9 #ifdef CONFIG_PICOLIBC_ASSERT_VERBOSE
10
__assert_func(const char * file,int line,const char * function,const char * expression)11 FUNC_NORETURN void __assert_func(const char *file, int line,
12 const char *function, const char *expression)
13 {
14 #if __ASSERT_ON
15 __ASSERT(0, "assertion \"%s\" failed: file \"%s\", line %d%s%s\n",
16 expression, file, line,
17 function ? ", function: " : "", function ? function : "");
18 #endif
19 abort();
20 }
21
22 #else
23
__assert_no_args(void)24 FUNC_NORETURN void __assert_no_args(void)
25 {
26 #if __ASSERT_ON
27 __ASSERT_NO_MSG(0);
28 #endif
29 abort();
30 }
31
32 #endif
33