Visual D and 'Find all references' broke

Rainer Schuetze via Digitalmars-d-ide digitalmars-d-ide at puremagic.com
Mon Jun 6 15:21:04 PDT 2016



On 06.06.2016 00:25, Pie? wrote:
> On Sunday, 5 June 2016 at 22:19:17 UTC, Pie? wrote:
>> On Sunday, 5 June 2016 at 15:36:15 UTC, Rainer Schuetze wrote:
>>>
>>>
>>> On 04.06.2016 17:17, Pie? wrote:
>>>> [...]
>>>
>>> Unfortunately, the implementation of "Find all references" is rather
>>> incomplete (In my short experiments it worked for local variables,
>>> but that's not a really its purpose). It uses the same semantic
>>> engine as Mono-D which seems to perform much better. So it could just
>>> be a matter of fixing some bugs, but I didn't have time to get back
>>> to it recently...
>>>
>>> Pull requests welcome :D
>>
>> How difficult is it to setup an maintain? Can I open the project in
>> Visual Studio, make a change, compile and restart a VS test project
>> and check the changes? Or have you already setup everything to play nice?
>
> What I mean is, am I going to have to do a lot of work to make it work
> on my system or can I just dive in and make changes and it work ;) (I'm
> lazy/don't have a lot of time)

Unfortunately it's not super-easy, but if you only want to work on the 
semantic engine, it might be not too complicated as you don't have to 
build Visual D itself:

- make a clone of the Visual D repository
- make sure you also update D_Parser as a submodule in vdc/abothe/Parser
- load solution vdc/abothe/VDserver.sln
- make sure there is no other process DParserCOMServer.exe running, e.g. 
by closing all Visual Studio processes that have D files loaded
- build and run DParserCOMServer
- set a breakpoint in GetReferences() in vdc\abothe\comserver\VDServer.cs
- start another instance of VS, it should attach to your 
DParserCOMServer process and call GetReferences() if you issue "Find all 
References"
- you should be able to step through the code and fix all bugs ;-)

Good luck!


More information about the Digitalmars-d-ide mailing list