[PATCH] D63039: Various improvements to Clang MSVC Visualizers

Mike Spertus via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 7 18:04:24 PDT 2019


mspertus created this revision.
mspertus added reviewers: aaron.ballman, zturner.
mspertus added a project: clang.
Herald added a subscriber: cfe-commits.

This change adds/improves MSVC visualizers for many Clang types, including array types, trailing return types in function, deduction guides, a fix for OpaquePtr, etc. It also replaces all of the view(deref) with the "na" formatter, which is a better built-in natvis technique for doing the same thing. To see these in action, look at the attached image of my Watch Window F9111721: visualize2.jpg <https://reviews.llvm.org/F9111721> or as approximated by the ASCII rendering below

  -    S.CurScope->DeclsInScope,na	{ [Small Mode] size=14, capacity=32 }
          [size]            14
          [capacity]        32
          [0]               {Identifier (__int128_t)}
          [1]               {Identifier (__uint128_t)}
          [2]               {Identifier (__NSConstantString)}
          [3]               {Identifier (__builtin_ms_va_list)}
          [4]               {Identifier (__builtin_va_list)}
          [5]               int i
          [6]               int j
          [7]               char a[5]
          [8]               template<typename T> void g(T t);
          [9]               template<typename T> struct Y;
          [10]              template<typename T> Y(T ) -> Y<T>;
          [11]              struct X
              DeclKind      CXXRecord
              Members
                  [0]       implicit struct X
                  [1]       Field {int si}
          [12]              void f(X x)
          [13]              int main(int argc, char * argv[])


Repository:
  rC Clang

https://reviews.llvm.org/D63039

Files:
  utils/ClangVisualizers/clang.natvis

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63039.203649.patch
Type: text/x-patch
Size: 26464 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190608/8a32f702/attachment-0001.bin>


More information about the cfe-commits mailing list