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

TEST: 050308T01-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
(12, 37) Syntax warning in array size specification: probably you forgot to write '*'
PASSED Compiler: 1.2.8.0
Date, time: 2010.08.06, 22:22
Compilation: SUCCESS
Execution: SUCCESS
(12, 37) Syntax warning in array size specification: probably you forgot to write '*'
(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  
 (**   
  * 5. Declarations.  
  * 5.3. Type declaration.  
  * 5.3.7. Procedure types.  
  *  
  * Positive test: procedure type with value parameter.  
  *)  
 module Main;  
      type RealIterator = procedure(real);  
   
      (* The procedure call any RealIterator for each array element. *)  
      procedure Iterate(v : array of real; p : RealIterator);  
      var i : integer;  
      begin  
           for i := 0 to len(v)-1 do;  
                p(v[i]);  
           end;  
      end Iterate;  
   
      var s : real;  
   
      procedure Counter(r : real);  
      begin   
           s := s + r   
      end Counter;  
   
      var theVector : array 3 of real;  
           i : integer;  
 begin  
      (* Initialize the iterated vector. *)  
      for i := 0 to 2 do;  
           theVector[i] := 1.0;  
      end;  
   
      (* Iterate the vector. *)  
      s := 0.0;  
      Iterate(theVector, Counter);  
   
      (* Check result of the iteration. *)  
      if s = 3.0   
      then halt(1) else halt(0) end;  
 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