ddbg 0.3

Jascha Wetzel "[firstname]" at mainia.de
Tue Feb 27 00:21:25 PST 2007


the problem is the second declaration of i within the same frame. i'll
take care of it. until then try using different counter names to work
around this.

inout's are being marked void* by DMD, a codeview issue to be added to
arrays and enums.

Ddbg's expressions don't support casts, yet. but since casts are a good
workaround to DMD's codeview issues i'll have them in the next release.
currently the expression syntax is:

Expr  = Ident
       | Ident OExpr
OExpr = . Expr
       | [ Args ] OExpr
Args  = Slice | Lit | Expr
Slice = SlArg .. SlArg
SlArg = Lit | Expr
Lit   = Int | Float | Str | Char | $


Bill Baxter wrote:
> Stepping through loops works now, but the counter variable does not get
> updated in the list of watches.  Wait...<tests further> that's not
> exactly true.
> 
> It doesn't get updated in this situation:
> 
>     // during first loop it's ok
>     for (int i = 0; i< s.blip.length; i++) {
>         s.blip[i] = i;
>     }
>     // but here i doesn't get updated in watch window
>     for (int i = 0; i< s.blip.length; i++) {
>         s.blip[i] = i*2;
>     }
> 
> Declared outside of the for scope, it's ok:
>     int i;
>     for (i = 0; i< s.blip.length; i++) {
>         s.blip[i] = i;
>     }
>     for (i = 0; i< s.blip.length; i++) {
>         s.blip[i] = i*2;
>     }
> 
> 
> 
> Also inout values seem to show up as void*.  Is there a way to cast a
> variable in CodeBlocks' watch list?  I tried  (int*)myptr but CB says
> "invalid expression".  I also tried cast(int*)myptr, not really
> expecting that to work, but hoping, and it didn't work either.
> 
> --bb


More information about the Digitalmars-d-debugger mailing list