OSDN Git Service

assert: make linenumber unsigned
authorPeter S. Mazinger <ps.m@gmx.net>
Sat, 17 Oct 2009 00:04:20 +0000 (02:04 +0200)
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Thu, 19 Nov 2009 21:40:03 +0000 (22:40 +0100)
Move attribute_noreturn to header.

Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
include/assert.h
libc/misc/assert/__assert.c

index 439179d..40b1605 100644 (file)
 __BEGIN_DECLS
 
 /* This prints an "Assertion failed" message and aborts.  */
-extern void __assert __P((const char *, const char *, int, const char *));
+extern void __assert(const char *, const char *, unsigned int, const char *)
+       __THROW __attribute__ ((__noreturn__));
 libc_hidden_proto(__assert)
 
 __END_DECLS
 
 # define assert(expr) \
-  (__ASSERT_VOID_CAST ((expr) ? 0 :                                          \
-                      (__assert (__STRING(expr), __FILE__, __LINE__,    \
-                                      __ASSERT_FUNCTION), 0)))
+  (__ASSERT_VOID_CAST ((expr) ? 0 :                                                            \
+                      (__assert (__STRING(expr), __FILE__, __LINE__, __ASSERT_FUNCTION), 0)))
 
 /* Version 2.4 and later of GCC define a magical variable `__PRETTY_FUNCTION__'
    which contains the name of the function currently being defined.
index ff9e47d..18c6f5e 100644 (file)
@@ -29,8 +29,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <unistd.h>
-#include <bits/uClibc_uintmaxtostr.h>
 
 
 /* Get the prototype from assert.h as a double-check. */
@@ -43,8 +41,8 @@
 
 static smallint in_assert;                     /* bss inits to 0. */
 
-void attribute_noreturn __assert(const char *assertion, const char * filename,
-                         int linenumber, register const char * function)
+void __assert(const char *assertion, const char * filename,
+             unsigned int linenumber, register const char * function)
 {
        if (!in_assert) {
                in_assert = 1;
@@ -62,6 +60,7 @@ void attribute_noreturn __assert(const char *assertion, const char * filename,
                                assertion
                                );
        }
+       /* shouldn't we? fflush(stderr); */
        abort();
 }