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

TEST: 1004T28-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  
50  
51  
52  
53  
54  
55  
56  
57  
58  
59  
60  
61  
62  
63  
64  
65  
66  
67  
68  
69  
70  
71  
72  
 definition{public} Graphical;  
      procedure MoveTo (newX, newY: integer);  
      procedure MoveBy (dx, dy: integer);  
      procedure Draw;  
      procedure Draw2;  
 end Graphical.  
   
 implementation Graphical;  
      import Main;  
      var x, y: integer; (* object\\\\\\\\'s position *)  
   
      procedure MoveTo (newX, newY: integer);  
      begin  
           inc(Main.ok);  
           writeln("Graphical.MoveTo");  
           x := newX; y := newY  
      end MoveTo;  
   
      procedure MoveBy (dx, dy: integer);  
      begin  
           writeln("Graphical.MoveBy");  
           x := x + dx; y := y + dy  
      end MoveBy;  
   
      procedure{public} Draw implements Graphical.Draw;  
      begin  
           writeln("Graphical.Draw");  
      end Draw;  
   
      procedure{public} Draw2 implements Graphical.Draw2;  
      begin  
      end Draw2;  
   
 end Graphical.  
   
 definition Rectangle refines Graphical;  
 var width, height: integer;  
   
      procedure{public} Area(): integer;  
 end Rectangle.  
   
 implementation Rectangle;  
   
 end Rectangle.  
   
   
 object{ref} Box implements Rectangle;  
 import Main;  
      procedure{public} Area(): integer implements Rectangle.Area;  
      begin  
           inc(Main.ok);  
           writeln("Box.Area");  
           return 0  
      end Area;  
   
 end Box.  
   
   
   
 module Main;  
 import Box;  
 var {public} ok : integer;  
   
 var b: Box;  
   
 begin  
 b := new Box();  
 ok := 0;  
 b.Area();   
 b.MoveTo(10,10);  
 if ok = 2 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