May 10, 2015

On 09.05.2015 23:49, Kagamin wrote:
> On Friday, 8 May 2015 at 21:10:58 UTC, Rainer Schuetze wrote:
>> Indeed, he is. Should be fixed in the new pre-release:
>>
>> https://github.com/D-Programming-Language/visuald/releases/tag/v0.3.41-beta3
>>
>>
>>> module mytest;
>>>
>>> int function(uint) TestCase;
>>> TestCase test;
>>>
>>> class TestClass
>>> {
>>>      this()
>>>      {
>>>          test(); // <--- hover on this
>>>      }
>>> }
>
> It's an invalid code, though. Maybe an error should reported for it
> instead of some type info?

True, though the tip shows the type of "test", not "test()". There is currently no support to display semantic errors as I suspect that there will be too many false positives.
May 25, 2015
On Sunday, 10 May 2015 at 15:17:54 UTC, Rainer Schuetze wrote:
>> Also, while I was testing I noticed couple new minor bugs:
>
> These issues are best reported directly at https://github.com/aBothe/D_Parser/issues
>

Yeah, sure. You probably have way better things to do than relay other people's messages :)

It's just that I don't have a github account and I don't want to create yet another empty account for just that small thing. So instead I chose to spam my bugs here (since no registration) in hopes of someone reading and fixing these (for which I'm grateful).

Anyways, I found more bugs. This time they are related to Mago and VisualD (actual). I'll just post them to this same thread, so that everything is nicely contained.

1. a mouse hover tooltip crash bug when debugging with Mago. See repro below.

stacktrace:
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.ShimQuickInfoSource.TryGetQuickInfoFromFilter(Microsoft.VisualStudio.Language.Intellisense.IQuickInfoSession session, Microsoft.VisualStudio.TextManager.Interop.TextSpan[] dataBufferTextSpan, out string tipText)	
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.ShimQuickInfoSource.AugmentQuickInfoSession(Microsoft.VisualStudio.Language.Intellisense.IQuickInfoSession session, System.Collections.Generic.IList<object> qiContent, out Microsoft.VisualStudio.Text.ITrackingSpan applicableToSpan)	
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Language.Intellisense.Implementation.QuickInfoSession.Recalculate()	
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Language.Intellisense.Implementation.QuickInfoSession.Start()	
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Language.Intellisense.Implementation.DefaultQuickInfoController.OnTextView_MouseHover(object sender, Microsoft.VisualStudio.Text.Editor.MouseHoverEventArgs e)	
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Text.Editor.Implementation.WpfTextView.RaiseHoverEvents()	
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Text.Editor.Implementation.WpfTextView.OnHoverTimer(object sender, System.EventArgs e)

repro:
class MyTest
{
    struct MyStruct
    {
        int a;
    }

    void foo()
    {
        k.a = 0;  // BUG: Break on this line using Mago and hover on k --> crash
    }

private:
    MyStruct k;
}

int main(string[] argv)
{
    auto t = new MyTest();
    t.foo();
    return 0;
}

2. a bug where mago forgets lines in a function. I wasn't able to do a working repro case yet (I attempted to code something similar but simpler), but I though that I'll just describe it just in case it rings a bell.

Basically, I'm unable to break (or step) lines of code in a function after certain statement and mago just jumps outside of the function. It has something to do with the order of use and definition of a inner struct (inside class). If I move the inner struct definition inside the class it fixes the issue and I'm able to step the code.

Example: (NOTE: not a repro case)
class Foo
{
  this()
  {
  }

  ~this()
  {
  }

  // FIX POINT 1 (see below)

  void fun1()
  {
    int num = 0;        // These are ok, but ...
    float konst = 1.0f;

    Bar[8] bars;  // BUG: Can't break to lines after this line.
                  // Debugger steps first to definition of Bar and then out of the function.
                  // Unless I move 'struct Bar' (from below) to 'FIX POINT 1' which fixes everything and stepping works normally.

    foreach( b; bars )
      b.a = 100;

    fun2( bars, 1 );
    fun3( bars, 2 );

    // ... do stuff
  }

  struct Bar
  {
    int a;
    //...
  }
  void fun2(Bar[], int barIdx)
  {
    // do stuff
  }
  void fun3(Bar[], int barIdx)
  {
    // do more stuff
  }
}
May 25, 2015
On Monday, 25 May 2015 at 17:48:17 UTC, Random D-user wrote:
> It's just that I don't have a github account and I don't want to create yet another empty account for just that small thing.

see http://forum.dlang.org/post/eeupfzcqazxivlgdwtza@forum.dlang.org :)
May 25, 2015
On Monday, 25 May 2015 at 19:49:53 UTC, Kagamin wrote:
> On Monday, 25 May 2015 at 17:48:17 UTC, Random D-user wrote:
>> It's just that I don't have a github account and I don't want to create yet another empty account for just that small thing.
>
> see http://forum.dlang.org/post/eeupfzcqazxivlgdwtza@forum.dlang.org :)

And he can create a free GitHub account without any valid email. There is no verification and it's usable directly. Actually GH advices to verify the email because this allows PW recovery but that's all.
Next ›   Last »
1 2