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.
1 2
Next ›   Last »