[svn] r7406: nemerle/trunk/ncc: hierarchy/ClassMembers.n
testsuite/positive/abstract.n
nazgul
svnadmin at nemerle.org
Sun Feb 11 23:32:45 CET 2007
Log:
Abstract override
Author: nazgul
Date: Sun Feb 11 23:32:43 2007
New Revision: 7406
Modified:
nemerle/trunk/ncc/hierarchy/ClassMembers.n
nemerle/trunk/ncc/testsuite/positive/abstract.n
Modified: nemerle/trunk/ncc/hierarchy/ClassMembers.n
==============================================================================
--- nemerle/trunk/ncc/hierarchy/ClassMembers.n (original)
+++ nemerle/trunk/ncc/hierarchy/ClassMembers.n Sun Feb 11 23:32:43 2007
@@ -347,11 +347,6 @@
when (mem_is_override && IsPrivate)
Message.FatalError2 (loc, $"override $title_plural are not allowed to be private: $(this)");
- // do not allow to mix abstract with the 'override' modifier
- when (mem_is_abstract && mem_is_override)
- Message.FatalError2 (loc, $"abstract $title_plural are not allowed to have the "
- "'override' modifier: $(this)");
-
// static methods/properties cannot be abstract, virtual or override
when ((mem_is_abstract || mem_is_virtual || mem_is_override) && IsStatic)
Message.FatalError2 (loc, $"static $title_plural are not allowed to have the "
Modified: nemerle/trunk/ncc/testsuite/positive/abstract.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/positive/abstract.n (original)
+++ nemerle/trunk/ncc/testsuite/positive/abstract.n Sun Feb 11 23:32:43 2007
@@ -64,6 +64,21 @@
}
}
+namespace AbstractOverride {
+class Base {
+ public virtual Foo() : void {}
+}
+
+abstract class Derived : Base {
+ public abstract override Foo() : void;
+}
+class Concrete : Derived {
+ public override Foo() : void {
+ System.Console.WriteLine ("foo");
+ }
+}
+}
+
/*
OPTIONS: -doc:abstract.xml
More information about the svn
mailing list