Lexers (again)

Brian Schott briancschott at gmail.com
Mon Dec 16 15:17:51 PST 2013


On Sunday, 15 December 2013 at 16:38:15 UTC, Andrei Alexandrescu 
wrote:
> The problem is that tok is a dynamic value. It should be a 
> static value. Current code:

This seems to have fixed the case/goto issues.

> This is important - if the compiler thinks tok is a dynamic 
> value, it'll generate crappy switch statements.

It seems it's hard to keep dmd from generating crappy code even 
with this fix. I tried it with both LDC and DMD. The code from 
DMD takes 3.5 times as long to execute.

> BTW @Brian - I didn't look at this in depth yet but it's very 
> promising work. Thanks!

It's based off of the gist you posted a while back. I'll have to 
compare this to what you(r team) came up with for Facebook's C++ 
analyzer.


More information about the Digitalmars-d mailing list