[svn] r5994: nemerle/trunk: macros/core.n ncc/testsuite/positive/enumerator.n ncc/typing/Typer.n

malekith svnadmin at nemerle.org
Mon Dec 5 11:31:15 CET 2005


Log:
Use correct indexing in multidimensional arrays iteration.

Author: malekith
Date: Mon Dec  5 11:31:14 2005
New Revision: 5994

Modified:
   nemerle/trunk/macros/core.n
   nemerle/trunk/ncc/testsuite/positive/enumerator.n
   nemerle/trunk/ncc/typing/Typer.n

Modified: nemerle/trunk/macros/core.n
==============================================================================
--- nemerle/trunk/macros/core.n	(original)
+++ nemerle/trunk/macros/core.n	Mon Dec  5 11:31:14 2005
@@ -464,7 +464,7 @@
             sequence = <[ def $(lengths [0] : name) = cached_collection.Length ]> :: sequence;
           else
             for (mutable i = rank - 1; i >= 0; --i)
-              sequence = <[ def $(lengths [i] : name) = cached_collection.GetLength ($(i : int)) ]>
+              sequence = <[ def $(lengths [(rank - 1) - i] : name) = cached_collection.GetLength ($(i : int)) ]>
                          :: sequence;
 
           sequence = <[ def cached_collection = $(tcollection : typed) ]> :: sequence;

Modified: nemerle/trunk/ncc/testsuite/positive/enumerator.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/positive/enumerator.n	(original)
+++ nemerle/trunk/ncc/testsuite/positive/enumerator.n	Mon Dec  5 11:31:14 2005
@@ -40,7 +40,13 @@
         // test List.Sort stability
     printf ("%s\n", List.Sort ([(2, 0), (1, 1), (1, 2)], fun (_) {
       | (((x : int), _), (y, _)) => x - y
-    }).ToString ())
+    }).ToString ());
+
+
+        def a = array .[2][[1,2], [3,4], [4,5]];
+        foreach (b in a)
+            System.Console.WriteLine(b);
+    
   }
 }
 /*
@@ -53,5 +59,11 @@
 bb 2
 cc 3
 [(1, 1), (1, 2), (2, 0)]
+1
+2
+3
+4
+4
+5
 END-OUTPUT
 */

Modified: nemerle/trunk/ncc/typing/Typer.n
==============================================================================
--- nemerle/trunk/ncc/typing/Typer.n	(original)
+++ nemerle/trunk/ncc/typing/Typer.n	Mon Dec  5 11:31:14 2005
@@ -3055,8 +3055,8 @@
           public MoveNext () : bool
           {
             _N_MoveNext_exit : {
+              // AddYieldStateMachine will add something here, and change -42 to _N_state
               match (-42) {
-                // AddYieldStateMachine will add something here
                 | 0 => {}
                 | _ => _N_MoveNext_exit (false)
               }



More information about the svn mailing list