<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto">Andreas<div><br><blockquote type="cite"><div dir="ltr"><span> 1. Global case variables p in a case statement CASE p OF .. END</span></div></blockquote><br>Module initializers can not have a CASE. But this seems acceptable.<br><blockquote type="cite"><div dir="ltr"><span> </span><br><span> 2. Assignments *to* case variables p *within* the scope of a CASE statement </span></div></blockquote><div><br></div>If needed, declare a local variable and „mirror“ p. Seems an acceptable restriction. <div><blockquote type="cite"><div dir="ltr"><span> </span><br><span> 3. Passing a pointer case variable p as a VAR parameter to a procedure P(p)</span><br></div></blockquote><div><br></div>I could imagine an example where you have a CASE in a loop and the procedure P returns an object with another type to be processed by the next iteration. Here the „trick“ with the local variable as mentioned above can help as well. Restriction for such rare cases seems acceptable.</div><div><br></div><div><font color="#5856d6"><span style="caret-color: rgb(88, 86, 214);">Jörg</span></font></div></div></body></html>