]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
* stdlib/quick_exit.c (quick_exit): Pass &__quick_exit_funcs
authorUlrich Drepper <drepper@redhat.com>
Tue, 10 Mar 2009 13:40:37 +0000 (13:40 +0000)
committerUlrich Drepper <drepper@redhat.com>
Tue, 10 Mar 2009 13:40:37 +0000 (13:40 +0000)
instead of __quick_exit_funcs to __run_exit_handlers.
* stdlib/at_quick_exit.c (at_quick_exit): Add attribute_hidden.
* stdlib/exit.h (__run_exit_handlers): Add noreturn attribute.
(__cxa_at_quick_exit): Remove attribute_hidden.
* stdlib/exit.c (exit): Pass &__exit_funcs instead of __exit_funcs
to __run_exit_handlers.
* stdlib/cxa_at_quick_exit.c (__cxa_at_quick_exit): Remove
attribute_hidden.

ChangeLog
stdlib/at_quick_exit.c
stdlib/cxa_at_quick_exit.c
stdlib/exit.c
stdlib/exit.h
stdlib/quick_exit.c

index 9881e73b85bdf85eec1e66bcdaf0ea6daf5e05b3..212dbf05d43e0921fd9bf38546de560b94787312 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2009-03-10  Jakub Jelinek  <jakub@redhat.com>
+
+       * stdlib/quick_exit.c (quick_exit): Pass &__quick_exit_funcs
+       instead of __quick_exit_funcs to __run_exit_handlers.
+       * stdlib/at_quick_exit.c (at_quick_exit): Add attribute_hidden.
+       * stdlib/exit.h (__run_exit_handlers): Add noreturn attribute.
+       (__cxa_at_quick_exit): Remove attribute_hidden.
+       * stdlib/exit.c (exit): Pass &__exit_funcs instead of __exit_funcs
+       to __run_exit_handlers.
+       * stdlib/cxa_at_quick_exit.c (__cxa_at_quick_exit): Remove
+       attribute_hidden.
+
 2009-03-10  Ulrich Drepper  <drepper@redhat.com>
 
        * po/id.po: Update from translation team.
index abe2910a7b7f6f427bea982c8ec2e1ba859f563c..1d37e1c2eba3beb300e97a5c781c7e4ab9ab2e3b 100644 (file)
@@ -43,6 +43,7 @@ extern void *__dso_handle __attribute__ ((__weak__));
 
 /* Register FUNC to be executed by `quick_exit'.  */
 int
+attribute_hidden
 at_quick_exit (void (*func) (void))
 {
   return __cxa_at_quick_exit ((void (*) (void *)) func,
index 45c5f5e84c53715a1bc5d8c6c8d59c6f3c7e18ae..2c6d68846213335f65c07c7b1e276433bc3e727e 100644 (file)
@@ -25,7 +25,6 @@ struct exit_function_list *__quick_exit_funcs = &initial_quick;
 
 /* Register a function to be called by quick_exit.  */
 int
-attribute_hidden
 __cxa_at_quick_exit (void (*func) (void *), void *d)
 {
   return __internal_atexit (func, NULL, d, &__quick_exit_funcs);
index 539ae4bd7e4fc63752d50797b42240baf59eed62..2235990285f80c7482d2dcc7dcd92463967f4eb1 100644 (file)
@@ -97,6 +97,6 @@ __run_exit_handlers (int status, struct exit_function_list **listp,
 void
 exit (int status)
 {
-  __run_exit_handlers (status, __exit_funcs, true);
+  __run_exit_handlers (status, &__exit_funcs, true);
 }
 libc_hidden_def (exit)
index 948948d19b8d12b0e9984e3f237394115229e6fd..d5013218a67bd308572e85daa45bc9fb3640765f 100644 (file)
@@ -66,13 +66,13 @@ extern struct exit_function *__new_exitfn (struct exit_function_list **listp);
 extern uint64_t __new_exitfn_called attribute_hidden;
 
 extern void __run_exit_handlers (int status, struct exit_function_list **listp,
-                                bool run_list_atexit) attribute_hidden;
+                                bool run_list_atexit)
+  attribute_hidden __attribute__ ((__noreturn__));
 
 extern int __internal_atexit (void (*func) (void *), void *arg, void *d,
                              struct exit_function_list **listp)
   attribute_hidden;
-extern int __cxa_at_quick_exit (void (*func) (void *), void *d)
-  attribute_hidden;
+extern int __cxa_at_quick_exit (void (*func) (void *), void *d);
 
 
 #endif /* exit.h  */
index 20cb409b7d6a0d046f1be31e2487214ec7188c71..d6306240c4c1984784835865c0ffc87b99830c81 100644 (file)
@@ -26,5 +26,5 @@
 void
 quick_exit (int status)
 {
-  __run_exit_handlers (status, __quick_exit_funcs, false);
+  __run_exit_handlers (status, &__quick_exit_funcs, false);
 }