testcase_solvid2str
s = testcase_solvid2str(solv->pool, p > 0 ? p : -p);
s = pool_tmpjoin(pool, class2str[i].str, " ", testcase_solvid2str(pool, p));
s = pool_tmpjoin(pool, s, " ", testcase_solvid2str(pool, op));
s = pool_tmpjoin(pool, solprefix, " erase ", testcase_solvid2str(pool, p));
s = pool_tmpjoin(pool, solprefix, " replace ", testcase_solvid2str(pool, p));
s = pool_tmpappend(pool, s, " ", testcase_solvid2str(pool, op));
s = pool_tmpjoin(pool, solprefix, " allow ", testcase_solvid2str(pool, op));
s = pool_tmpjoin(pool, "orphaned ", testcase_solvid2str(pool, q.elements[i]), 0);
s = pool_tmpjoin(pool, "recommended ", testcase_solvid2str(pool, qr.elements[i]), 0);
s = pool_tmpjoin(pool, "suggested ", testcase_solvid2str(pool, qs.elements[i]), 0);
s = pool_tmpjoin(pool, "unneeded ", testcase_solvid2str(pool, q.elements[i]), 0);
cmd = pool_tmpappend(pool, cmd, " ", testcase_solvid2str(pool, pool->whatprovidesdata[d]));
pkgstr = testcase_solvid2str(pool, what);
const char *s = testcase_solvid2str(pool, p);
extern const char *testcase_solvid2str(Pool *pool, Id p);