summaryrefslogtreecommitdiff
path: root/gcc/fortran/symbol.c
diff options
context:
space:
mode:
authorjanus <janus@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-11 10:30:29 +0000
committerjanus <janus@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-11 10:30:29 +0000
commit72ac71f6b3cb6dcc7341021b7cb3b396145ceb3e (patch)
treea3351bfe9f451b4c12f87233dac962a0169370dc /gcc/fortran/symbol.c
parent8ad54c540a80d029cb36fbc242c0b25a6c6b9fa7 (diff)
downloadgcc-72ac71f6b3cb6dcc7341021b7cb3b396145ceb3e.tar.gz
2009-04-11 Janus Weil <janus@gcc.gnu.org>
PR fortran/39692 * symbol.c (check_conflict): Reject procedure pointers for -std=f95. 2009-04-11 Janus Weil <janus@gcc.gnu.org> PR fortran/39692 * gfortran.dg/proc_ptr_14.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145955 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/symbol.c')
-rw-r--r--gcc/fortran/symbol.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/fortran/symbol.c b/gcc/fortran/symbol.c
index a4f43a5f670..ea4946b8850 100644
--- a/gcc/fortran/symbol.c
+++ b/gcc/fortran/symbol.c
@@ -455,6 +455,10 @@ check_conflict (symbol_attribute *attr, const char *name, locus *where)
if ((attr->if_source == IFSRC_DECL && !attr->procedure) || attr->contained)
conf (external, subroutine);
+ if (attr->proc_pointer && gfc_notify_std (GFC_STD_F2003,
+ "Fortran 2003: Procedure pointer at %C") == FAILURE)
+ return FAILURE;
+
conf (allocatable, pointer);
conf_std (allocatable, dummy, GFC_STD_F2003);
conf_std (allocatable, function, GFC_STD_F2003);