This is the mail archive of the gcc-bugs@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]

[Bug fortran/84519] STOP and ERROR STOP statements with QUIET specifier


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84519

--- Comment #2 from Janne Blomqvist <jb at gcc dot gnu.org> ---
Author: jb
Date: Fri Feb 23 09:07:24 2018
New Revision: 257928

URL: https://gcc.gnu.org/viewcvs?rev=257928&root=gcc&view=rev
Log:
PR 84519 Handle optional QUIET specifier for STOP and ERROR STOP

Fortran 2018 adds a new QUIET specifier for the STOP and ERROR STOP
statements, in order to suppress the printing of signaling FP
exceptions and the stop code. This patch adds the necessary library
changes, but for now the new specifier is not parsed and the frontend
unconditionally adds a false value for the new argument.

Regtested on x86_64-pc-linux-gnu.

gcc/fortran/ChangeLog:

2018-02-23  Janne Blomqvist  <jb@gcc.gnu.org>

        PR fortran/84519
        * trans-decl.c (gfc_build_builtin_function_decls): Add bool
        argument to stop and error stop decls.
        * trans-stmt.c (gfc_trans_stop): Add false value to argument
        lists.

libgfortran/ChangeLog:

2018-02-23  Janne Blomqvist  <jb@gcc.gnu.org>

        PR fortran/84519
        * caf/libcaf.h (_gfortran_caf_stop_numeric): Add bool argument.
        (_gfortran_caf_stop_str): Likewise.
        (_gfortran_caf_error_stop_str): Likewise.
        (_gfortran_caf_error_stop): Likewise.
        * caf/mpi.c (_gfortran_caf_error_stop_str): Handle new argument.
        (_gfortran_caf_error_stop): Likewise.
        * caf/single.c (_gfortran_caf_stop_numeric): Likewise.
        (_gfortran_caf_stop_str): Likewise.
        (_gfortran_caf_error_stop_str): Likewise.
        (_gfortran_caf_error_stop): Likewise.
        (_gfortran_caf_lock): Likewise.
        (_gfortran_caf_unlock): Likewise.
        * libgfortran.h (stop_string): Add bool argument.
        * runtime/pause.c (do_pause): Add false argument.
        * runtime/stop.c (stop_numeric): Handle new argument.
        (stop_string): Likewise.
        (error_stop_string): Likewise.
        (error_stop_numeric): Likewise.

Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/trans-decl.c
    trunk/gcc/fortran/trans-stmt.c
    trunk/libgfortran/caf/libcaf.h
    trunk/libgfortran/caf/mpi.c
    trunk/libgfortran/caf/single.c
    trunk/libgfortran/libgfortran.h
    trunk/libgfortran/runtime/pause.c
    trunk/libgfortran/runtime/stop.c

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