re PR fortran/43851 (Add _gfortran_error_stop_numeric)
authorJerry DeLisle <jvdelisle@gcc.gnu.org>
Thu, 20 May 2010 04:44:11 +0000 (04:44 +0000)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Thu, 20 May 2010 04:44:11 +0000 (04:44 +0000)
commit6d1b0f922a46b7459c0a9441f728e9214b1bcd80
tree9eb7755ffeb7c601a8f6b2bf59f09b47b648f7a0
parentb41e2d6d522cbbf4b001d0caa381ca25e942618b
re PR fortran/43851 (Add _gfortran_error_stop_numeric)

2010-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>

PR fortran/43851
* runtime/stop.c (error_stop_numeric): New function and updated comment.
Add declaration for stop_numeric and remove declaration for stop_string.
(stop_string): Use for blank STOP.
(stop_numeric): Remove use of special -1 stop code.
* runtime/pause.c (do_pause): Use stop_string for blank stop.
(pause_numeric): Remove use of special -1 pause code.
* gfortran.map: Add new symbol to run-time library.
* libgfortran.h: Move declaration for stop_string to here to make
function visible for do_pause. Remove declaration for stop_numeric.

2010-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>

PR fortran/43851
* trans-stmt.c (gfc_trans_stop): Add generation of call to
gfortran_error_stop_numeric. Fix up some whitespace. Use stop_string for
blank STOP, handling a null expression. (gfc_trans_pause): Use
pause_string for blank PAUSE.
* trans.h: Add external function declaration for error_stop_numeric.
* trans-decl.c (gfc_build_builtin_function_decls): Add the building of
the declaration for the library call. Adjust whitespaces.
* match.c (gfc_match_stopcode): Remove use of the actual stop code to
signal no stop code. Match the expression following the stop and pass
that to the translators. Remove the old use of digit matching.  Add
checks that the stop_code expression is INTEGER or CHARACTER, constant,
and if CHARACTER, default character KIND.

2010-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>

PR fortran/43851
* gfortran.dg/label_1.f90: Update test.

From-SVN: r159609
12 files changed:
gcc/fortran/ChangeLog
gcc/fortran/match.c
gcc/fortran/trans-decl.c
gcc/fortran/trans-stmt.c
gcc/fortran/trans.h
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/label_1.f90
libgfortran/ChangeLog
libgfortran/gfortran.map
libgfortran/libgfortran.h
libgfortran/runtime/pause.c
libgfortran/runtime/stop.c