Move ____longjmp_chk prototype to include/setjmp.h

Message ID 20170820002439.GA5913@gmail.com
State Committed
Commit 94e6ba153b80a91e97386594729cd36eab69f507
Headers

Commit Message

H.J. Lu Aug. 20, 2017, 12:24 a.m. UTC
  Move ____longjmp_chk prototype to include/setjmp.h and add
attribute_hidden.

OK for master?

H.J.
--
	* debug/longjmp_chk.c (____longjmp_chk): Moved to ...
	* include/setjmp.h (____longjmp_chk): Here.  Add
	attribute_hidden.
---
 debug/longjmp_chk.c | 4 ----
 include/setjmp.h    | 3 +++
 2 files changed, 3 insertions(+), 4 deletions(-)
  

Comments

Florian Weimer Aug. 20, 2017, 7:20 a.m. UTC | #1
* H. J. Lu:

> 	* debug/longjmp_chk.c (____longjmp_chk): Moved to ...
> 	* include/setjmp.h (____longjmp_chk): Here.  Add
> 	attribute_hidden.

Looks good.
  

Patch

diff --git a/debug/longjmp_chk.c b/debug/longjmp_chk.c
index 1a927f5ac1..1cea6c05ef 100644
--- a/debug/longjmp_chk.c
+++ b/debug/longjmp_chk.c
@@ -17,10 +17,6 @@ 
 
 #include <setjmp.h>
 
-// XXX Should move to include/setjmp.h
-extern void ____longjmp_chk (__jmp_buf __env, int __val)
-     __attribute__ ((__noreturn__));
-
 #define __longjmp ____longjmp_chk
 #define __libc_siglongjmp __longjmp_chk
 
diff --git a/include/setjmp.h b/include/setjmp.h
index 90f46976e3..e45328b18a 100644
--- a/include/setjmp.h
+++ b/include/setjmp.h
@@ -8,6 +8,9 @@ 
 extern void __longjmp (__jmp_buf __env, int __val)
      __attribute__ ((__noreturn__)) attribute_hidden;
 
+extern void ____longjmp_chk (__jmp_buf __env, int __val)
+     __attribute__ ((__noreturn__)) attribute_hidden;
+
 /* Internal function to possibly save the current mask of blocked signals
    in ENV, and always set the flag saying whether or not it was saved.
    This is used by the machine-dependent definition of `__sigsetjmp'.