aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/class.c
diff options
context:
space:
mode:
authorJanus Weil <janus@gcc.gnu.org>2016-11-22 17:06:46 +0100
committerJanus Weil <janus@gcc.gnu.org>2016-11-22 17:06:46 +0100
commit5d382ed61b571550179b016b5809790613cda1a1 (patch)
treee93506d4e21d5bf6271660e2a14b14206d1f01d8 /gcc/fortran/class.c
parent4fa33072bf8192708e9d674db57f13de0b746078 (diff)
downloadgcc-5d382ed61b571550179b016b5809790613cda1a1.zip
gcc-5d382ed61b571550179b016b5809790613cda1a1.tar.gz
gcc-5d382ed61b571550179b016b5809790613cda1a1.tar.bz2
re PR fortran/78443 ([OOP] Incorrect behavior with non_overridable keyword)
2016-11-22 Janus Weil <janus@gcc.gnu.org> PR fortran/78443 * class.c (add_proc_comp): Add a vtype component for non-overridable procedures that are overriding. 2016-11-22 Janus Weil <janus@gcc.gnu.org> PR fortran/78443 * gfortran.dg/typebound_proc_35.f90: New test case. From-SVN: r242703
Diffstat (limited to 'gcc/fortran/class.c')
-rw-r--r--gcc/fortran/class.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fortran/class.c b/gcc/fortran/class.c
index 9db86b4..ba965c9 100644
--- a/gcc/fortran/class.c
+++ b/gcc/fortran/class.c
@@ -751,7 +751,7 @@ add_proc_comp (gfc_symbol *vtype, const char *name, gfc_typebound_proc *tb)
{
gfc_component *c;
- if (tb->non_overridable)
+ if (tb->non_overridable && !tb->overridden)
return;
c = gfc_find_component (vtype, name, true, true, NULL);