On Sunday, 28 June 2015 at 13:43:39 UTC, Artur Skawina wrote:
On 06/28/15 05:06, Joakim via Digitalmars-d wrote:
So you're trying to avoid writing this?

version(linux) version(D_LP32)
    version = valistIsCharPointer;
else version(Windows)
    version = valistIsCharPointer;

While your version is more concise, I actually think the current form is more clear.

And wrong. Spot the bug.

Eh, that idiom is not commonly used so I wasn't exactly clear on the syntax, but you're presumably referring to the need for braces?

version(linux)
{   version(D_LP32) version = valistIsCharPointer; }
else version(Windows)
    version = valistIsCharPointer;

I actually find this even more clear, the best of the bunch. :)

That's the real reason why 'version' needs to be banned from the codebase. You should *never* use D's 'version'.

If you think it needs to be banned because of some non-obvious bracing syntax, you don't have much to stand on.

Reply via email to