r248808 - Added MSVC natvis visualizers for Type and QualType. These could probably be improved, but anything is better than staring at hex values in the debugger.

Aaron Ballman via cfe-commits cfe-commits at lists.llvm.org
Tue Sep 29 10:32:36 PDT 2015


Author: aaronballman
Date: Tue Sep 29 12:32:36 2015
New Revision: 248808

URL: http://llvm.org/viewvc/llvm-project?rev=248808&view=rev
Log:
Added MSVC natvis visualizers for Type and QualType. These could probably be improved, but anything is better than staring at hex values in the debugger.

Modified:
    cfe/trunk/utils/clang.natvis

Modified: cfe/trunk/utils/clang.natvis
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/clang.natvis?rev=248808&r1=248807&r2=248808&view=diff
==============================================================================
--- cfe/trunk/utils/clang.natvis (original)
+++ cfe/trunk/utils/clang.natvis Tue Sep 29 12:32:36 2015
@@ -6,6 +6,14 @@ Put this file into "%USERPROFILE%\Docume
 or create a symbolic link so it updates automatically.
 -->
 <AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
+  <Type Name="clang::Type">
+    <DisplayString Condition="(clang::Type::TypeClass)TypeBits.TC == clang::Type::Builtin">Builtin Type={(clang::BuiltinType::Kind)BuiltinTypeBits.Kind}</DisplayString>
+    <DisplayString Condition="(clang::Type::TypeClass)TypeBits.TC == clang::Type::Attributed">Modified Type={((clang::AttributedType*)this)->ModifiedType} Attribute={(clang::AttributedType::Kind)AttributedTypeBits.AttrKind}</DisplayString>
+    <DisplayString>Type Class={(clang::Type::TypeClass)TypeBits.TC}</DisplayString>
+  </Type>
+  <Type Name="clang::QualType">
+    <DisplayString>{((clang::ExtQualsTypeCommonBase *)(((uintptr_t)Value.Value) & ~(uintptr_t)((1 << clang::TypeAlignmentInBits) - 1)))->BaseType}</DisplayString>
+  </Type>
   <Type Name="clang::IdentifierInfo">
     <DisplayString Condition="Entry != 0">({((llvm::StringMapEntry<clang::IdentifierInfo *>*)Entry)+1,s})</DisplayString>
     <Expand>




More information about the cfe-commits mailing list