https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67085
--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Andrew Calcutt from comment #3) > Are there technical reasons this is not desirable or possible beyond what > you have already stated? Is the behavior of the priority queue here also > outside of the intent of the standard? Yes, using a reference type for the comparison object of std::priority_queue is highly quesitonable. Use std::reference_wrapper<C> if you want reference semantics.