This patch adds support for parsing DW_TAG_LLVM_annotations for
abi_tag's. This allows us to recreate more accurate ASTs nodes for
constructors/destructors, where previously we relied on guessing the
correct name mangling to resolve a ctor/dtor call. If a ctor/dtor
had an abi_tag we would fail to resolve the symbol because the
"guessing algorithm" (see CollectCandidateCPlusPlusNames) doesn't
account for them.
This is necessary to support calling destructors/constructors
of numerous libcxx types, since they recently got abi-tagged.
- Added API test