aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
authorJerry DeLisle <jvdelisle@gcc.gnu.org>2007-08-29 02:26:01 +0000
committerJerry DeLisle <jvdelisle@gcc.gnu.org>2007-08-29 02:26:01 +0000
commit5d75fb81c78587a26eea95e482c18418389d19b9 (patch)
tree53e4dfc90beaa42d5a8e5de9662f46ff97e2ceaa /gcc/fortran
parentd05fd136542ae8bd03f46f853f545ce34dd1dfda (diff)
downloadgcc-5d75fb81c78587a26eea95e482c18418389d19b9.zip
gcc-5d75fb81c78587a26eea95e482c18418389d19b9.tar.gz
gcc-5d75fb81c78587a26eea95e482c18418389d19b9.tar.bz2
re PR libfortran/33055 (Runtime error in INQUIRE unit existance with -fdefault-integer-8)
2007-08-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/33055 Revert previous patch. From-SVN: r127877
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/trans-io.c37
1 files changed, 2 insertions, 35 deletions
diff --git a/gcc/fortran/trans-io.c b/gcc/fortran/trans-io.c
index cd25108..80646cd 100644
--- a/gcc/fortran/trans-io.c
+++ b/gcc/fortran/trans-io.c
@@ -1094,30 +1094,6 @@ gfc_trans_flush (gfc_code * code)
}
-/* Create a dummy iostat variable to catch any error due to bad unit. */
-
-static gfc_expr *
-create_dummy_iostat (void)
-{
- gfc_symtree *st;
- gfc_expr *e;
-
- st = gfc_get_unique_symtree (gfc_current_ns);
- st->n.sym = gfc_new_symbol (st->name, gfc_current_ns);
- st->n.sym->ts.type = BT_INTEGER;
- st->n.sym->ts.kind = 4;
- st->n.sym->attr.referenced = 1;
- st->n.sym->refs = 1;
- e = gfc_get_expr ();
- e->expr_type = EXPR_VARIABLE;
- e->symtree = st;
- e->ts.type = BT_INTEGER;
- e->ts.kind = 4;
-
- return e;
-}
-
-
/* Translate the non-IOLENGTH form of an INQUIRE statement. */
tree
@@ -1157,17 +1133,8 @@ gfc_trans_inquire (gfc_code * code)
p->file);
if (p->exist)
- {
- mask |= set_parameter_ref (&block, &post_block, var, IOPARM_inquire_exist,
- p->exist);
-
- if (p->unit && !p->iostat)
- {
- p->iostat = create_dummy_iostat ();
- mask |= set_parameter_ref (&block, &post_block, var,
- IOPARM_common_iostat, p->iostat);
- }
- }
+ mask |= set_parameter_ref (&block, &post_block, var, IOPARM_inquire_exist,
+ p->exist);
if (p->opened)
mask |= set_parameter_ref (&block, &post_block, var, IOPARM_inquire_opened,