http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57010
--- Comment #1 from Paolo Carlini <paolo.carlini at oracle dot com> 2013-04-20 08:25:11 UTC --- Note that the implementation of priority_queue::push and pop is fully constrained by the Standard, directly boils down to operations on the underlying container and std::push_heap and std::pop_heap calls, thus this can't be an issue with our implementation of std::priority_queue itself. Looks like the problem in in the implementation of std::pop_heap, eg, __pop_heap should not be called at all when __last - __first == 0.