summaryrefslogtreecommitdiff
path: root/gcc/fortran/options.c
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <coudert@clipper.ens.fr>2007-03-15 13:39:47 +0100
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2007-03-15 12:39:47 +0000
commit868d75dbdc33cfb040fcd93d0f525ab70eb43491 (patch)
tree62c7c06768cd766d8d1a1c1c50f8a53ec3cebf53 /gcc/fortran/options.c
parent419452fe7e8ca4c132a89258863f4443d408b8a6 (diff)
downloadgcc-868d75dbdc33cfb040fcd93d0f525ab70eb43491.tar.gz
gfortran.h (gfc_option_t): Add flag_backtrace field.
* gfortran.h (gfc_option_t): Add flag_backtrace field. * lang.opt: Add -fbacktrace option. * invoke.texi: Document the new option. * trans-decl.c (gfc_build_builtin_function_decls): Add new option to the call to set_std. * options.c (gfc_init_options, gfc_handle_option): Handle the new option. * runtime/backtrace.c: New file. * runtime/environ.c (variable_table): New GFORTRAN_ERROR_BACKTRACE environment variable. * runtime/compile_options.c (set_std): Add new argument. * runtime/main.c (store_exe_path, full_exe_path): New functions. * runtime/error.c (sys_exit): Add call to show_backtrace. * libgfortran.h (options_t): New backtrace field. (store_exe_path, full_exe_path, show_backtrace): New prototypes. * configure.ac: Add checks for execinfo.h, execvp, pipe, dup2, close, fdopen, strcasestr, getrlimit, backtrace, backtrace_symbols and getppid. * Makefile.am: Add runtime/backtrace.c. * fmain.c (main): Add call to store_exe_path. * Makefile.in: Renegerate. * config.h.in: Renegerate. * configure: Regenerate. From-SVN: r122954
Diffstat (limited to 'gcc/fortran/options.c')
-rw-r--r--gcc/fortran/options.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c
index e4f6092663c..96bedabffb1 100644
--- a/gcc/fortran/options.c
+++ b/gcc/fortran/options.c
@@ -94,6 +94,7 @@ gfc_init_options (unsigned int argc ATTRIBUTE_UNUSED,
gfc_option.flag_preprocessed = 0;
gfc_option.flag_automatic = 1;
gfc_option.flag_backslash = 1;
+ gfc_option.flag_backtrace = 0;
gfc_option.flag_allow_leading_underscore = 0;
gfc_option.flag_dump_core = 0;
gfc_option.flag_external_blas = 0;
@@ -474,6 +475,10 @@ gfc_handle_option (size_t scode, const char *arg, int value)
gfc_option.flag_backslash = value;
break;
+ case OPT_fbacktrace:
+ gfc_option.flag_backtrace = value;
+ break;
+
case OPT_fdump_core:
gfc_option.flag_dump_core = value;
break;