Fix libcxx formatters for changes in r300140.
authorLang Hames <lhames@gmail.com>
Wed, 26 Apr 2017 23:29:59 +0000 (23:29 +0000)
committerLang Hames <lhames@gmail.com>
Wed, 26 Apr 2017 23:29:59 +0000 (23:29 +0000)
commit6cc3354dd6f2290c18a9d8c1da395af62cc7e0e6
treeb391147ca82819c51548210052b23582a26d894f
parent1182779917b3c1681274e6feaa4d36e51b7e142e
Fix libcxx formatters for changes in r300140.

Summary:
LLVM r300140 changed the layout and field names of __compressed_pair, which
broke LLDB's std::vector, std::map and std::unsorted_map formatters.

This patch attempts to fix these formatters by having them interogate the
__compressed_pair values to determine whether they're pre- or post-r300140
variants, then access them accordingly.

Reviewers: jingham, EricWF

Reviewed By: jingham

Differential Revision: https://reviews.llvm.org/D32554

llvm-svn: 301493
lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp