aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <coudert@clipper.ens.fr>2006-07-05 17:22:26 +0200
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2006-07-05 15:22:26 +0000
commite5d7f6f7358faa1ff7cf96d45b17bf07aa9fad6c (patch)
tree359c04edb9688685dd778117266ea6cbd139f035 /gcc
parent09b868558b4beffb64f04223ffb981d92052b53e (diff)
downloadgcc-e5d7f6f7358faa1ff7cf96d45b17bf07aa9fad6c.zip
gcc-e5d7f6f7358faa1ff7cf96d45b17bf07aa9fad6c.tar.gz
gcc-e5d7f6f7358faa1ff7cf96d45b17bf07aa9fad6c.tar.bz2
re PR fortran/20892 (dummy procedure can't be generic)
PR fortran/20892 * interface.c (gfc_match_interface): Don't allow dummy procedures to have a generic interface. From-SVN: r115201
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;