Final by default?

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Thu Mar 13 17:39:35 PDT 2014


On 3/13/14, 3:21 PM, Timon Gehr wrote:
> On 03/13/2014 02:32 PM, Steven Schveighoffer wrote:
>>
>> The one I would really like to see is logical OR. There is no easy way
>> around this, one must come up with convoluted mechanisms that are much
>> harder to design, write, and understand than just version(x || y)
>
> version(A) version=AorB;
> version(B) version=AorB;
> version(AorB){ }

 From a project at work:

// Import the appropriate built-in #define menagerie
version (gcc4_7_1) {
   version = gnu;
   import defines_gcc4_7_1, defines_gxx4_7_1;
}
version (gcc4_8_1) {
   version = gnu;
   import defines_gcc4_8_1, defines_gxx4_8_1;
}
version (clang3_2) {
   version = clang;
   import defines_clang3_2, defines_clangxx3_2;
}
version (clang3_4) {
   version = clang;
   import defines_clang3_4, defines_clangxx3_4;
}
version (clangdev) {
   version = clang;
   import defines_clangdev, defines_clangxxdev;
}
...
// Compiler-dependent extra defines
version (gnu) {
   ...
}
version (clang) {
   ...
}


yum

Andrei




More information about the Digitalmars-d mailing list