diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2007-08-29 02:26:01 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2007-08-29 02:26:01 +0000 |
commit | 5d75fb81c78587a26eea95e482c18418389d19b9 (patch) | |
tree | 53e4dfc90beaa42d5a8e5de9662f46ff97e2ceaa /gcc/fortran | |
parent | d05fd136542ae8bd03f46f853f545ce34dd1dfda (diff) | |
download | gcc-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.c | 37 |
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, |