aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2019-02-01 23:54:05 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2019-02-01 23:54:05 +0100
commit30253e235699f233b54f0ee147235bdec5759ac8 (patch)
tree2a7a21f6d8995acdeb5367648833f3ee0aeaf51b /gcc/fortran
parentd9f0237f70ca25485576e3f8f32d7daee6ab1d50 (diff)
downloadgcc-30253e235699f233b54f0ee147235bdec5759ac8.zip
gcc-30253e235699f233b54f0ee147235bdec5759ac8.tar.gz
gcc-30253e235699f233b54f0ee147235bdec5759ac8.tar.bz2
re PR fortran/83246 (internal compiler error or loader problem might be related to a PARAMETER statement being in a BLOCK)
PR fortran/83246 PR fortran/89084 * trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs if sym->ns->construct_entities rather than if sym->ns->parent->code->op == EXEC_BLOCK. * gfortran.dg/pr89084.f90: New test. * gfortran.dg/lto/pr89084_0.f90: New test. * gfortran.dg/pr83246.f90: New test. From-SVN: r268462
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/ChangeLog8
-rw-r--r--gcc/fortran/trans-decl.c5
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 7f2a7af..0a5da36 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,11 @@
+2019-02-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/83246
+ PR fortran/89084
+ * trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs
+ if sym->ns->construct_entities rather than if
+ sym->ns->parent->code->op == EXEC_BLOCK.
+
2019-01-31 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/88669
diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c
index 1fe1165..b8f50f7 100644
--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -5735,10 +5735,7 @@ generate_local_decl (gfc_symbol * sym)
"imported at %L", sym->name, &sym->declared_at);
}
- if (sym->ns
- && sym->ns->parent
- && sym->ns->parent->code
- && sym->ns->parent->code->op == EXEC_BLOCK)
+ if (sym->ns && sym->ns->construct_entities)
{
if (sym->attr.referenced)
gfc_get_symbol_decl (sym);