2002-07-02 Miguel de Icaza <miguel@ximian.com>
authorMiguel de Icaza <miguel@gnome.org>
Tue, 2 Jul 2002 21:14:19 +0000 (21:14 -0000)
committerMiguel de Icaza <miguel@gnome.org>
Tue, 2 Jul 2002 21:14:19 +0000 (21:14 -0000)
* class.cs (Method, Property, Indexer): Do not allow the public
modifier to be used in explicit interface implementations.

svn path=/trunk/mcs/; revision=5557

mcs/mcs/ChangeLog
mcs/mcs/class.cs

index 359c7ed83939efc006f604d2f7d2ba70371bba27..6e5751dbc23bc969e59e9a098a60941ae1e3bbe4 100755 (executable)
@@ -1,3 +1,8 @@
+2002-07-02  Miguel de Icaza  <miguel@ximian.com>
+
+       * class.cs (Method, Property, Indexer): Do not allow the public
+       modifier to be used in explicit interface implementations.
+
 2002-07-02  Martin Baulig  <martin@gnome.org>
 
        * typemanager.cs (TypeManager.InitCoreTypes): When compiling
index a9b32c2cdafb65728a1a0b53fdc75a5dcbb4fac4..180f1107b38d63d406985dbaadf9904d102d71a3 100755 (executable)
@@ -2029,11 +2029,10 @@ namespace Mono.CSharp {
                                        if ((ModFlags & Modifiers.STATIC) != 0)
                                                implementing = null;
                                } else {
-                                       if ((ModFlags & (Modifiers.PUBLIC | Modifiers.ABSTRACT)) != 0){
+                                       if ((ModFlags & (Modifiers.PUBLIC | Modifiers.ABSTRACT | Modifiers.VIRTUAL)) != 0){
                                                Report.Error (
-                                                       106, Location, "`public' or `abstract' modifiers "+
-                                                       "are not allowed in explicit interface declarations"
-                                                       );
+                                                       106, Location, "`public', `virtual' or `abstract' modifiers "+
+                                                       "are not allowed in explicit interface declarations");
                                                implementing = null;
                                        }
                                }
@@ -2766,9 +2765,9 @@ namespace Mono.CSharp {
                                        if ((ModFlags & Modifiers.STATIC) != 0)
                                                implementing = null;
                                } else {
-                                       if ((ModFlags & (Modifiers.PUBLIC | Modifiers.ABSTRACT)) != 0){
+                                       if ((ModFlags & (Modifiers.PUBLIC | Modifiers.ABSTRACT | Modifiers.VIRTUAL)) != 0){
                                                Report.Error (
-                                                       106, Location, "`public' or `abstract' modifiers "+
+                                                       106, Location, "`public', `virtual' or `abstract' modifiers "+
                                                        "are not allowed in explicit interface declarations"
                                                        );
                                                implementing = null;
@@ -3399,10 +3398,10 @@ namespace Mono.CSharp {
                                        if ((ModFlags & Modifiers.STATIC) != 0)
                                                implementing = null;
                                } else {
-                                       if((ModFlags&(Modifiers.PUBLIC | Modifiers.ABSTRACT)) != 0){
+                                       if((ModFlags&(Modifiers.PUBLIC | Modifiers.ABSTRACT | Modifiers.VIRTUAL)) != 0){
                                                Report.Error (
                                                        106, Location,
-                                                       "`public' or `abstract' modifiers are not "+
+                                                       "`public', `virtual' or `abstract' modifiers are not "+
                                                        "allowed in explicit interface declarations"
                                                        );
                                                implementing = null;