aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
authorJanus Weil <jaydub66@gmail.com>2007-07-17 21:33:34 +0000
committerTobias Burnus <burnus@gcc.gnu.org>2007-07-17 23:33:34 +0200
commit4665abc46c9e1b0a6a7eace3ff9aff827ae7179f (patch)
tree7916ae5fcf8e54e378cb2b3aee500b5499ea6fe3 /gcc/fortran
parent0af0580f585860dd5216d84593b1d816953f7a10 (diff)
downloadgcc-4665abc46c9e1b0a6a7eace3ff9aff827ae7179f.zip
gcc-4665abc46c9e1b0a6a7eace3ff9aff827ae7179f.tar.gz
gcc-4665abc46c9e1b0a6a7eace3ff9aff827ae7179f.tar.bz2
re PR fortran/32535 (namelist with private items contained in sub-sub-procedure of a module rejected)
2007-07-17 Janus Weil <jaydub66@gmail.com> PR fortran/32535 * resolve.c (resolve_fl_namelist): Check for namelist private components in contained subprograms. 2007-07-17 Janus Weil <jaydub66@gmail.com> PR fortran/32535 * gfortran.dg/pr32535.f90: New test. From-SVN: r126706
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/resolve.c2
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 726fd18..2b46228 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2007-07-17 Janus Weil <jaydub66@gmail.com>
+
+ PR fortran/32535
+ * resolve.c (resolve_fl_namelist): Check for namelist private
+ components in contained subprograms.
+
2007-07-17 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31320
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index aa3c809..d335f36 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -6969,6 +6969,8 @@ resolve_fl_namelist (gfc_symbol *sym)
{
if (!nl->sym->attr.use_assoc
&& !(sym->ns->parent == nl->sym->ns)
+ && !(sym->ns->parent
+ && sym->ns->parent->parent == nl->sym->ns)
&& !gfc_check_access(nl->sym->attr.access,
nl->sym->ns->default_access))
{