Until now, -x wasn't really taken into account in Flang's compiler and
frontend drivers. flang-new and flang-new -fc1 only recently gained
powers to consume inputs other than Fortran files and that's probably
why this hasn't been noticed yet.
This patch makes sure that -x is supported correctly and consistently
with Clang. To this end, verification is added when reading LLVM IR
files (i.e. IR modules are verified with llvm::verifyModule). This
way, LLVM IR parsing errors are correctly reported to Flang users. This
also aids testing.
With the new functionality, we can verify that -x ir breaks
compilation for e.g. Fortran files and vice-versa. Tests are updated
accordingly.
Is there a reason to change from "f90" to "f95"? In my understanding, "f90" is more idiomatic for free-form fortran of any standard >= 90.