For years, I had this behavior when writing VB.NET code with VS2005:
If my code contains a syntax error, when I hit F5, a popup would ask something like "do you want to stop... or run a previously compiled version of this code?"
(I would always hit STOP. Not sure why anyone would want to run a prior edition of their code, instead of the code you are trying to write/fix NOW.)
Yesterday, something changed. Now even blatant errors like "callll ThisCodeDoesntExist(xxx.zzz)"
just immediately runs my older code. No popup. No choice. No warning. No error. Nothing.
Did I accidentally change some compiler option(s)? Where would I even begin to look for this?