aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/interface.c7
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index efa3140..e67b9bb 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2006-07-05 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/20892
+ * interface.c (gfc_match_interface): Don't allow dummy procedures
+ to have a generic interface.
+
2006-07-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28174
diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c
index bc99aab..f1d968d 100644
--- a/gcc/fortran/interface.c
+++ b/gcc/fortran/interface.c
@@ -217,6 +217,13 @@ gfc_match_interface (void)
&& gfc_add_generic (&sym->attr, sym->name, NULL) == FAILURE)
return MATCH_ERROR;
+ if (sym->attr.dummy)
+ {
+ gfc_error ("Dummy procedure '%s' at %C cannot have a "
+ "generic interface", sym->name);
+ return MATCH_ERROR;
+ }
+
current_interface.sym = gfc_new_block = sym;
break;