May 01, 2010

Robert Clipsham wrote:
> On 01/05/10 05:33, Walter Bright wrote:
>>
>> http://ftp.digitalmars.com/dmd1beta.zip http://ftp.digitalmars.com/dmd2beta.zip
>
> I just spotted: http://www.dsource.org/projects/dmd/changeset/461
>
> Which removes the cache lookup for function types in dwarf info... Did you mean to make this change? I have a feeling that will break dwarf info again, haven't had chance to check though...
>

Yes, it was intentional. When I installed the other method, I forgot to remove this piece of code. I discovered it because it was causing a crash in some circumstances.
May 01, 2010
On 01/05/10 16:17, Jason House wrote:
> Which debugger is best to use with Ubuntu (and dmd)? I plan a fresh
> install of 10.04 this weekend.

If you don't mind compiling from source then I'd use gdb 7.1 with the patches from:

http://sourceware.org/git/?p=gdb.git;a=patch;h=870850ddab624f9d0111a4a0733cf7f5edf9bf91;hp=5f38666e4d2282a3407a0266a889a5be14ad5c74

(Scroll down to the line "diff --git a/gdb/ChangeLog b/gdb/ChangeLog", the diff is from there down)

This way you get a stable version of gdb with the D patches applied. Alternatively you could use the latest version from git/cvs. The final option is to use plain old gdb from the ubuntu repos. As long as you don't want to print strings it'll be fine :)

I seem to recall there was a dgdb package around somewhere for ubuntu, I don't know where though, and it's probably out of date.

Of course which ever route you take make sure you compile with -gc, as -g isn't supported, even with the D patches for gdb.

May 01, 2010

Rainer Schuetze wrote:
>
>
>
> The fix to #4089 (crash when creating JSON output for incomplete struct) is incomplete, it now produces trailing commas. I've appended the missed changes.

But I just checked, they're already there in the source! Can you email me your json.c so I can diff it?

>
> Otherwise I did not notice any problems with building Visual D (I had to build dmd from source to apply #4015, though).
>
> Rainer
>
> Index: json.c ===================================================================
> --- json.c    (revision 461)
> +++ json.c    (working copy)
> @@ -330,6 +330,7 @@
>         JsonRemoveComma(buf);
>         buf->writestring("]\n");
>     }
> +    JsonRemoveComma(buf);
>
>     buf->writestring("}\n");
> }
> @@ -412,6 +413,7 @@
>         JsonRemoveComma(buf);
>         buf->writestring("]\n");
>     }
> +    JsonRemoveComma(buf);
>
>     buf->writestring("}\n");
> }
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
>
May 01, 2010

Robert Clipsham wrote:
>
> You should add the following bugs to the changelog:
>
> Issue 1079 - gdb: Dwarf Error: Cannot find DIE at 0xb705 referenced
> from DIE at 0x250
> Issue 3207 - gdb: Push D patches upstream
>

Done.
May 01, 2010

Michel Fortin wrote:
>
>
> This regression is bugging me currently and is still in the 2.044 beta. Is it possible to give it a look?
>
> http://d.puremagic.com/issues/show_bug.cgi?id=4118
>
> 

changeset 462, give it a try
May 01, 2010
Ok, just uploaded a new version of the beta with the fixes.

Walter Bright wrote:
>
> http://ftp.digitalmars.com/dmd1beta.zip
> http://ftp.digitalmars.com/dmd2beta.zip
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
>
May 01, 2010
dmd2/linux/bin/README.TXT does not list/describe the shell binary dmd2/linux/lib/README.TXT has the wrong description for libphobos.a and no description for libdruntime.a

I always find those readme files annoying anyway. If copied into the conventional locations for bin and lib, such generic files names are completely out of place. Not to mention that using a -h argument or using man is more than adequate on a unix system.

If, as I suspect, the readme files are not intended to be part of an official install, they should be moved elsewhere (a combined dmd2/ linux/README.TXT would be my vote)

Sent from my iPhone

On May 1, 2010, at 9:13 PM, Walter Bright <walter at digitalmars.com> wrote:

> Ok, just uploaded a new version of the beta with the fixes.
>
> Walter Bright wrote:
>>
>> http://ftp.digitalmars.com/dmd1beta.zip
>> http://ftp.digitalmars.com/dmd2beta.zip
>> _______________________________________________
>> dmd-beta mailing list
>> dmd-beta at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>
>>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
May 01, 2010

Jason House wrote:
> dmd2/linux/bin/README.TXT does not list/describe the shell binary dmd2/linux/lib/README.TXT has the wrong description for libphobos.a and no description for libdruntime.a
>
> I always find those readme files annoying anyway. If copied into the conventional locations for bin and lib, such generic files names are completely out of place. Not to mention that using a -h argument or using man is more than adequate on a unix system.
>
> If, as I suspect, the readme files are not intended to be part of an official install, they should be moved elsewhere (a combined dmd2/linux/README.TXT would be my vote)
>

Those are good points, but I'll leave them for the next release.

The reason for the readme is I get annoyed by releases that contain long lists of executables with no clue what they were.
May 02, 2010
Maybe I'm just cursed with getting gdb to work with D :(  I've tried the plain vanilla gdb from my fresh install of ubuntu 10.04 as well as compiling the latest gdb from source.  I believe the basic things I'm doing should work with the plain vanilla gdb.

$ ls *.d hb/*.d hb/*/*.d | wc -l
16

$ dmd -gc -unittest -version=test *.d hb/*.d hb/*/*.d tango/core/Atomic.d tango/core/Traits.d -ofhousebot-test

$ gdb ./housebot-test
GNU gdb (GDB) 7.1-ubuntu
<snip>
Reading symbols from /home/jhouse/go/housebot/0.8/housebot-test...done.
(gdb) break _Dmain
Dwarf Error: Cannot find DIE at 0x0 referenced from DIE at 0x3f83 [in module
/home/jhouse/go/housebot/0.8/housebot-test]
(gdb) break main
Breakpoint 1 at 0x805d097
(gdb) run
Starting program: /home/jhouse/go/housebot/0.8/housebot-test
[Thread debugging using libthread_db enabled]

Breakpoint 1, 0x0805d097 in main ()
(gdb) list
Dwarf Error: Cannot find DIE at 0x0 referenced from DIE at 0x3f83 [in module
/home/jhouse/go/housebot/0.8/housebot-test]
<snip>

$ latest_gdb_source/gdb/gdb ./housebot-test
GNU gdb (GDB) 7.1.50.20100502-cvs
<snip>
Reading symbols from
/home/jhouse/go/housebot/0.8/housebot-test...Segmentation fault

$ gdb latest_gdb_source/gdb/gdb
GNU gdb (GDB) 7.1.50.20100502-cvs
<snip>
Reading symbols from /home/jhouse/go/housebot/0.8/housebot-test...
Program received signal SIGSEGV, Segmentation fault.
0x002a0d08 in ?? () from /lib/tls/i686/cmov/libc.so.6
(gdb)


On Sat, May 1, 2010 at 11:27 AM, Robert Clipsham
<robert at octarineparrot.com>wrote:

> On 01/05/10 16:17, Jason House wrote:
>
>> Which debugger is best to use with Ubuntu (and dmd)? I plan a fresh
>> install of 10.04 this weekend.
>>
>
> If you don't mind compiling from source then I'd use gdb 7.1 with the patches from:
>
>
> http://sourceware.org/git/?p=gdb.git;a=patch;h=870850ddab624f9d0111a4a0733cf7f5edf9bf91;hp=5f38666e4d2282a3407a0266a889a5be14ad5c74
>
> (Scroll down to the line "diff --git a/gdb/ChangeLog b/gdb/ChangeLog", the
> diff is from there down)
>
> This way you get a stable version of gdb with the D patches applied. Alternatively you could use the latest version from git/cvs. The final option is to use plain old gdb from the ubuntu repos. As long as you don't want to print strings it'll be fine :)
>
> I seem to recall there was a dgdb package around somewhere for ubuntu, I don't know where though, and it's probably out of date.
>
> Of course which ever route you take make sure you compile with -gc, as -g isn't supported, even with the D patches for gdb.
>
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/dmd-beta/attachments/20100502/56402138/attachment.html>
May 02, 2010

Jason House wrote:
> Maybe I'm just cursed with getting gdb to work with D :(  I've tried the plain vanilla gdb from my fresh install of ubuntu 10.04 as well as compiling the latest gdb from source.  I believe the basic things I'm doing should work with the plain vanilla gdb.
>

Yes, it should work as you say.