DScanner 0.12.1 stopped working
Steven Schveighoffer
schveiguy at gmail.com
Tue Jul 5 15:22:57 UTC 2022
On 7/5/22 8:09 AM, RazvanN wrote:
> On Tuesday, 5 July 2022 at 09:53:29 UTC, Carsten Schlote wrote:
>> On Tuesday, 5 July 2022 at 08:30:29 UTC, Paolo Invernizzi wrote:
>>> [...]
>>
>> Thanks alot. Exactly what is needed.
>>
>> I changed my dub.selection file to your setup, and DScanner nicely
>> compiled. This is, what I had to change:
>>
>> ```
>> $ diff dub.selections.json dub.selections.json~
>> 4c4
>> < "dsymbol": "0.13.0",
>> ---
>>> [...]
>> 8c8
>> < "libdparse": "0.19.1",
>> ---
>>> [...]
>> ```
>> So, either dsymbol or libdparse did some incompatible change, despite
>> the fact that the version number (SemVer?) just bumped the build
>> number, but neither Majaor/Minor numbers.
>>
>> Later I will work out, which of the two modules is causing the
>> problem. Maybe this helps to track down the reason for this problem.
>
> It's probably libdparse since dsymbol depends on it. It's probably this
> PR that did it: https://github.com/dlang-community/libdparse/pull/463
The problem is that dscanner uses stdx.allocator, but libdparse was
switched to using std.experimental.allocator in that PR.
The result is that you can't pass an allocator from one lib to the
other, because they are from different modules.
There is a way to fix this: change libdparse to use stdx.allocator when
some other project has included it (this can be done with an optional
dependency specification).
-Steve
More information about the Digitalmars-d
mailing list