summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2018-06-28 17:55:54 +0000
committerZachary Turner <zturner@google.com>2018-06-28 17:55:54 +0000
commita924a78e8a42e2a0bc768392cdc122ae933154fe (patch)
treea5e38589629430f31dd3acd9218d380e4f93f234 /utils
parente7de33fcf27abac4da5f553336bd120c06d640eb (diff)
2 VS natvis improvements.
Optional<T> was broken due to a change in the class's internals. That is fixed, and additionally a visualizer is added for Expected<T>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@335892 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rw-r--r--utils/LLVMVisualizers/llvm.natvis15
1 files changed, 12 insertions, 3 deletions
diff --git a/utils/LLVMVisualizers/llvm.natvis b/utils/LLVMVisualizers/llvm.natvis
index 439868a5afd..e0812a0286e 100644
--- a/utils/LLVMVisualizers/llvm.natvis
+++ b/utils/LLVMVisualizers/llvm.natvis
@@ -195,10 +195,19 @@ For later versions of Visual Studio, no setup is required.
</Type>
<Type Name="llvm::Optional&lt;*&gt;">
- <DisplayString Condition="!hasVal">empty</DisplayString>
- <DisplayString Condition="hasVal">{*(($T1 *)(unsigned char *)storage.buffer)}</DisplayString>
+ <DisplayString Condition="!Storage.hasVal">None</DisplayString>
+ <DisplayString Condition="Storage.hasVal">{*(($T1 *)(unsigned char *)Storage.storage.buffer)}</DisplayString>
<Expand>
- <Item Name="[underlying]" Condition="hasVal">*(($T1 *)(unsigned char *)storage.buffer)</Item>
+ <Item Name="[underlying]" Condition="Storage.hasVal">*(($T1 *)(unsigned char *)Storage.storage.buffer)</Item>
+ </Expand>
+ </Type>
+
+ <Type Name="llvm::Expected&lt;*&gt;">
+ <DisplayString Condition="HasError">Error</DisplayString>
+ <DisplayString Condition="!HasError">{*((storage_type *)TStorage.buffer)}</DisplayString>
+ <Expand>
+ <Item Name="[value]" Condition="!HasError">*((storage_type *)TStorage.buffer)</Item>
+ <Item Name="[error]" Condition="HasError">*((error_type *)ErrorStorage.buffer)</Item>
</Expand>
</Type>