Mission-Critical systems

tsbockman thomas.bockman at gmail.com
Wed Mar 17 19:54:23 UTC 2021


On Wednesday, 17 March 2021 at 17:13:00 UTC, Iain Buclaw wrote:
> On Wednesday, 17 March 2021 at 03:44:15 UTC, tsbockman wrote:
>> The DMD backend is quite buggy (and also optimizes poorly) 
>> compared to those used by GDC and LDC. On the other hand, the 
>> GDC frontend is very out of date compared to those used by DMD 
>> and LDC.
>>
>> So, definitely use LDC if you are planning to bet human lives 
>> and/or millions of dollars on it working fully correctly.
>
> This is misleading as if to say that GDC is not maintained, 
> which is untrue.  GDC's current feature freeze means it is 
> currently a stable rock whilst still getting backported 
> bugfixes from dmd master,

The latest version of GDC which I have easy access to (Ubuntu's 
10.2.0 package, since I can't find up to date binaries on the 
website) reports a frontend version of 2.076. And, it sounds like 
you're saying that this GDC version likely includes many 
improvements not listed in the DMD change logs up to 2.076.

But, how am I supposed to know what those backported improvements 
are? Is there a separate GDC frontend change log somewhere that 
documents all differences of significance to the user versus the 
standard 2.076 frontend? If so, I haven't been able to find it.

If I write code that requires a specific frontend bug fix or 
enhancement to work correctly, how can I detect whether GDC has 
it at compile time? On DMD and LDC I can just check the frontend 
__VERSION__, but that doesn't help me detect anything after the 
standard 2.076 with GDC.


More information about the Digitalmars-d mailing list