Adds more languages to the language_names list in
preparation for adding support for C++20 expression
evaluation.
The language constants were taken from the DWARFv5
constants defined in LLVM's Dwarf.def. Two vendor
constants overlap with the DWARFv5 constants so bump
their values. Their actual value is not important,
whereas keeping the enum values consecutive is (since
they are used for array lookups).
Would it make sense to generate this list from the macros in llvm/include/llvm/BinaryFormat/Dwarf.def with some clever application of the ## operator?