Currently interpolation logic prefers -std over -x. But the latter is a
more strong signal, so this patch inverts the order and only makes use of -std
if -x didn't exist.
Fixes https://github.com/clangd/clangd/issues/185
Thanks @sammccall for tracking this down!
Note that type is initialized from guessType, not only -x, so this comment isn't true in general, just for *.h.
Example: if CDB contains clang -std=c++14 foo.cc, then we'll treat foo.mm as obj-c++ rather than c++. (The right thing in that case and probably in general)