This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Patch, libfortran] PR 67414 Improve error handling


Hi,

the attached patch improves the error handling for backtrace failing,
by printing the error number or the error string in addition to the
message. It also fixes a potential null pointer crash in gf_strerror.

Regtested on x86_64-pc-linux-gnu, Ok for trunk?

2015-09-01  Janne Blomqvist  <jb@gcc.gnu.org>

    PR libfortran/67414
    * io/write.c (gfc_itoa): Move to runtime/string.c.
    * libgfortran.h (show_backtrace): Make arg bool.
    (gfc_itoa): New prototype.
    * runtime/backtrace.c (struct mystate): Change type of try_simple
    field, add in_signal_handler field.
    (error_callback): Print out error number, or if not in a signal
    handler, the error message.
    (show_backtrace): Change type of arg, change initialization of
    struct mystate.
    (backtrace): Call show_backtrace with correct arg type.
    * runtime/compile_options.c (backtrace_handler): Call with correct
    arg type.
    * runtime/error.c (sys_abort): Likewise.
    (gf_strerror): Handle newlocale() failure.
    * runtime/string.c (gfc_itoa): Function moved here from
    io/write.c.


-- 
Janne Blomqvist

Attachment: allocbt.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]