From 55d4d550c8d77d42f968ac5a3f9be2dfcb05b620 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Fri, 9 May 2014 10:05:29 -0700 Subject: Silence a missing-noreturn warning for _Unwind_Resume. --- ChangeLog | 4 ++++ sysdeps/gnu/unwind-resume.c | 12 +++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4510093bfa..2da8ae1ce9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2014-05-09 Roland McGrath + + * sysdeps/gnu/unwind-resume.c (libgcc_s_resume): Mark as noreturn. + 2014-05-09 Joseph Myers [BZ #16064] diff --git a/sysdeps/gnu/unwind-resume.c b/sysdeps/gnu/unwind-resume.c index c7d6870731..5044a7182e 100644 --- a/sysdeps/gnu/unwind-resume.c +++ b/sysdeps/gnu/unwind-resume.c @@ -21,7 +21,8 @@ #include #include -static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); +static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) + __attribute__ ((noreturn)); static _Unwind_Reason_Code (*libgcc_s_personality) (int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, struct _Unwind_Context *); @@ -37,7 +38,8 @@ init (void) if (handle == NULL || (resume = __libc_dlsym (handle, "_Unwind_Resume")) == NULL || (personality = __libc_dlsym (handle, "__gcc_personality_v0")) == NULL) - __libc_fatal (LIBGCC_S_SO " must be installed for pthread_cancel to work\n"); + __libc_fatal (LIBGCC_S_SO + " must be installed for pthread_cancel to work\n"); libgcc_s_resume = resume; libgcc_s_personality = personality; @@ -48,7 +50,7 @@ _Unwind_Resume (struct _Unwind_Exception *exc) { if (__glibc_unlikely (libgcc_s_resume == NULL)) init (); - libgcc_s_resume (exc); + (*libgcc_s_resume) (exc); } _Unwind_Reason_Code @@ -59,6 +61,6 @@ __gcc_personality_v0 (int version, _Unwind_Action actions, { if (__glibc_unlikely (libgcc_s_personality == NULL)) init (); - return libgcc_s_personality (version, actions, exception_class, - ue_header, context); + return (*libgcc_s_personality) (version, actions, exception_class, + ue_header, context); } -- cgit 1.4.1