MODULE TRetMeth; (* A method returning a composite (record) result, with a method-local variable. Exit 42. *) VAR ExitCode : INTEGER; TYPE Rec = RECORD a, b : INTEGER END; CLASS C; x : INTEGER; PROCEDURE Get () : Rec; END C; CLASS IMPLEMENTATION C; PROCEDURE Get () : Rec; VAR q : Rec; BEGIN q.a := x; q.b := x + 1; RETURN q END Get; END C; VAR c : C; r : Rec; BEGIN c.x := 10; r := c.Get(); IF (r.a = 10) AND (r.b = 11) THEN ExitCode := 42 ELSE ExitCode := 1 END END TRetMeth.