1 #include <assert/assert.h> 2 3 #ifndef _ISOMAC 4 /* This prints an "Assertion failed" message and aborts. 5 In installed assert.h this is only conditionally declared, 6 so it has to be repeated here. */ 7 extern void __assert_fail (const char *__assertion, const char *__file, 8 unsigned int __line, const char *__function) 9 __THROW __attribute__ ((__noreturn__)); 10 11 /* Likewise, but prints the error text for ERRNUM. */ 12 extern void __assert_perror_fail (int __errnum, const char *__file, 13 unsigned int __line, 14 const char *__function) 15 __THROW __attribute__ ((__noreturn__)); 16 17 /* The real implementation of the two functions above. */ 18 extern void __assert_fail_base (const char *fmt, const char *assertion, 19 const char *file, unsigned int line, 20 const char *function) 21 __THROW __attribute__ ((__noreturn__)) attribute_hidden; 22 23 # if IS_IN (libc) || (IS_IN (rtld) && !defined NO_RTLD_HIDDEN) 24 hidden_proto (__assert_fail) 25 hidden_proto (__assert_perror_fail) 26 # endif 27 #endif 28