aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <fxcoudert@gcc.gnu.org>2015-08-23 21:50:30 +0000
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2015-08-23 21:50:30 +0000
commitad4f95e395b752371643327c1fdf71fac70de526 (patch)
tree2d9bb42bb8fba1bb8290c5fdeb49a6955a68c642 /gcc
parent1487cca00ca6f4e0fe60d72761737da162e96840 (diff)
downloadgcc-ad4f95e395b752371643327c1fdf71fac70de526.zip
gcc-ad4f95e395b752371643327c1fdf71fac70de526.tar.gz
gcc-ad4f95e395b752371643327c1fdf71fac70de526.tar.bz2
re PR libfortran/54572 (Use libbacktrace library)
PR libfortran/54572 * Makefile.def: Make libgfortran depend on libbacktrace. * Makefile.in: Regenerate. * config-lang.in: Add libbacktrace to target_libs. * Makefile.am (libgfortran_la_LDFLAGS): Link in libbacktrace. (AM_CPPFLAGS): Add libbacktrace directories to include paths. * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. * configure.ac: Remove checks for strtok_r, wait, execve, pipe, and dup2. Remove call to GCC_CHECK_UNWIND_GETIPINFO. * libgfortran.h (full_exe_path, find_addr2line, backtrace): Remove prototypes. (show_backtrace): Add prototype. * runtime/backtrace.c: Rework file entirely. * runtime/compile_options.c (backtrace_handler): Rename backtrace to show_backtrace. (maybe_find_addr2line): Remove function. (set_options): Remove call to maybe_find_addr2line. * runtime/error.c (sys_abort): Rename backtrace to show_backtrace. * runtime/main.c (store_exe_path): Empty function body. (full_exe_path, gfstrtok_r, find_addr2line): Remove functions. (cleanup): Don't free removed variables. * runtime/minimal.c (full_exe_path): Remove function. (set_args): Don't set exe_path. * gfortran.dg/backtrace_1.f90: New test. From-SVN: r227106
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/config-lang.in2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/backtrace_1.f9010
4 files changed, 21 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 9cbaf6c..d345368 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2015-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/54572
+ * config-lang.in: Add libbacktrace to target_libs.
+
2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
* dependency.c, dependency.h, gfortran.h, io.c, module.c,
diff --git a/gcc/fortran/config-lang.in b/gcc/fortran/config-lang.in
index de8a499..a6c6b92 100644
--- a/gcc/fortran/config-lang.in
+++ b/gcc/fortran/config-lang.in
@@ -27,7 +27,7 @@ language="fortran"
compilers="f951\$(exeext)"
-target_libs=target-libgfortran
+target_libs="target-libgfortran target-libbacktrace"
gtfiles="\$(srcdir)/fortran/f95-lang.c \$(srcdir)/fortran/trans-decl.c \$(srcdir)/fortran/trans-intrinsic.c \$(srcdir)/fortran/trans-io.c \$(srcdir)/fortran/trans-stmt.c \$(srcdir)/fortran/trans-types.c \$(srcdir)/fortran/trans-types.h \$(srcdir)/fortran/trans.h \$(srcdir)/fortran/trans-const.h"
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 35b7da2..6235844 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,10 @@
2015-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+ PR libfortran/54572
+ * gfortran.dg/backtrace_1.f90: New test.
+
+2015-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
PR libfortran/62296
* gfortran.dg/execute_command_line_2.f90: New test.
diff --git a/gcc/testsuite/gfortran.dg/backtrace_1.f90 b/gcc/testsuite/gfortran.dg/backtrace_1.f90
new file mode 100644
index 0000000..fdde832
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/backtrace_1.f90
@@ -0,0 +1,10 @@
+! { dg-do run }
+!
+! Check that BACKTRACE is available on all targets. We cannot actually
+! check its output, but we should at least be able to call it, then exit
+! normally.
+!
+program test
+ call backtrace
+ stop
+end program test