Our code in LazyObjFile::parse() has an ELFT switch and
adds a lazy object by its ELFT kind.
Though it might be possible to add a file using a different architecture
and make LLD to silently accept it (if the file is empty or contains only week symbols).
That itself, not a huge issue perhaps (because the error would be reported later if the file is fetched),
but still does not look clean and correct.
It is possible to report an error earlier and clean up the
code. That is what the patch does.
Ideally, we might want to reuse isCompatible from SymbolTable.cpp,
but it is static and accepts a file as an argument, what is not convenient.
Since such a situation should be rare, I think it should be OK to go with the
way chosen in this patch.