X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=Test.obn;h=8aea2558a93efbec45e4a9117831ef6c41a9542a;hb=5d57ba4284b2808e0de685dcf3a7f78e477bc548;hp=b80d7a15c3a490308c7b343ab2843e710f22efde;hpb=49ad3c76fc9656759aab23d9034ebc33f8d8bd9d;p=dsw-obn.git diff --git a/Test.obn b/Test.obn index b80d7a1..8aea255 100644 --- a/Test.obn +++ b/Test.obn @@ -1,22 +1,17 @@ MODULE Test; TYPE - R1 = RECORD END; - R2 = RECORD (R1) END; - R3 = RECORD END; + Elem = POINTER TO ElemDesc; + ElemDesc = RECORD END; - P1 = POINTER TO R1; - P2 = POINTER TO R2; + ElemMsg = RECORD END; + CopyMsg = RECORD (ElemMsg) a : Elem; END; -VAR - a : R1; - b : R2; - c : R3; - p1 : P1; - p2 : P2; + Alien = POINTER TO RECORD (ElemDesc) END; +PROCEDURE HandleAlien (VAR msg: ElemMsg); BEGIN - a := b; - p2 := p1(P2); - p1 := p2(P2); + WITH msg: CopyMsg DO msg.a := NIL END +END HandleAlien; + END Test.