Warn if context values differ, related to issue #2

Warn if context values differ, related to issue #2112
Sorry, I think I'm still talking past you – my understanding is that your minifier is smart enough to turn `if (0) { foo(); }` into nothing but isn't smart enough to turn `if (1) { return; } foo();` into nothing.