re PR libfortran/68744 (FAIL: gfortran.dg/backtrace_1.f90 -O0 execution test)

PR libfortran/68744
	* runtime/backtrace.c: Include gthr.h.
	(show_backtrace): Use __gthread_active_p() to determine whether threads
	are active.  Return if lbstate is NULL.

From-SVN: r232770
This commit is contained in:
John David Anglin 2016-01-23 23:32:13 +00:00
parent 3676c0871f
commit c55879c872
2 changed files with 14 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2016-01-23 John David Anglin <danglin@gcc.gnu.org>
PR libfortran/68744
* runtime/backtrace.c: Include gthr.h.
(show_backtrace): Use __gthread_active_p() to determine whether threads
are active. Return if lbstate is NULL.
2016-01-15 Jakub Jelinek <jakub@redhat.com>
* intrinsics/execute_command_line.c (set_cmdstat): Use "%s", msg

View File

@ -24,6 +24,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#include "libgfortran.h"
#include <gthr.h>
#include <string.h>
#include <stdlib.h>
#include <errno.h>
@ -137,7 +139,11 @@ show_backtrace (bool in_signal_handler)
struct backtrace_state *lbstate;
struct mystate state = { 0, false, in_signal_handler };
lbstate = backtrace_create_state (NULL, 1, error_callback, NULL);
lbstate = backtrace_create_state (NULL, __gthread_active_p (),
error_callback, NULL);
if (lbstate == NULL)
return;
if (!BACKTRACE_SUPPORTED || (in_signal_handler && BACKTRACE_USES_MALLOC))
{