aboutsummaryrefslogtreecommitdiff
path: root/libc
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2014-05-30 14:49:00 -0700
committerElliott Hughes <enh@google.com>2014-05-30 15:56:25 -0700
commit6203e7b853a587fbd70cea2e58b63ae38a71a13e (patch)
treee13aad8c180100b87e7a24c2ae5292c81599d223 /libc
parent3a3b27e04df395b789b92af3d0ed05d2a0f3bf04 (diff)
downloadbionic-6203e7b853a587fbd70cea2e58b63ae38a71a13e.tar.gz
Add some missing __noreturn attributes.
This is more honest, and lets us remove a hack. Change-Id: I309f064743ded5248573ccafc379f78d417db08d
Diffstat (limited to 'libc')
-rw-r--r--libc/bionic/clone.cpp2
-rw-r--r--libc/bionic/pthread_exit.cpp7
2 files changed, 3 insertions, 6 deletions
diff --git a/libc/bionic/clone.cpp b/libc/bionic/clone.cpp
index 2c507c4e3..d38a422ea 100644
--- a/libc/bionic/clone.cpp
+++ b/libc/bionic/clone.cpp
@@ -32,7 +32,7 @@
#include <stdarg.h>
extern "C" pid_t __bionic_clone(uint32_t flags, void* child_stack, int* parent_tid, void* tls, int* child_tid, int (*fn)(void*), void* arg);
-extern "C" void __exit(int status);
+extern "C" __noreturn void __exit(int status);
// Called from the __bionic_clone assembler to call the thread function then exit.
extern "C" __LIBC_HIDDEN__ void __bionic_clone_entry(int (*fn)(void*), void* arg) {
diff --git a/libc/bionic/pthread_exit.cpp b/libc/bionic/pthread_exit.cpp
index de818cdb7..2470c9cb6 100644
--- a/libc/bionic/pthread_exit.cpp
+++ b/libc/bionic/pthread_exit.cpp
@@ -34,8 +34,8 @@
#include "pthread_internal.h"
-extern "C" void _exit_with_stack_teardown(void*, size_t);
-extern "C" void __exit(int);
+extern "C" __noreturn void _exit_with_stack_teardown(void*, size_t);
+extern "C" __noreturn void __exit(int);
extern "C" int __set_tid_address(int*);
/* CAVEAT: our implementation of pthread_cleanup_push/pop doesn't support C++ exceptions
@@ -127,7 +127,4 @@ void pthread_exit(void* return_value) {
_exit_with_stack_teardown(stack_base, stack_size);
}
-
- // NOTREACHED, but we told the compiler this function is noreturn, and it doesn't believe us.
- abort();
}