March 06, 2007
Great work!

Another minor glitch - single stepping over a getch() runs to completion (ver. 0.0.4.3)

Impressive fix/release cycle time too.  Thanks!

Jascha Wetzel <"[firstname]"@mainia.de> wrote:
> one thing is, that you can't cast a static array to a dynamic array in
> ddbg, yet.
> but not casting the expression gives the same result. this is a bug in
> DMD's codeview symbols, though. the array is marked as having length 0.
> i can't tell when exactly that happens, since it worked in your other
> example (the TableStuff array).
>
> dickl wrote:
>> Awesome..
>>
>> Unfortunately I forgot to look at that local variable Cmd (same test
>> case). The debugger has a problem evaluating it:
>>
>>  Ddbg v0.0.4.3 alpha - D Debugger
>>  Copyright (c) 2007 Jascha Wetzel
>>  http://ddbg.mainia.de/
>>
>>  ->bp test.d:1
>>  Breakpoint set: test.d:3 0x402010
>>  ->
>>  Breakpoint set: test.d:3 0x402010
>>  ->r
>>  ntdll.dll  loaded
>>  KERNEL32.dll  loaded
>>  USER32.dll  loaded
>>  GDI32.dll  loaded
>>  Breakpoint 0 hit
>>  test.d:3 0x402010
>>  int main()
>>  ->in
>>  test.d:6 0x402015
>>      char [1024] Cmd;
>>  test.d:7 0x402027
>>      strcpy(Cmd.ptr, "Hello");
>>  test.d:8 0x402038
>>      printf("%s\n",Cmd.ptr);
>>  ->= cast(char[])Cmd
>>  Expression evaluated to empty data
>>  ->
>> --------------------------------------
>>
>> Jascha Wetzel wrote:
>>> more thanks :)
>>> fixed in 0.0.4.3
>>>
>>> dickl wrote:
>>>> Found another one... The debugger doesn't always seems to single step
>>>> correctly. Happens with "in" and "ov" stepping. Steps correctly up to a
>>>> point then the app runs to completion.
>>>>
>>>> Source
>>>> ----------------------
>>>> import std.stdio;
>>>> import std.c.string;
>>>> int main()
>>>> {
>>>>     //QSettings f = new QSettings;
>>>>     char [1024] Cmd;
>>>>     strcpy(Cmd.ptr, "Hello");
>>>>     printf("%s\n",Cmd.ptr); // have to printf 'cos writefln throws
>>>>     writefln("Finis");
>>>>     return 0;
>>>> }//end int main()
>>>>
>>>> Debug Results
>>>> ---------------------
>>>> Ddbg v0.0.4.2 alpha - D Debugger
>>>> Copyright (c) 2007 Jascha Wetzel
>>>> http://ddbg.mainia.de/
>>>>
>>>> ->bp test.d:1
>>>> Breakpoint set: test.d:4 0x402010
>>>> ->r
>>>> ntdll.dll  loaded
>>>> KERNEL32.dll  loaded
>>>> USER32.dll  loaded
>>>> GDI32.dll  loaded
>>>> Breakpoint 0 hit
>>>> test.d:4 0x402010
>>>> int main()
>>>> ->in
>>>> test.d:7 0x402015
>>>>     char [1024] Cmd;
>>>> ->
>>>> test.d:8 0x402027
>>>>     strcpy(Cmd.ptr, "Hello");
>>>> ->
>>>> Hello
>>>> Finis
>>>> Process terminated
>>>> ->

March 06, 2007
can you give an example?
it works when i try it.

sd wrote:
> Great work!
> 
> Another minor glitch - single stepping over a getch() runs to completion
> (ver. 0.0.4.3)
> 
> Impressive fix/release cycle time too.  Thanks!
> 
> Jascha Wetzel <"[firstname]"@mainia.de> wrote:
>> one thing is, that you can't cast a static array to a dynamic array in
>> ddbg, yet.
>> but not casting the expression gives the same result. this is a bug in
>> DMD's codeview symbols, though. the array is marked as having length 0.
>> i can't tell when exactly that happens, since it worked in your other
>> example (the TableStuff array).
>>
>> dickl wrote:
>>> Awesome..
>>>
>>> Unfortunately I forgot to look at that local variable Cmd (same test case). The debugger has a problem evaluating it:
>>>
>>>  Ddbg v0.0.4.3 alpha - D Debugger
>>>  Copyright (c) 2007 Jascha Wetzel
>>>  http://ddbg.mainia.de/
>>>
>>>  ->bp test.d:1
>>>  Breakpoint set: test.d:3 0x402010
>>>  ->
>>>  Breakpoint set: test.d:3 0x402010
>>>  ->r
>>>  ntdll.dll  loaded
>>>  KERNEL32.dll  loaded
>>>  USER32.dll  loaded
>>>  GDI32.dll  loaded
>>>  Breakpoint 0 hit
>>>  test.d:3 0x402010
>>>  int main()
>>>  ->in
>>>  test.d:6 0x402015
>>>      char [1024] Cmd;
>>>  test.d:7 0x402027
>>>      strcpy(Cmd.ptr, "Hello");
>>>  test.d:8 0x402038
>>>      printf("%s\n",Cmd.ptr);
>>>  ->= cast(char[])Cmd
>>>  Expression evaluated to empty data
>>>  ->
>>> --------------------------------------
>>>
>>> Jascha Wetzel wrote:
>>>> more thanks :)
>>>> fixed in 0.0.4.3
>>>>
>>>> dickl wrote:
>>>>> Found another one... The debugger doesn't always seems to single step
>>>>> correctly. Happens with "in" and "ov" stepping. Steps correctly up
>>>>> to a
>>>>> point then the app runs to completion.
>>>>>
>>>>> Source
>>>>> ----------------------
>>>>> import std.stdio;
>>>>> import std.c.string;
>>>>> int main()
>>>>> {
>>>>>     //QSettings f = new QSettings;
>>>>>     char [1024] Cmd;
>>>>>     strcpy(Cmd.ptr, "Hello");
>>>>>     printf("%s\n",Cmd.ptr); // have to printf 'cos writefln throws
>>>>>     writefln("Finis");
>>>>>     return 0;
>>>>> }//end int main()
>>>>>
>>>>> Debug Results
>>>>> ---------------------
>>>>> Ddbg v0.0.4.2 alpha - D Debugger
>>>>> Copyright (c) 2007 Jascha Wetzel
>>>>> http://ddbg.mainia.de/
>>>>>
>>>>> ->bp test.d:1
>>>>> Breakpoint set: test.d:4 0x402010
>>>>> ->r
>>>>> ntdll.dll  loaded
>>>>> KERNEL32.dll  loaded
>>>>> USER32.dll  loaded
>>>>> GDI32.dll  loaded
>>>>> Breakpoint 0 hit
>>>>> test.d:4 0x402010
>>>>> int main()
>>>>> ->in
>>>>> test.d:7 0x402015
>>>>>     char [1024] Cmd;
>>>>> ->
>>>>> test.d:8 0x402027
>>>>>     strcpy(Cmd.ptr, "Hello");
>>>>> ->
>>>>> Hello
>>>>> Finis
>>>>> Process terminated
>>>>> ->
> 
March 07, 2007
Jascha Wetzel wrote:
> Ddbg is a Win32 D Debugger
> 
> http://ddbg.mainia.de/releases.html
> 
> This release mainly adds support for type cast and associative arrays.
> Type casts can be used to workaround the missing array and enum support
> in DMD's debug symbols.

A few things so far.  The final example may actually be a problem with rebuild, but I thought I'd include it anyway.

======================================================================

C:\code\src\d\test>ddbg test.exe
Ddbg v0.0.4.3 alpha - D Debugger
Copyright (c) 2007 Jascha Wetzel
http://ddbg.mainia.de/

->dr


----------------------------------------
Unhandled exception in Ddbg v0.0.4.3 alpha:
Access Violation

Please report this problem!
See the http://ddbg.mainia.de/releases.html for details.
Thank you!

C:\code\src\d\test>
C:\code\src\d\test>
C:\code\src\d\test>
C:\code\src\d\test>ddbg test.exe
Ddbg v0.0.4.3 alpha - D Debugger
Copyright (c) 2007 Jascha Wetzel
http://ddbg.mainia.de/

->ds


----------------------------------------
Unhandled exception in Ddbg v0.0.4.3 alpha:
Access Violation

Please report this problem!
See the http://ddbg.mainia.de/releases.html for details.
Thank you!

======================================================================


C:\code\src\d\test>cat test.d
import tango.util.collection.LinkSeq;
import tango.stdc.stdio;

LinkSeq!(C) cont;

static this()
{
    cont = new LinkSeq!(C);
}

class C
{
    int x;
}

void main()
{
    printf( "hello\n" );
}

C:\code\src\d\test>rebuild -g test
c:\bin\dmd\bin\..\..\dm\bin\link.exe .\test+.\tango-util-collection-LinkSeq+.\ta
ngo-util-collection-model-Iterator+.\tango-util-collection-model-Sortable+.\tang
o-util-collection-model-Dispenser+.\tango-util-collection-model-View+.\tango-uti
l-collection-model-GuardIterator+.\tango-util-collection-model-Comparator+.\tang
o-util-collection-impl-LLCell+.\tango-util-collection-impl-Cell+.\tango-util-col
lection-impl-SeqCollection+.\tango-util-collection-model-Seq+.\tango-util-collec
tion-model-SeqView+.\tango-util-collection-impl-Collection+.\tango-io-protocol-m
odel-IReader+.\tango-io-model-IBuffer+.\tango-io-model-IConduit+.\tango-io-proto
col-model-IProtocol+.\tango-io-protocol-model-IWriter+.\tango-util-collection-im
pl-AbstractIterator+.\tango-stdc-stdio+.\tango-stdc-stdarg+.\tango-stdc-stddef+.
\tango-stdc-config,test.exe,,user32+kernel32/noi;

C:\code\src\d\test>ddbg test.exe
Ddbg v0.0.4.3 alpha - D Debugger
Copyright (c) 2007 Jascha Wetzel
http://ddbg.mainia.de/



----------------------------------------
Unhandled exception in Ddbg v0.0.4.3 alpha:
No symbolic debug info present (no debugging symbols found), try compiling and l
inking with -g

Please report this problem!
See the http://ddbg.mainia.de/releases.html for details.
Thank you!

C:\code\src\d\test>
March 07, 2007
Jascha Wetzel wrote:
> you need to add a watch with a cast manually: cast(char[])this.str
> DMD doesn't add the full type to array symbols, yet, that's why ddbg
> can't find out that this.str is a char[] by itself. therefore you have
> to help out with the cast.
> 
> vanh wrote:
>> Jascha Wetzel wrote:
>>> it does when i try dickl's example.
>>> can you give an example where it doesn't work?
>>>
>>> vanh wrote:
>>>> Jascha Wetzel wrote:
>>>>> oh - bug! :) fixed in 0.0.4.1 which i just put on the website.
>>>>> pointers didn't get handled correctly by the expression evaluator and
>>>>> therefore the "this" reference wasn't interpreted correctly.
>>>>> thanks for the report!
>>>>>
>>>>> dickl wrote:
>>>>>> Jascha Wetzel wrote:
>>>>>>> Ddbg is a Win32 D Debugger
>>>>>>>
>>>>>>> http://ddbg.mainia.de/releases.html
>>>>>>>
>>>>>>> This release mainly adds support for type cast and associative
>>>>>>> arrays.
>>>>>>> Type casts can be used to workaround the missing array and enum
>>>>>>> support
>>>>>>> in DMD's debug symbols.
>>>>>> dbbg is turning into a great tool !
>>>>>>
>>>>>> I took it from the docs that I should now be able to view contents of
>>>>>> strings. This doesn't seem to be the case, at least for class members.
>>>>>>
>>>>>> Test program
>>>>>> ---------------------
>>>>>> import std.stdio;
>>>>>>
>>>>>> int main(char[][] args)
>>>>>> {
>>>>>>     FOO foo = new FOO;
>>>>>>
>>>>>>     return 0;
>>>>>> }
>>>>>>
>>>>>> class FOO
>>>>>> {
>>>>>>     private char [] str = "Hello";
>>>>>>
>>>>>>     this()
>>>>>>     {
>>>>>>         writefln(str);
>>>>>>     }
>>>>>> }
>>>>>>
>>>>>> Debug results. Note ddbg reports str as null
>>>>>> -------------------
>>>>>>> M:\D-projects\TEST1>ddbg test.exe
>>>>>>> Ddbg v0.0.4 alpha - D Debugger
>>>>>>> Copyright (c) 2007 Jascha Wetzel
>>>>>>> http://ddbg.mainia.de/
>>>>>>>
>>>>>>> ->bp test.d:1
>>>>>>> Breakpoint set: test.d:4 0x402010
>>>>>>> ->r
>>>>>>> ntdll.dll  loaded
>>>>>>> KERNEL32.dll  loaded
>>>>>>> USER32.dll  loaded
>>>>>>> GDI32.dll  loaded
>>>>>>> Breakpoint 0 hit
>>>>>>> test.d:4 0x402010
>>>>>>> int main(char[][] args)
>>>>>>> ->in
>>>>>>> test.d:6 0x402014
>>>>>>>     FOO foo = new FOO;
>>>>>>> ->
>>>>>>> test.d:15 0x402030
>>>>>>>     this()
>>>>>>> ->
>>>>>>> test.d:17 0x402037
>>>>>>>         writefln(str);
>>>>>>> ->lsv
>>>>>>> Scope: MFZC4test3FOO test.FOO._ctor
>>>>>>> class test.FOO* this [ebp-4]    = {str = 0x0041409800000005}
>>>>>>> ->= (cast(char[])this.str)
>>>>>>> null
>>>>>>> ->
>>>>>>>
>>>> Well, I got the latest 0.0.4.1 or at least I thought I did. It's still
>>>> didn't show the content of the str
>>>> only the address of the string.
>>>>
>>>> vtp
>> I just copy and past the above code into codeblock and check the watch
>> window while
>> stepping through it. All I see is str=0x0041408000000005
>>
>> vtp
Now I know. It a bit of a pain for a very short while I hope.

vtp
March 07, 2007
there are a few commands that will not work before the debuggee is running (like dr and ds) - will fix that in the next release.

the symbolic-info-missing error shouldn't show up like an unhandled
exception, will fix that too.
the problem here is, that the link command is missing the -g switch. the
linker won't copy debug symbols from the object files to the exe in that
case.

thanks for the reports!

Sean Kelly wrote:
> Jascha Wetzel wrote:
>> Ddbg is a Win32 D Debugger
>>
>> http://ddbg.mainia.de/releases.html
>>
>> This release mainly adds support for type cast and associative arrays. Type casts can be used to workaround the missing array and enum support in DMD's debug symbols.
> 
> A few things so far.  The final example may actually be a problem with rebuild, but I thought I'd include it anyway.
> 
> ======================================================================
> 
> C:\code\src\d\test>ddbg test.exe
> Ddbg v0.0.4.3 alpha - D Debugger
> Copyright (c) 2007 Jascha Wetzel
> http://ddbg.mainia.de/
> 
> ->dr
> 
> 
> ----------------------------------------
> Unhandled exception in Ddbg v0.0.4.3 alpha:
> Access Violation
> 
> Please report this problem!
> See the http://ddbg.mainia.de/releases.html for details.
> Thank you!
> 
> C:\code\src\d\test>
> C:\code\src\d\test>
> C:\code\src\d\test>
> C:\code\src\d\test>ddbg test.exe
> Ddbg v0.0.4.3 alpha - D Debugger
> Copyright (c) 2007 Jascha Wetzel
> http://ddbg.mainia.de/
> 
> ->ds
> 
> 
> ----------------------------------------
> Unhandled exception in Ddbg v0.0.4.3 alpha:
> Access Violation
> 
> Please report this problem!
> See the http://ddbg.mainia.de/releases.html for details.
> Thank you!
> 
> ======================================================================
> 
> 
> C:\code\src\d\test>cat test.d
> import tango.util.collection.LinkSeq;
> import tango.stdc.stdio;
> 
> LinkSeq!(C) cont;
> 
> static this()
> {
>     cont = new LinkSeq!(C);
> }
> 
> class C
> {
>     int x;
> }
> 
> void main()
> {
>     printf( "hello\n" );
> }
> 
> C:\code\src\d\test>rebuild -g test
> c:\bin\dmd\bin\..\..\dm\bin\link.exe
> .\test+.\tango-util-collection-LinkSeq+.\ta
> ngo-util-collection-model-Iterator+.\tango-util-collection-model-Sortable+.\tang
> 
> o-util-collection-model-Dispenser+.\tango-util-collection-model-View+.\tango-uti
> 
> l-collection-model-GuardIterator+.\tango-util-collection-model-Comparator+.\tang
> 
> o-util-collection-impl-LLCell+.\tango-util-collection-impl-Cell+.\tango-util-col
> 
> lection-impl-SeqCollection+.\tango-util-collection-model-Seq+.\tango-util-collec
> 
> tion-model-SeqView+.\tango-util-collection-impl-Collection+.\tango-io-protocol-m
> 
> odel-IReader+.\tango-io-model-IBuffer+.\tango-io-model-IConduit+.\tango-io-proto
> 
> col-model-IProtocol+.\tango-io-protocol-model-IWriter+.\tango-util-collection-im
> 
> pl-AbstractIterator+.\tango-stdc-stdio+.\tango-stdc-stdarg+.\tango-stdc-stddef+.
> 
> \tango-stdc-config,test.exe,,user32+kernel32/noi;
> 
> C:\code\src\d\test>ddbg test.exe
> Ddbg v0.0.4.3 alpha - D Debugger
> Copyright (c) 2007 Jascha Wetzel
> http://ddbg.mainia.de/
> 
> 
> 
> ----------------------------------------
> Unhandled exception in Ddbg v0.0.4.3 alpha:
> No symbolic debug info present (no debugging symbols found), try
> compiling and l
> inking with -g
> 
> Please report this problem!
> See the http://ddbg.mainia.de/releases.html for details.
> Thank you!
> 
> C:\code\src\d\test>
March 07, 2007
Sorry Jascha, I had two versions installed and an old one was active. Confirmed that it's not a problem in 0.0.4.3!

Jascha Wetzel <"[firstname]"@mainia.de> wrote:
> can you give an example?
> it works when i try it.
>
> sd wrote:
>> Great work!
>>
>> Another minor glitch - single stepping over a getch() runs to completion
>> (ver. 0.0.4.3)
>>
>> Impressive fix/release cycle time too.  Thanks!
>>
>> Jascha Wetzel <"[firstname]"@mainia.de> wrote:
>>> one thing is, that you can't cast a static array to a dynamic array in
>>> ddbg, yet.
>>> but not casting the expression gives the same result. this is a bug in
>>> DMD's codeview symbols, though. the array is marked as having length 0.
>>> i can't tell when exactly that happens, since it worked in your other
>>> example (the TableStuff array).
>>>
>>> dickl wrote:
>>>> Awesome..
>>>>
>>>> Unfortunately I forgot to look at that local variable Cmd (same test
>>>> case). The debugger has a problem evaluating it:
>>>>
>>>>  Ddbg v0.0.4.3 alpha - D Debugger
>>>>  Copyright (c) 2007 Jascha Wetzel
>>>>  http://ddbg.mainia.de/
>>>>
>>>>  ->bp test.d:1
>>>>  Breakpoint set: test.d:3 0x402010
>>>>  ->
>>>>  Breakpoint set: test.d:3 0x402010
>>>>  ->r
>>>>  ntdll.dll  loaded
>>>>  KERNEL32.dll  loaded
>>>>  USER32.dll  loaded
>>>>  GDI32.dll  loaded
>>>>  Breakpoint 0 hit
>>>>  test.d:3 0x402010
>>>>  int main()
>>>>  ->in
>>>>  test.d:6 0x402015
>>>>      char [1024] Cmd;
>>>>  test.d:7 0x402027
>>>>      strcpy(Cmd.ptr, "Hello");
>>>>  test.d:8 0x402038
>>>>      printf("%s\n",Cmd.ptr);
>>>>  ->= cast(char[])Cmd
>>>>  Expression evaluated to empty data
>>>>  ->
>>>> --------------------------------------
>>>>
>>>> Jascha Wetzel wrote:
>>>>> more thanks :)
>>>>> fixed in 0.0.4.3
>>>>>
>>>>> dickl wrote:
>>>>>> Found another one... The debugger doesn't always seems to single step
>>>>>> correctly. Happens with "in" and "ov" stepping. Steps correctly up
>>>>>> to a
>>>>>> point then the app runs to completion.
>>>>>>
>>>>>> Source
>>>>>> ----------------------
>>>>>> import std.stdio;
>>>>>> import std.c.string;
>>>>>> int main()
>>>>>> {
>>>>>>     //QSettings f = new QSettings;
>>>>>>     char [1024] Cmd;
>>>>>>     strcpy(Cmd.ptr, "Hello");
>>>>>>     printf("%s\n",Cmd.ptr); // have to printf 'cos writefln throws
>>>>>>     writefln("Finis");
>>>>>>     return 0;
>>>>>> }//end int main()
>>>>>>
>>>>>> Debug Results
>>>>>> ---------------------
>>>>>> Ddbg v0.0.4.2 alpha - D Debugger
>>>>>> Copyright (c) 2007 Jascha Wetzel
>>>>>> http://ddbg.mainia.de/
>>>>>>
>>>>>> ->bp test.d:1
>>>>>> Breakpoint set: test.d:4 0x402010
>>>>>> ->r
>>>>>> ntdll.dll  loaded
>>>>>> KERNEL32.dll  loaded
>>>>>> USER32.dll  loaded
>>>>>> GDI32.dll  loaded
>>>>>> Breakpoint 0 hit
>>>>>> test.d:4 0x402010
>>>>>> int main()
>>>>>> ->in
>>>>>> test.d:7 0x402015
>>>>>>     char [1024] Cmd;
>>>>>> ->
>>>>>> test.d:8 0x402027
>>>>>>     strcpy(Cmd.ptr, "Hello");
>>>>>> ->
>>>>>> Hello
>>>>>> Finis
>>>>>> Process terminated
>>>>>> ->
>>

March 07, 2007
I see a problem when trying to list members of class. The debugger crashes with "Unhandled exception in Ddbg v0.0.4.3 alpha: 4invalid UTF-8 sequence"

There aren't any strings in the class, just single element ints, bools &   etc. I can't nail it down to a single member since every single member evaluates fine, just when I do a "lsv" does the debugger crash.

This brings up a potentially bigger issue I think. Using the D library UTF-8 restrictive routines will cause problem evaluating strings, particularly in Windows Apps. You might want to consider replacing format/sformat/writefln with something that is more forgiving.


-------------------------------
Jascha Wetzel wrote:
> Ddbg is a Win32 D Debugger
> 
> http://ddbg.mainia.de/releases.html
> 
> This release mainly adds support for type cast and associative arrays.
> Type casts can be used to workaround the missing array and enum support
> in DMD's debug symbols.
March 07, 2007
good point about the utf8 routines. i will consider that.

can you email me an exe and ddbg command sequence that produces the unhandled exception?

dickl wrote:
> I see a problem when trying to list members of class. The debugger crashes with "Unhandled exception in Ddbg v0.0.4.3 alpha: 4invalid UTF-8 sequence"
> 
> There aren't any strings in the class, just single element ints, bools &
>   etc. I can't nail it down to a single member since every single member
> evaluates fine, just when I do a "lsv" does the debugger crash.
> 
> This brings up a potentially bigger issue I think. Using the D library UTF-8 restrictive routines will cause problem evaluating strings, particularly in Windows Apps. You might want to consider replacing format/sformat/writefln with something that is more forgiving.
> 
> 
> -------------------------------
> Jascha Wetzel wrote:
>> Ddbg is a Win32 D Debugger
>>
>> http://ddbg.mainia.de/releases.html
>>
>> This release mainly adds support for type cast and associative arrays. Type casts can be used to workaround the missing array and enum support in DMD's debug symbols.
March 07, 2007
OK, I think I got it narrowed down to only 2 modules. I'll email you the exe, DLLs needed + source when I get things a little further refined.

----------------------------------------------------------
Jascha Wetzel wrote:
> good point about the utf8 routines. i will consider that.
> 
> can you email me an exe and ddbg command sequence that produces the
> unhandled exception?
> 
> dickl wrote:
>> I see a problem when trying to list members of class. The debugger
>> crashes with "Unhandled exception in Ddbg v0.0.4.3 alpha: 4invalid UTF-8
>> sequence"
>>
>> There aren't any strings in the class, just single element ints, bools &
>>   etc. I can't nail it down to a single member since every single member
>> evaluates fine, just when I do a "lsv" does the debugger crash.
>>
>> This brings up a potentially bigger issue I think. Using the D library
>> UTF-8 restrictive routines will cause problem evaluating strings,
>> particularly in Windows Apps. You might want to consider replacing
>> format/sformat/writefln with something that is more forgiving.
>>
>>
>> -------------------------------
>> Jascha Wetzel wrote:
>>> Ddbg is a Win32 D Debugger
>>>
>>> http://ddbg.mainia.de/releases.html
>>>
>>> This release mainly adds support for type cast and associative arrays.
>>> Type casts can be used to workaround the missing array and enum support
>>> in DMD's debug symbols.
March 08, 2007
oh - it's /CODEVIEW for link, of course, not -g

Jascha Wetzel wrote:
> there are a few commands that will not work before the debuggee is running (like dr and ds) - will fix that in the next release.
> 
> the symbolic-info-missing error shouldn't show up like an unhandled
> exception, will fix that too.
> the problem here is, that the link command is missing the -g switch. the
> linker won't copy debug symbols from the object files to the exe in that
> case.
> 
> thanks for the reports!
> 
> Sean Kelly wrote:
>> Jascha Wetzel wrote:
>>> Ddbg is a Win32 D Debugger
>>>
>>> http://ddbg.mainia.de/releases.html
>>>
>>> This release mainly adds support for type cast and associative arrays. Type casts can be used to workaround the missing array and enum support in DMD's debug symbols.
>> A few things so far.  The final example may actually be a problem with rebuild, but I thought I'd include it anyway.
>>
>> ======================================================================
>>
>> C:\code\src\d\test>ddbg test.exe
>> Ddbg v0.0.4.3 alpha - D Debugger
>> Copyright (c) 2007 Jascha Wetzel
>> http://ddbg.mainia.de/
>>
>> ->dr
>>
>>
>> ----------------------------------------
>> Unhandled exception in Ddbg v0.0.4.3 alpha:
>> Access Violation
>>
>> Please report this problem!
>> See the http://ddbg.mainia.de/releases.html for details.
>> Thank you!
>>
>> C:\code\src\d\test>
>> C:\code\src\d\test>
>> C:\code\src\d\test>
>> C:\code\src\d\test>ddbg test.exe
>> Ddbg v0.0.4.3 alpha - D Debugger
>> Copyright (c) 2007 Jascha Wetzel
>> http://ddbg.mainia.de/
>>
>> ->ds
>>
>>
>> ----------------------------------------
>> Unhandled exception in Ddbg v0.0.4.3 alpha:
>> Access Violation
>>
>> Please report this problem!
>> See the http://ddbg.mainia.de/releases.html for details.
>> Thank you!
>>
>> ======================================================================
>>
>>
>> C:\code\src\d\test>cat test.d
>> import tango.util.collection.LinkSeq;
>> import tango.stdc.stdio;
>>
>> LinkSeq!(C) cont;
>>
>> static this()
>> {
>>     cont = new LinkSeq!(C);
>> }
>>
>> class C
>> {
>>     int x;
>> }
>>
>> void main()
>> {
>>     printf( "hello\n" );
>> }
>>
>> C:\code\src\d\test>rebuild -g test
>> c:\bin\dmd\bin\..\..\dm\bin\link.exe
>> .\test+.\tango-util-collection-LinkSeq+.\ta
>> ngo-util-collection-model-Iterator+.\tango-util-collection-model-Sortable+.\tang
>>
>> o-util-collection-model-Dispenser+.\tango-util-collection-model-View+.\tango-uti
>>
>> l-collection-model-GuardIterator+.\tango-util-collection-model-Comparator+.\tang
>>
>> o-util-collection-impl-LLCell+.\tango-util-collection-impl-Cell+.\tango-util-col
>>
>> lection-impl-SeqCollection+.\tango-util-collection-model-Seq+.\tango-util-collec
>>
>> tion-model-SeqView+.\tango-util-collection-impl-Collection+.\tango-io-protocol-m
>>
>> odel-IReader+.\tango-io-model-IBuffer+.\tango-io-model-IConduit+.\tango-io-proto
>>
>> col-model-IProtocol+.\tango-io-protocol-model-IWriter+.\tango-util-collection-im
>>
>> pl-AbstractIterator+.\tango-stdc-stdio+.\tango-stdc-stdarg+.\tango-stdc-stddef+.
>>
>> \tango-stdc-config,test.exe,,user32+kernel32/noi;
>>
>> C:\code\src\d\test>ddbg test.exe
>> Ddbg v0.0.4.3 alpha - D Debugger
>> Copyright (c) 2007 Jascha Wetzel
>> http://ddbg.mainia.de/
>>
>>
>>
>> ----------------------------------------
>> Unhandled exception in Ddbg v0.0.4.3 alpha:
>> No symbolic debug info present (no debugging symbols found), try
>> compiling and l
>> inking with -g
>>
>> Please report this problem!
>> See the http://ddbg.mainia.de/releases.html for details.
>> Thank you!
>>
>> C:\code\src\d\test>