aBothe / Mono-D

D Add-In for MonoDevelop
http://wiki.dlang.org/Mono-D
Other
113 stars 26 forks source link

Auto-Complete Failure in specific scenario #622

Open default0 opened 8 years ago

default0 commented 8 years ago

Most minimal repro I could create:

template T()
{
    struct S
    {
        int a, b, c;
    }
    static void print(S[] p_args...)
    {
        foreach(S cur; p_args)
        {
            writeln(cur|
        }
    }
}

If you put the cursor where the | is (after cur) and hit . the members of S will not appear in the completion list. Changing print to be non-static or moving the code outside the template fixes the problem.

aBothe commented 8 years ago

Nice okay, this completion case should be reproducable and even unit-testable. Gonna care about this. Thanks for the report! :)

default0 commented 8 years ago

There are various other corner cases I encountered where intellisense or rename-refactoring behave oddly, should I create similar reports as I encouter them in the future (might be a bunch of things, though)?

aBothe commented 8 years ago

Yes please!