Home
   News
   About the project
   Language
   Compiler download
   Test suite
   Blog on the programming model
   Zonnon @ OCP Forum
   Collection of examples

TEST: 05030302T16-T

category

status

Compilation and execution results for Windows (first) and Mono (second)
PASSED Compiler: 1.2.8.0
Date, time: 2010.08.06, 18:06
Compilation: SUCCESS
Execution: SUCCESS
PASSED Compiler: 1.2.8.0
Date, time: 2010.08.06, 22:22
Compilation: SUCCESS
Execution: SUCCESS
(0, 0) Assembly reference not resolved: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a.

code

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
45  
46  
47  
48  
49  
 (**   
  * 5. Declarations.  
  * 5.3. Type declaration.  
  * 5.3.4. String type.  
  *  
  * Negative test: 2-dimensional semi-dynamic array as procedure result;  
  * Wrong indexing of the result.  
  *)  
 module Main;  
      type Matrix = array *,* of integer;  
   
      (*   
       * The procedure sets matrix diagonal elements to 1   
      * and other elements to 0 and returns this matrix.  
       *)  
      procedure OneMatrix(n : integer) : Matrix;  
           var i, j : integer;  
                matrix : Matrix;  
      begin  
           matrix := new Matrix(n, n);  
           for i := 0 to len(matrix, 0)-1 do;  
                for j := 0 to len(matrix, 1)-1 do;  
                     if i = j   
                     then matrix[i,j] := 1;  
                     else matrix[i,j] := 0;  
                     end;  
                end;  
           end;  
           return matrix;  
      end OneMatrix;  
   
      var s, i, j : integer;  
           m : Matrix;  
 begin  
      s := 0;  
      m := OneMatrix(3);  
   
      do  
           for i := 0 to 3 do  
                for j := 0 to 3 do  
                     s := s + m[i,j]  
                end  
           end   
      on OutOfRange do  
           halt(1)  
      end;  
        
      halt(0);  
 end Main. 

information

  • PASSED - overall positive decision about the test
  • NOT PASSED - overall negative decision about the test
  • SUCCESS - compilation / execution successful
  • ERROR - compilation failed with normal syntax or semantic error
  • ABORT - compilation failed because of an internal compiler error
  • NOT RUN - the test was not / not supposed to be executed
  • FAIL - execution failed
Copyright © 2010 ETH Zurich, Switzerland