Versioned extern?

Nick Sabalausky a at a.a
Sat Jul 23 20:35:39 PDT 2011


Is there a way to have a section of code be extern(C) on one OS and 
extern(Windows) on another OS, without resorting making the code in question 
a mixin?

These doesn't appear to work:

------------------------------
version(Windows)
{
    enum callingConvention = "Windows";
}
else
{
    enum callingConvention = "C";
}

extern(mixin(callingConvention ))
{
    /+ ...code here... +/
}
------------------------------
version(Windows)
{
    extern(Windows):
}
else
{
    extern(C):
}

/+ ...code here... +/

extern(D):
------------------------------






More information about the Digitalmars-d-learn mailing list