Strict came in with perl 5.000, so it's been there from the beginning. (Well, beginning of perl 5, at least) It does interact with the compiler, setting bits that get put in the flag bits of parts of the optree, and the compilation code does pay attention to it.
At the moment, strict doesn't care about nonexistant subs.