From: Phil Budne
I'm betting it was a speedup to not fork/exec
another process if it was
going to be a null transform!
It's worse than that! In vanilla V6, the pre-processor is built into 'cc',
not a separate command.
Here's the relevant code (from expand()):
if (getc(ibuf1) != '#') {
close(ibuf1[0]);
return(file);
}
The code to implement the directives is, ah, entertaining.
Noel