Index: include/llvm/ADT/PointerIntPair.h =================================================================== --- include/llvm/ADT/PointerIntPair.h +++ include/llvm/ADT/PointerIntPair.h @@ -42,6 +42,8 @@ typename PtrTraits = PointerLikeTypeTraits, typename Info = PointerIntPairInfo> class PointerIntPair { + // Used by MSVC visualizer but generally helpful for debugging/visualizing + using InfoTy = Info; intptr_t Value = 0; public: Index: utils/LLVMVisualizers/llvm.natvis =================================================================== --- utils/LLVMVisualizers/llvm.natvis +++ utils/LLVMVisualizers/llvm.natvis @@ -35,6 +35,7 @@ , /* {Size - 4} more*/ empty {{{*this,view(elt0)}}} + Uninitialized Size Capacity @@ -93,11 +94,11 @@ - {"$T1", s8b}: {($T1)(Val.Value & Val.PointerBitMask)} - {"$T2", s8b}: {($T2)(Val.Value & Val.PointerBitMask)} + {"$T1", s8b}: {($T1)(Val.Value & ValTy::InfoTy::PointerBitMask)} + {"$T2", s8b}: {($T2)(Val.Value & ValTy::InfoTy::PointerBitMask)} - ($T1)(Val.Value & Val.PointerBitMask) - ($T2)(Val.Value & Val.PointerBitMask) + ($T1)(Val.Value & ValTy::InfoTy::PointerBitMask) + ($T2)(Val.Value & ValTy::InfoTy::PointerBitMask)