VisualD: VisualDComServer.exe crashes frequently inside D_Parser.dll to stackoverflow.
Random D-user via Digitalmars-d-ide
digitalmars-d-ide at puremagic.com
Mon May 25 10:48:16 PDT 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
}
}
More information about the Digitalmars-d-ide
mailing list