https://issues.dlang.org/show_bug.cgi?id=17094
--- Comment #4 from Jon Degenhardt <[email protected]> --- A bit of a follow-up to the last pair of comments: The discussion of whether size was reserved, the implied notions of reference vs value semantics, etc., is in my view an incorrect focus. The key issue involved is this paragraph in the documentation: Simply extracting elements from a $(D BinaryHeap) container is tantamount to lazily fetching elements of $(D Store) in descending order. Extracting elements from the $(D BinaryHeap) to completion leaves the underlying store sorted in ascending order but, again, yields elements in descending order. The second sentence is the key issue - A key use case of a binary heap is to take a top-n set of items, then generate the top-n order by extracting as described. This is what fails, and why this is a bug. The documentation indicates binary heap supports this, as it should. If there are cases where it does not support it, it should be clear about this. But really, this use case should be supported. --
