]> granicus.if.org Git - clang/commitdiff
Visualizer for Pack template arguments
authorMike Spertus <mike@spertus.com>
Mon, 23 May 2016 22:27:44 +0000 (22:27 +0000)
committerMike Spertus <mike@spertus.com>
Mon, 23 May 2016 22:27:44 +0000 (22:27 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@270505 91177308-0d34-0410-b5e6-96231b3b80d8

utils/ClangVisualizers/clang.natvis

index 453b6f448e3df9f304ed91ab55ced60dc659a7cf..a50491a5ce0dd65707dee34077fdd617ee6819ae 100644 (file)
@@ -231,9 +231,14 @@ For later versions of Visual Studio, no setup is required-->
   </Type>\r
   <Type Name="clang::TemplateArgument">\r
     <DisplayString IncludeView="cpp">{*(clang::QualType *)&amp;TypeOrValue.V,view(cpp)}</DisplayString>\r
-    <DisplayString>{(clang::TemplateArgument::ArgKind)TypeOrValue.Kind,en} template parameter: {*(clang::QualType *)&amp;TypeOrValue.V}</DisplayString>\r
+    <DisplayString Condition="Integer.Kind == clang::TemplateArgument::ArgKind::Type">{(clang::TemplateArgument::ArgKind)TypeOrValue.Kind,en} template parameter: {*(clang::QualType *)&amp;TypeOrValue.V}</DisplayString>\r
+    <DisplayString>{(clang::TemplateArgument::ArgKind)TypeOrValue.Kind,en}</DisplayString>\r
     <Expand>\r
       <Item Name="QualType" Condition="Integer.Kind == clang::TemplateArgument::ArgKind::Type">*(clang::QualType *)&amp;TypeOrValue.V</Item>\r
+      <ArrayItems Condition="Integer.Kind == clang::TemplateArgument::ArgKind::Pack">\r
+        <Size>Args.NumArgs</Size>\r
+        <ValuePointer>Args.Args</ValuePointer>\r
+      </ArrayItems>\r
       <!-- TODO: Other kinds-->\r
     </Expand>\r
   </Type>\r