cache-tree.c: use bug() and BUG_if_bug()

Change "BUG" output originally added in a97e4075a1 (Keep
rename/rename conflicts of intermediate merges while doing recursive
merge, 2007-03-31), and later made to say it was a "BUG" in
19c6a4f836 (merge-recursive: do not return NULL only to cause
segfault, 2010-01-21) to use the new bug() function.

This gets the same job done with slightly less code, as we won't need
to prefix lines with "BUG: ". More importantly we'll now log the full
set of messages via trace2, before this we'd only log the one BUG()

We don't replace the last "BUG()" invocation with "BUG_if_bug()", as
in this case we're sure that we called bug() earlier, so there's no
need to make it a conditional.

While we're at it let's replace "There" with "there" in the message,
i.e. not start a message with a capital letter, per the

Signed-off-by: Ævar Arnfjörð Bjarmason <>
Signed-off-by: Junio C Hamano <>
Ævar Arnfjörð Bjarmason 4 months ago committed by Junio C Hamano
parent 07b1d8f184
commit 6d40f0ad15
  1. 8

@ -692,14 +692,14 @@ struct tree* write_in_core_index_as_tree(struct repository *repo) {
ret = write_index_as_tree_internal(&o, index_state, was_valid, 0, NULL);
int i;
fprintf(stderr, "BUG: There are unmerged index entries:\n");
bug("there are unmerged index entries:");
for (i = 0; i < index_state->cache_nr; i++) {
const struct cache_entry *ce = index_state->cache[i];
if (ce_stage(ce))
fprintf(stderr, "BUG: %d %.*s\n", ce_stage(ce),
(int)ce_namelen(ce), ce->name);
bug("%d %.*s", ce_stage(ce),
(int)ce_namelen(ce), ce->name);
BUG("unmerged index entries when writing inmemory index");
BUG("unmerged index entries when writing in-core index");
return lookup_tree(repo, &index_state->cache_tree->oid);