Quality of errors in DMD

Ethan Watson via Digitalmars-d digitalmars-d at puremagic.com
Sun Sep 4 07:29:25 PDT 2016


On Sunday, 4 September 2016 at 10:33:44 UTC, Walter Bright wrote:
> As I mentioned before, assert failures are usually the result 
> of the last edit one did. The problem is already narrowed down.

I got the error at the start of the thread because I added a 
variable to a class. The class is having two mixins applied to 
it, which invoke templated code themselves. I knew that 
commenting out this variable would work around the problem - but 
it very definitely was not a good workaround as this struct is 
being used to match a C++ struct. Which meant I had to fumble my 
way through multiple mixins and templates working out what had 
actually caused the problem.

Saying an assert is the result of the last thing you did, sure, 
it tends to be correct. But it's not as simple in D as it was in 
the C/early C++ days, especially when mixins are already a pain 
to debug.


More information about the Digitalmars-d mailing list