Index: utils/ClangVisualizers/clang.natvis
===================================================================
--- utils/ClangVisualizers/clang.natvis
+++ utils/ClangVisualizers/clang.natvis
@@ -392,25 +392,32 @@
Empty
{*(clang::IdentifierInfo *)(Ptr & ~PtrMask)}
- {{Identifier ({*(clang::IdentifierInfo *)(Ptr & ~PtrMask)})}}
- {{ObjC Zero Arg Selector (*{(clang::IdentifierInfo *)(Ptr & ~PtrMask)})}}
- {{ObjC One Arg Selector (*{(clang::IdentifierInfo *)(Ptr & ~PtrMask)})}}
+ Identifier {*(clang::IdentifierInfo *)(Ptr & ~PtrMask)}
+ ObjC Zero Arg Selector {*(clang::IdentifierInfo *)(Ptr & ~PtrMask)}
+ ObjC One Arg Selector {*(clang::IdentifierInfo *)(Ptr & ~PtrMask)}
+ C++ Constructor {*(clang::detail::CXXSpecialNameExtra *)(Ptr & ~PtrMask)}
+ C++ Destructor {*(clang::detail::CXXSpecialNameExtra *)(Ptr & ~PtrMask)}
+ C++ Conversion function {*(clang::detail::CXXSpecialNameExtra *)(Ptr & ~PtrMask)}
+ C++ Operator {*(clang::detail::CXXOperatorIdName *)(Ptr & ~PtrMask)}
{*(clang::DeclarationNameExtra *)(Ptr & ~PtrMask),view(cpp)}
- {{Extra ({*(clang::DeclarationNameExtra *)(Ptr & ~PtrMask)})}}
+ Extra {*(clang::detail::DeclarationNameExtra *)(Ptr & ~PtrMask)}
- *(clang::IdentifierInfo *)(Ptr & ~PtrMask)
- *(clang::IdentifierInfo *)(Ptr & ~PtrMask)
- *(clang::IdentifierInfo *)(Ptr & ~PtrMask)
- - (clang::DeclarationNameExtra *)(Ptr & ~PtrMask)
-
-
-
- {((clang::CXXSpecialName *)this)->Type,view(cpp)}
- {(clang::DeclarationNameExtra::ExtraKind)ExtraKindOrNumArgs,en}{" ",sb}{*this,view(cpp)}
+ - *(clang::detail::CXXSpecialNameExtra *)(Ptr & ~PtrMask)
+ - *(clang::detail::CXXSpecialNameExtra *)(Ptr & ~PtrMask)
+ - *(clang::detail::CXXSpecialNameExtra *)(Ptr & ~PtrMask)
+ - *(clang::detail::CXXOperatorIdName *)(Ptr & ~PtrMask)
+ - *(clang::detail::DeclarationNameExtra *)(Ptr & ~PtrMask)
+
+
+
+ C++ Deduction guide
+ C++ Literal operator
+ C++ Using directive
+ {(clang::detail::DeclarationNameExtra::ExtraKind)ExtraKindOrNumArgs,en}{" ",sb}{*this,view(cpp)}
{(clang::tok::TokenKind)Kind,en}