D lexer, parser, and ImportC parser are now standalone

RazvanN razvan.nitu1305 at gmail.com
Fri Apr 14 10:58:55 UTC 2023


On Thursday, 13 April 2023 at 14:29:56 UTC, Andrej Mitrovic wrote:
> On Thursday, 13 April 2023 at 14:27:33 UTC, Andrej Mitrovic 
> wrote:
>> [...]
>
> ```
> $ dmd -I/c/dev/dmd/compiler/src/ app.d
> app.d(17): Error: none of the overloads of `this` are callable 
> using argument types `(string, immutable(char)*, int, ulong, 
> int, int)`
> /c/dev/dmd/compiler/src/dmd/lexer.d(111):        Candidates 
> are: `dmd.lexer.Lexer.this(const(char)* filename, const(char)* 
> base, ulong begoffset, ulong endoffset, bool doDocComment, bool 
> commentToken, ErrorSink errorSink, const(char)[] vendor = 
> "DLF", uint versionNumber = 1u)`
> /c/dev/dmd/compiler/src/dmd/lexer.d(170):                       
>  `dmd.lexer.Lexer.this(const(char)* filename, const(char)* 
> base, ulong begoffset, ulong endoffset, bool doDocComment, bool 
> commentToken, bool whitespaceToken, ErrorSink errorSink)`
> /c/dev/dmd/compiler/src/dmd/lexer.d(182):                       
>  `dmd.lexer.Lexer.this(ErrorSink errorSink)`
> ```
>
> I'll submit to bugzilla.

Try with this fix: https://github.com/dlang/dmd/pull/15106

Note that you should use the dub package by simply using ./lexer 
, ./parser etc. That way all the dependencies are being taken 
care of.


More information about the Digitalmars-d mailing list