diff options
author | Thomas Koenig <Thomas.Koenig@online.de> | 2005-09-09 18:21:45 +0000 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2005-09-09 18:21:45 +0000 |
commit | 7aba8abebf67491594a3b6274d441bcbf47d894b (patch) | |
tree | 56c7562709009df08fd688c5642a73bd009d5144 /gcc/fortran/dump-parse-tree.c | |
parent | 2360a4c1a67232511351afd4986ef9e1e2a73c36 (diff) | |
download | gcc-7aba8abebf67491594a3b6274d441bcbf47d894b.zip gcc-7aba8abebf67491594a3b6274d441bcbf47d894b.tar.gz gcc-7aba8abebf67491594a3b6274d441bcbf47d894b.tar.bz2 |
gfortran.h: Add iomsg to gfc_open, gfc_close, gfc_filepos, gfc_inquire and gfc_dt.
2005-09-09 Thomas Koenig <Thomas.Koenig@online.de>
* gfortran.h: Add iomsg to gfc_open, gfc_close, gfc_filepos,
gfc_inquire and gfc_dt.
* dump-parse-tree.c (gfc_show_code_node): Add iomsg
for open, close, file positioning, inquire and namelist.
* io.c (io_tag): Add tag_iomsg.
(resolve_tag): Add standards warning for iomsg.
(match_open_element): Add iomsg.
(gfc_free_open): Add iomsg.
(gfc_resolve_open): Add iomsg.
(gfc_free_close): Add iomsg.
(match_close_element): Add iomsg.
(gfc_resolve_close): Add iomsg.
(gfc_free_filepos): Add iomsg.
(match_file_element): Add iomsg.
(gfc_resolve_filepos): Add iostat and iomsg.
(match-dt_element): Add iomsg.
(gfc_free_dt): Add iomsg.
(gfc_resolve_dt): Add iomsg.
(gfc_free_inquire): Add iomsg.
(match_inquire_element): Add iomsg.
(gfc_resolve_inquire): Add iomsg.
* trans_io.c: Add ioparm_iomsg and ioparm_iomsg_len.
(gfc_build_io_library_fndecls): Add iomsg as last field.
(gfc_trans_open): Add iomsg.
(gfc_trans_close): Add iomsg.
(build_fileos): Call set_string for iomsg.
(gfc_trans_inquire): Add iomsg.
(build_dt): Add iomsg.
2005-09-09 Thomas Koenig <Thomas.Koenig@online.de>
* io/io.h: Add iomsg as last field of st_parameter.
* runtime/error.c (generate_error): If iomsg is present, copy
the message there.
2005-09-09 Thomas Koenig <Thomas.Koenig@online.de>
* gfortran.dg/iomsg_1.f90: New test case.
From-SVN: r104102
Diffstat (limited to 'gcc/fortran/dump-parse-tree.c')
-rw-r--r-- | gcc/fortran/dump-parse-tree.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/fortran/dump-parse-tree.c b/gcc/fortran/dump-parse-tree.c index 8f039d2..2d708f7 100644 --- a/gcc/fortran/dump-parse-tree.c +++ b/gcc/fortran/dump-parse-tree.c @@ -1084,6 +1084,11 @@ gfc_show_code_node (int level, gfc_code * c) gfc_status (" UNIT="); gfc_show_expr (open->unit); } + if (open->iomsg) + { + gfc_status (" IOMSG="); + gfc_show_expr (open->iomsg); + } if (open->iostat) { gfc_status (" IOSTAT="); @@ -1153,6 +1158,11 @@ gfc_show_code_node (int level, gfc_code * c) gfc_status (" UNIT="); gfc_show_expr (close->unit); } + if (close->iomsg) + { + gfc_status (" IOMSG="); + gfc_show_expr (close->iomsg); + } if (close->iostat) { gfc_status (" IOSTAT="); @@ -1190,6 +1200,11 @@ gfc_show_code_node (int level, gfc_code * c) gfc_status (" UNIT="); gfc_show_expr (fp->unit); } + if (fp->iomsg) + { + gfc_status (" IOMSG="); + gfc_show_expr (fp->iomsg); + } if (fp->iostat) { gfc_status (" IOSTAT="); @@ -1214,6 +1229,11 @@ gfc_show_code_node (int level, gfc_code * c) gfc_show_expr (i->file); } + if (i->iomsg) + { + gfc_status (" IOMSG="); + gfc_show_expr (i->iomsg); + } if (i->iostat) { gfc_status (" IOSTAT="); @@ -1360,6 +1380,12 @@ gfc_show_code_node (int level, gfc_code * c) gfc_status (" FMT=%d", dt->format_label->value); if (dt->namelist) gfc_status (" NML=%s", dt->namelist->name); + + if (dt->iomsg) + { + gfc_status (" IOMSG="); + gfc_show_expr (dt->iomsg); + } if (dt->iostat) { gfc_status (" IOSTAT="); |