If any errors have occured during compilation, the CTFE engine won't even try. It just reports "function XXX cannot be interpreted at compile time" for every invocation of CTFE. Eg, in the test suite interpret3.d, if you add an 'assert(0)' to the first test, more than a hundred spurious error messages are generated.
https://github.com/D-Programming-Language/dmd/commit/767708299a408b4a234ee9ad4f45b0e6e0c21e6d https://github.com/D-Programming-Language/dmd/commit/13195c39ae3e3788c559d8e88d3203371e43f029