On Tuesday, 7 October 2014 at 15:57:59 UTC, Dmitry Olshansky
wrote:
So here is the exhustive list of everything calling into GC in
Phobos (-vgc compiler flag):
http://wiki.dlang.org/Stuff_in_Phobos_That_Generates_Garbage
A correction on TimSortImpl, it does actually generate garbage by
calling uninitializedArray to allocate the buffer. The check for
__ctfe is unnecessary (it may have been needed sometime ago or
was added naively).
Timsort is an O(n/2) algorithm and requires a buffer, but there's
no reason for it to be GC-allocated. It could simply be malloc'd
and free'd before the function returns.