Я думаю, что ответ, который я искал, был, по сути, тем, что Адам разместил в комментарии, а именно:
Работа компилятора не включает в себя предварительную обработку, и фактически компилятор будет подавлять любые переключатели препроцессора, не обработанные препроцессором, которые попадают в код.
Итак, поскольку способ ветвления кода должен использовать препроцессор, это означает, что к моменту, когда компилятор получит любой код, он уже один или другой (отладочный код или код выпуска), поэтому это невозможно для меня, чтобы сделать то, что мой вопрос задает на этом этапе (после препроцессора).
Таким образом, это прямое следствие того, что препроцессор был спроектирован как отдельный процесс подачи кода.