From: Yann Le Du <yann.le...@kernkonzept.com>

The existing limit of 20 was found to be insufficient when moving from
gcc 8 to gcc 9. At the time a test ran already 16 handlers had been
installed leaving only minimal room for application installed handlers.

Musl uses 32, as does newlib. Further, the ISO C standard for C99
specifies that:

  The implementation shall support the registration of at least
  32 functions.

(7.20.4.2 The atexit function)

Co-authored-by: Yann Le Du <yann.le...@kernkonzept.com>
Signed-off-by: Marcus Haehnel <marcus.haeh...@kernkonzept.com>
---
 include/stdlib.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/stdlib.h b/include/stdlib.h
index 8b1375184..d4e0b75e7 100644
--- a/include/stdlib.h
+++ b/include/stdlib.h
@@ -606,7 +606,7 @@ libc_hidden_proto(unsetenv)
 #ifdef __UCLIBC_DYNAMIC_ATEXIT__
 # define __UCLIBC_MAX_ATEXIT     INT_MAX
 #else
-# define __UCLIBC_MAX_ATEXIT     20
+# define __UCLIBC_MAX_ATEXIT     32
 #endif
 
 
-- 
2.45.2

_______________________________________________
devel mailing list -- devel@uclibc-ng.org
To unsubscribe send an email to devel-le...@uclibc-ng.org

Reply via email to