On Fri, Dec 27, 2024 at 11:46:22AM +0100, Patrick Steinhardt wrote: > In 62e745ced2 (prio-queue: use size_t rather than int for size, > 2024-12-20), we refactored `struct prio_queue` to track the number of > contained entries via a `size_t`. While the refactoring adapted one of > the users of that variable, it forgot to also adapt "commit-reach.c" > accordingly. This was missed because that file has -Wsign-conversion > disabled. Yes, that's exactly what happened (I used a merge of my series and your -Wsign-compare one and relied on the compiler). I grepped through for other instances and couldn't find any problems. Many places just do: while (queue->nr) ...remove top... which is fine with either type (which might explain why the problem wasn't more common). I thought there was one more instance in commit-graph.c, which looks at "info->commits->nr", and I was grepping for "commits->nr" since rev_info->commits is a prio_queue. But it is actually a totally different type, compute_generation_info, and "commits" there is a packed_commit_list. That data type _also_ has the same int/size_t problem. ;) But it is totally separate, so it can happen later in its own patch (and there are a ton of other -Wsign-compare warnings in that file). Thanks for cleaning up after me. -Peff