No way. The "consumes 2 args" is fundamentally idiotic, since itforces compiler warnings. The whole idea of %pXX was that you can giveit any pointer, because all that the compiler cares about is the "%p"part, so random pointers to stuff won't break.

Your patch breaks the whole point of the extension.

The "bc" and "bn" would work, except for the fact that I doubt theyare printed out enough to matter.

A "%.*pb" is the only interface that can work for a "sized" bitmap(with obviously fixed-length ones being possible with a "%.32bp" likething)

But the whole va_args games you play are not acceptable. %p *will*continue to take a void *, and nothing else.