PR fortran/68401 Improve allocation error message
authorJanne Blomqvist <jb@gcc.gnu.org>
Sat, 17 Aug 2019 05:45:37 +0000 (08:45 +0300)
committerJanne Blomqvist <jb@gcc.gnu.org>
Sat, 17 Aug 2019 05:45:37 +0000 (08:45 +0300)
commitd74a8b0579edd0c42921eccc45ab986d24f2fef0
tree2059efcc45ffef85dfef605dcc8b39c8765e07bd
parent777c02825229f14cf91c6044827ea42a77ded4a3
PR fortran/68401 Improve allocation error message

Improve the error message that is printed when a memory allocation
fails, by including the location, and the size of the allocation that
failed.

Regtested on x86_64-pc-linux-gnu.

gcc/fortran/ChangeLog:

2019-08-17  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/68401
* trans-decl.c (gfc_build_builtin_function_decls): Replace
os_error with os_error_at decl.
* trans.c (trans_runtime_error_vararg): Modify so the error
function decl is passed directly.
(gfc_trans_runtime_error): Pass correct error function decl.
(gfc_trans_runtime_check): Likewise.
(trans_os_error_at): New function.
(gfc_call_malloc): Use trans_os_error_at.
(gfc_allocate_using_malloc): Likewise.
(gfc_call_realloc): Likewise.
* trans.h (gfor_fndecl_os_error): Replace with gfor_fndecl_os_error_at.

libgfortran/ChangeLog:

2019-08-17  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/68401
* gfortran.map: Add GFORTRAN_10 node, add _gfortran_os_error_at
symbol.
* libgfortran.h (os_error_at): New prototype.
* runtime/error.c (os_error_at): New function.

From-SVN: r274599
gcc/fortran/ChangeLog
gcc/fortran/trans-decl.c
gcc/fortran/trans.c
gcc/fortran/trans.h
libgfortran/ChangeLog
libgfortran/gfortran.map
libgfortran/libgfortran.h
libgfortran/runtime/error.c