[svn] r7386: nemerle/trunk/ncc: testsuite/negative/array.n
typing/Typer.n
nazgul
svnadmin at nemerle.org
Mon Feb 5 18:07:04 CET 2007
Log:
Upper bound on array dimensions
Author: nazgul
Date: Mon Feb 5 18:07:02 2007
New Revision: 7386
Modified:
nemerle/trunk/ncc/testsuite/negative/array.n
nemerle/trunk/ncc/typing/Typer.n
Modified: nemerle/trunk/ncc/testsuite/negative/array.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/negative/array.n (original)
+++ nemerle/trunk/ncc/testsuite/negative/array.n Mon Feb 5 18:07:02 2007
@@ -11,3 +11,9 @@
_ = array.[[]][] // E: invalid array rank
}
}
\ No newline at end of file
+
+class Bug872 {
+ foo () : void {
+ _ = array.[33][] // E: array must have at most 32 dimensions
+ }
+}
Modified: nemerle/trunk/ncc/typing/Typer.n
==============================================================================
--- nemerle/trunk/ncc/typing/Typer.n (original)
+++ nemerle/trunk/ncc/typing/Typer.n Mon Feb 5 18:07:02 2007
@@ -1259,6 +1259,9 @@
| PT.PExpr.Array (<[ $(r : int) ]>, _) when r < 1 =>
ReportFatal (messenger, "array must have positive dimensions")
+ | PT.PExpr.Array (<[ $(r : int) ]>, _) when r > 32 =>
+ ReportFatal (messenger, "array must have at most 32 dimensions (.NET runtime limit)")
+
| PT.PExpr.Array (<[ $(r : int) ]>, PT.PExpr.ListLiteral ([])) =>
def list_of_zeros (r) {
| 1 => [ <[ 0 ]> ]
More information about the svn
mailing list