about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-11-15 22:00:25 +0000
committerUlrich Drepper <drepper@redhat.com>2004-11-15 22:00:25 +0000
commitf895670da2fd403aed20dcbe156eaa6e75171fbb (patch)
tree1ec0f23b56eb428736327fa5f2125b2c151a290f /sysdeps
parent4f27c49622ee24022f567c23ce0366cc01e14283 (diff)
downloadglibc-f895670da2fd403aed20dcbe156eaa6e75171fbb.tar.gz
glibc-f895670da2fd403aed20dcbe156eaa6e75171fbb.tar.xz
glibc-f895670da2fd403aed20dcbe156eaa6e75171fbb.zip
2004-11-15  Jakub Jelinek  <jakub@redhat.com>

	* posix/bug-regex24.c: Include string.h.

	* nis/nis_clone_obj.c (nis_clone_object): Rename out3 label to out2
	and out2 to out.  Remove out label.  Formatting.

2004-11-15  Ulrich Drepper  <drepper@redhat.com>

	* include/stdio.h: Do not mark __libc_message as noreturn.
	* sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Add loop to
	fool gcc.  Include <stdbool.h>.
	* sysdeps/posix/libc_fatal.c (__libc_fatal): Add loop to fool gcc.
	(__libc_message): Fix typo.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/posix/libc_fatal.c10
-rw-r--r--sysdeps/unix/sysv/linux/libc_fatal.c9
2 files changed, 10 insertions, 9 deletions
diff --git a/sysdeps/posix/libc_fatal.c b/sysdeps/posix/libc_fatal.c
index fac8cbd051..a5c5a2d1f7 100644
--- a/sysdeps/posix/libc_fatal.c
+++ b/sysdeps/posix/libc_fatal.c
@@ -131,9 +131,9 @@ __libc_message (int do_abort, const char *fmt, ...)
 
   va_end (ap_copy);
 
-  if (do_abort()
-      /* Kill the application.  */
-      abort ();
+  if (do_abort)
+    /* Kill the application.  */
+    abort ();
 }
 
 
@@ -141,6 +141,8 @@ void
 __libc_fatal (message)
      const char *message;
 {
-  __libc_message (1, "%s", message);
+  /* The loop is added only to keep gcc happy.  */
+  while (1)
+    __libc_message (1, "%s", message);
 }
 libc_hidden_def (__libc_fatal)
diff --git a/sysdeps/unix/sysv/linux/libc_fatal.c b/sysdeps/unix/sysv/linux/libc_fatal.c
index c0482d96f3..a79cfbabb9 100644
--- a/sysdeps/unix/sysv/linux/libc_fatal.c
+++ b/sysdeps/unix/sysv/linux/libc_fatal.c
@@ -20,16 +20,13 @@
 #include <fcntl.h>
 #include <paths.h>
 #include <stdarg.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <sysdep.h>
 #include <unistd.h>
 #include <sys/syslog.h>
-#ifndef ABORT_INSTRUCTION
-/* No such instruction is available.  */
-# define ABORT_INSTRUCTION
-#endif
 
 /* Abort with an error message.  */
 #include <not-cancel.h>
@@ -153,6 +150,8 @@ void
 __libc_fatal (message)
      const char *message;
 {
-  __libc_message (1, "%s", message);
+  /* The loop is added only to keep gcc happy.  */
+  while (1)
+    __libc_message (1, "%s", message);
 }
 libc_hidden_def (__libc_fatal)