Earlier quoted context omitted.
> Well, stdout isn't a debug channel; you might want to debug a program that actually uses stdout for its output, not for debug chatter. What's your use case for this that makes stderr unsuitable?
stderr also isn't for debug output. If, say, a compiler puts out "hello.c: syntax error" on its standard error stream, that is not a debugging diagnostic regarding that compiler's internals; it's about "hello.c". stderr is not an instrumentation tool which goes away when we're not debugging the program.
Why? It's not like it'd be printing debugging level messages on release builds in either case.