(root)/
glibc-2.38/
include/
assert.h
       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  rtld_hidden_proto (__assert_fail)
      24  rtld_hidden_proto (__assert_perror_fail)
      25  libc_hidden_proto (__assert_perror_fail)
      26  
      27  
      28  # if IS_IN (libc)
      29  /* Redirect to the internal version which does not use stderr.  */
      30  extern _Noreturn __typeof (__assert_fail) __libc_assert_fail attribute_hidden;
      31  #  define __assert_fail __libc_assert_fail
      32  # endif
      33  #endif