www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - __VERSION__ and the different compilers

reply Mike Parker <aldacron gmail.com> writes:
Is it safe to assume that __VERSION__ is the same among DMD, LDC and GDC 
when using the equivalent front-end? I want to implement  nogc in 
Derelict in a backward compatible way. The simple thing to do is (at the 
suggestion of w0rp):

static if( __VERSION__ < 2.066 ) enum nogc = 1;

I just want to verify that this is sufficient and that I don't need to 
test for version(DMD) and friends as well.

---
This email is free from viruses and malware because avast! Antivirus protection
is active.
http://www.avast.com
Jul 09 2014
next sibling parent "bearophile" <bearophileHUGS lycos.com> writes:
Mike Parker:

 Is it safe to assume that __VERSION__ is the same among DMD, 
 LDC and GDC when using the equivalent front-end?
Right. An alternative solution is to use __traits(compiles) and use nogc inside it. Bye, bearophile
Jul 09 2014
prev sibling parent Andrej Mitrovic via Digitalmars-d-learn writes:
On 7/9/14, Mike Parker via Digitalmars-d-learn
<digitalmars-d-learn puremagic.com> wrote:
 Is it safe to assume that __VERSION__ is the same among DMD, LDC and GDC
 when using the equivalent front-end?
Yes, but not all future compilers might implement this (although I hope they will). I think there's also __VENDOR__ IIRC.
Jul 09 2014