[svn] r6433: nemerle/trunk/ncc: hierarchy/ClassMembers.n
testsuite/negative/wrong-args.n
nazgul
svnadmin at nemerle.org
Thu Jul 6 23:30:54 CEST 2006
Log:
Error on params in static ctor
Author: nazgul
Date: Thu Jul 6 23:30:52 2006
New Revision: 6433
Modified:
nemerle/trunk/ncc/hierarchy/ClassMembers.n
nemerle/trunk/ncc/testsuite/negative/wrong-args.n
Modified: nemerle/trunk/ncc/hierarchy/ClassMembers.n
==============================================================================
--- nemerle/trunk/ncc/hierarchy/ClassMembers.n (original)
+++ nemerle/trunk/ncc/hierarchy/ClassMembers.n Thu Jul 6 23:30:52 2006
@@ -854,6 +854,8 @@
| (FunKind.Method ([]), ".ctor") when IsStatic =>
this.m_has_been_used = true;
this.name = ".cctor";
+ unless (parms.IsEmpty)
+ Message.Error ("static constructor cannot have any parameters");
FunKind.StaticConstructor ()
| (FunKind.Method ([]), ".ctor") =>
@@ -862,10 +864,6 @@
FunKind.Constructor ()
| (FunKind.Method ([]), _) when IsStatic => FunKind.Function ()
- | (FunKind.Constructor, _) when IsStatic =>
- this.m_has_been_used = true;
- this.name = ".cctor";
- FunKind.StaticConstructor ()
| (FunKind.Method (_ :: _), ".ctor") =>
Message.Error ("constructor cannot implement anything");
Modified: nemerle/trunk/ncc/testsuite/negative/wrong-args.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/negative/wrong-args.n (original)
+++ nemerle/trunk/ncc/testsuite/negative/wrong-args.n Thu Jul 6 23:30:52 2006
@@ -1,3 +1,15 @@
class A ['a, 'b] {}
class B ['a] : A ['a] {} // E: wrong number of type parameters to `A'
class C : A {} // E: wrong number of type parameters to `A'
+
+
+
+public struct MyStruct
+{
+ public static a : int;
+
+ static this(b : int) // E: static constructor cannot have any parameters
+ {
+ a = b;
+ }
+}
More information about the svn
mailing list