ECL offers two compiles: byte-compiler and lisp-to-C compiler.
They produce incompatible .fasls
(asdf::implementation-identifier) does not accounts the difference and returns the same value - ecl-11.1.1-win-x86.
As implementation-identifier is used to compute output files location, the same file location is used to store .fasls of both ECL compilers
(in my case C:\Users\anton\AppData\Roaming\common-lisp\cache\ecl-11.1.1-win-x86).
In result, if some files are compiled with byte-compiler, and latter user tries the lisp-to-C-compiler, he has errors during .fasl load.