But if you use "linux", then your code will *not*
compile on BSD - even if it is plain old POSIX ?
If you *do* use Linux-specific system / OS values,
then by all means continue to use "version(linux)"
And if you need stuff specific to GDC / GCC, then
you can use the handy "version(GNU)" that it sets...
But otherwise, "version(Unix)" should do just fine ?
--anders
PS. Apple Mac OS X is such a BSD variant... (called Darwin)
http://developer.apple.com/darwin/projects/darwin/faq.html

But if you use "linux", then your code will *not*
compile on BSD - even if it is plain old POSIX ?
If you *do* use Linux-specific system / OS values,
then by all means continue to use "version(linux)"
And if you need stuff specific to GDC / GCC, then
you can use the handy "version(GNU)" that it sets...
But otherwise, "version(Unix)" should do just fine ?

Actually it isn't fine.
GDC defines linux(where appropriate) and Unix - in contrast DMD only
defines linux. For the time being everyone should add
# version(linux){
# version=Unix;
# }
into the head of each source file ...
Seems to be worth a feature request, doesn't it?
Thomas