<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Sat, Aug 17, 2013 at 3:36 PM, H. S. Teoh <span dir="ltr"><<a href="mailto:hsteoh@quickfur.ath.cx" target="_blank">hsteoh@quickfur.ath.cx</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">On Sat, Aug 17, 2013 at 03:29:56PM -0700, Timothee Cour wrote:<br>

[...]<br>
<div class="im">> Related question:<br>
><br>
> Why isn't the following allowed:<br>
> ----<br>
> void fun(){<br>
> // code without version=A<br>
>   version=A;<br>
> // code with version=A<br>
>   vesion(none):<br>
> //code versioned out<br>
> }<br>
> ----<br>
> I understand the grammar doesn't allow it, but what's the rationale,<br>
> and can it be fixed?<br>
<br>
</div>Not exactly sure what you're trying to achieve, but isn't this what you<br>
want:<br>
<br>
        void fun() {<br>
                version(A) {<br>
                        ...<br>
                } else {<br>
                        ..<br>
                }<br>
        }<br>
<br>
?<br>
<br>
Or are you trying to change version=A inside the function?<br></blockquote><div><br></div><div>The latter:  having 'version=A '  inside the function.</div><div>Currently we can only set version=A at module scope, not function scope. I don't understand the rationale for this limitation. </div>
<div>Likewise with 'version(A):' which is allowed at module scope but not function scope, ; this would be  especially useful with 'version(none):'.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<span class=""><font color="#888888">
<br>
T<br>
<br>
--<br>
"Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next. -- (Stolen from the net)<br>
</font></span></blockquote></div><br></div></div>