Re: gchunt v0.1.0 is out!
21-Nov-2014 05:18, Piotr Szturmaj пишет: W dniu 2014-11-11 o 23:38, Dmitry Olshansky pisze: gchunt is a tool is to help D developers identify and keep in check the usage of GC in their projects. So far it just postprocesses D compiler's -vgc output into a nice Wiki table. Results looks like this (Phobos): http://wiki.dlang.org/Stuff_in_Phobos_That_Generates_Garbage#Labeled_data Nice :) I think I found a -vgc bug: https://github.com/D-Programming-Language/phobos/blob/271c771a57764dcc511ca12ae91d490872d9b500/std/array.d#L419 - this line doesn't allocate, unlike the one below. Can you reduce and file it? Thanks! -- Dmitry Olshansky
Re: gchunt v0.1.0 is out!
W dniu 2014-11-11 o 23:38, Dmitry Olshansky pisze: gchunt is a tool is to help D developers identify and keep in check the usage of GC in their projects. So far it just postprocesses D compiler's -vgc output into a nice Wiki table. Results looks like this (Phobos): http://wiki.dlang.org/Stuff_in_Phobos_That_Generates_Garbage#Labeled_data Nice :) I think I found a -vgc bug: https://github.com/D-Programming-Language/phobos/blob/271c771a57764dcc511ca12ae91d490872d9b500/std/array.d#L419 - this line doesn't allocate, unlike the one below.
Re: gchunt v0.1.0 is out!
Hmm... now that I think of it, base64 is a format used for data transfer, so it's unlikely to come from a trusted source.
Re: gchunt v0.1.0 is out!
On Thursday, 13 November 2014 at 10:44:38 UTC, Kagamin wrote: Hmm... now that I think of it, base64 is a format used for data transfer, so it's unlikely to come from a trusted source. That doesn't matter. A user still has to make sure the range isn't `empty` before calling `popFront()`, and that's all that line enforces. Thus, it should be an assert().
Re: gchunt v0.1.0 is out!
https://github.com/D-Programming-Language/phobos/blob/271c771a57764dcc511ca12ae91d490872d9b500/std/base64.d#L1144 Probably should be an assert?
Re: gchunt v0.1.0 is out!
12-Nov-2014 13:32, Kagamin пишет: https://github.com/D-Programming-Language/phobos/blob/271c771a57764dcc511ca12ae91d490872d9b500/std/base64.d#L1144 Probably should be an assert? I'd bet it should. Ranges typically don't `enforce`. -- Dmitry Olshansky
gchunt v0.1.0 is out!
gchunt is a tool is to help D developers identify and keep in check the usage of GC in their projects. So far it just postprocesses D compiler's -vgc output into a nice Wiki table. Results looks like this (Phobos): http://wiki.dlang.org/Stuff_in_Phobos_That_Generates_Garbage#Labeled_data Notice the source links grouped for each allocation reason per function. In short: it's a ready to use spread-sheet for reviewers to work through. Release notes Windows binary: https://github.com/DmitryOlshansky/gchunt/releases/tag/v0.1.0 Past discussions and the origin of the tool: http://forum.dlang.org/thread/pzyzqwpqdllegxnys...@forum.dlang.org#post-m11hhb:2423nf:241:40digitalmars.com Happy GC hunting ! -- Dmitry Olshansky