Compiler Bug

Alex AJ at gmail.com
Tue Apr 2 13:24:51 UTC 2019


On Tuesday, 2 April 2019 at 13:21:46 UTC, Basile B. wrote:
> On Tuesday, 2 April 2019 at 12:35:18 UTC, Alex wrote:
>> Comes from doing foo!(Alias!([AliasSeq!(A,B,C)])) or just 
>> foo!(AliasSeq!(A,B,C)) when trying to pass a type for A, 
>> removing A works. A is a template parameter from another 
>> template.
>>
>> Shouldn't the errors give line numbers and source code where 
>> the error occcured rather than a bunch of rather useless 
>> information? I realize it is a fault but if it can spit out 
>> that info maybe it should keep track source code(the 
>> compilers).
>
> You need to use the debug build of the compiler to get the back 
> trace with the stack of calls and their respective location the 
> compiler source files. This build must be done by yourself.
>
> If you don't want to open an issue in the bugtracker please at 
> least provide a simple example that reproduce the crash. Also 
> try to see if the crash still happens with the latest compiler 
> version (beta 2.085.1 includes a dozen of compiler bugs leading 
> to crashes fixed)
>
> It's also a good idea to check the test case here 
> https://run.dlang.io/is/DA3AnV, with the option to test with 
> all the DMD versions.
>
> Here the bug ultimately ends with an AV so there's chances that 
> it's easy to fix, i.e just an unsafe access to check. If 
> run.dlang.io indicates that it used to work than the history 
> (a.k.a 'the git blame') could help a bit too.

Would it not be nice if dmd came with a debug compiler? Such as 
dmdd? That would make it real easy to help out better.


More information about the Digitalmars-d mailing list