Visual D 0.48-beta1

Rainer Schuetze r.sagitario at gmx.de
Wed Oct 10 17:40:49 UTC 2018



On 10/10/2018 09:21, James Japherson wrote:
> On Wednesday, 10 October 2018 at 06:37:33 UTC, Rainer Schuetze wrote:
>>
>>
>> On 08/10/2018 19:55, Rainer Schuetze wrote:
>>>
>>>
>>> On 08/10/2018 17:16, James Japherson wrote:
>>>> Basically I'm having lots of problems with 0.48.
>>>>
>>>> 1. I get that one error about the stack constantly. Usually happens
>>>> when I hit '.' but sometimes not.
>>>
>>> I can reproduce with a combination of "static foreach" and "tupleof",
>>> I hope we can find a solution.
>>>
>>
>> Please try the new beta:
>> https://github.com/dlang/visuald/releases/tag/v0.48.0-beta2
> 
> Oh man! Almost! It worked for about 3 minutes! I thought I was going to
> get somewhere! It got me with the stack frame bug.

Do you have some test code that you can share?

> 
> I'm having a bigger problem though, not sure I think this is always been
> a problem with visual D.
> 
> I can't see any outer variables in the debug windows. It seems lambda's
> and inner functions and global scope is never shown while in those
> scopes! This makes it very hard to debug them because one can't see the
> outside variables. One has to make a sort of local copy.
> 
> e.g.,
> 
> int x = 3; // Won't be seen while in foo
> 
> void foo()
> {
>    // BP stopped here, can't see x in debug watches unless we do the
> following:
>    int tmpx = x;
> }
> 

Unfortunately it has always been this way: dmd only emits the context
pointer "this" as a void*, while it could be a struct containing the
captured variables. LDC might behave a bit better here, but has other
quirks.

Globals can be watched by specifying the fully qualified name, no
import/lookup information is available otherwise. (There is a workaround
that allows them to be seen in D functions that are part of the same
scope so lookup can be derived from the fully qualified function name).


More information about the Digitalmars-d-ide mailing list