<div class="gmail_quote">On 16 January 2012 02:08, Jonathan M Davis <span dir="ltr"><<a href="mailto:jmdavisProg@gmx.com">jmdavisProg@gmx.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Monday, January 16, 2012 01:44:56 Manu wrote:<br>
> Surely basic logical expressions within a version seem not only logical,<br>
> but also very necessary?<br>
> There must be a reason this is impossible, or else I can't believe it's not<br>
> already like that...<br>
<br>
</div>People have requested it. Walter is against it. I don't remember his exact<br>
arguments, but he believes that it leads to worse code if you allow it.<br></blockquote><div><br></div><div>Insanity, I argue the exact opposite. My code is WORSE for those 9 completely useless lines. Any sane person would look at that and wonder WTF... especially someone new to the language.</div>
<div>Imagine my expression was something more complex: version( A || (B && C) ) ... the munging code would double in size.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
As for<br>
<br>
version(linux || OSX)<br>
<br>
you can use<br>
<br>
version(Posix)<br>
<br>
It'll include FreeBSD as well, but then again, if something is common to both<br>
linux and OSX, then it's almost certainly in FreeBSD as well.</blockquote><div><br></div><div>Fair enough, although this is just an example.</div><div>In my current case, linux and MinGW are the same, but FreeBSD is different. You can't rely on predefined unions.</div>
</div>