Visual D dmdserver

frame frame86 at live.com
Mon Feb 14 11:37:19 UTC 2022


On Sunday, 13 February 2022 at 17:26:49 UTC, Rainer Schuetze 
wrote:

> The dmdserver uses this fork of dmd: 
> https://github.com/rainers/dmd/tree/dmdserver
>
> The call stack looks like an incomplete delegate type with the 
> function type missing.
>
> Maybe this has to do with the server not stopping after failing 
> to parse the source, so you can still have partial semantic 
> analysis. In some cases, the origial parser inserts null 
> pointers into the syntax tree, but I've tried to replace this 
> with error objects. It is possible that new code in dmd 
> introduced more instances of this.
>
> It would be good if you could provide an example source that 
> reproduces the problem.

Yes, makes more sense with the right sources now.
The error may occurred as I re-organized my modules and a type 
became unavailable(?)

The `typeSemantic` function is called with a null-argument indeed:
```d
type = null
loc.filename = "..\dmd2\src\phobos\std\array.d"
```
Something related to `Appender.put!`, to precise this line (3513):
```d
auto bigData = (() @trusted => _data.arr.ptr[0 .. len + 1])();
                ^
```

called from `ForeachType!` and my missing type, I assume. 
Unfortunately, I only see the filename to my source file but 
didn't found out the actual line number of the call yet (The data 
I found hat a 0 line number).


More information about the Digitalmars-d-ide mailing list