<div dir="ltr">Hi lldb devs,<div><br></div><div>I prepared a small patch to improve the type consistency when dereferencing values in lldb.</div><div><br></div><div>The problem I'm trying to solve is that the type of a value is canonized (in clang) when the value is dereferenced.</div><div><br></div><div>Without the patch the test I added would return the type TTuple instead of TPair.</div><div><br></div><div>There is one issue with the patch:</div><div>In theory the</div><div><i>compiler_type.GetChildCompilerTypeAtIndex(</i></div><div>call is not needed. Unfortunately, to get a name for the dereferenced value, this call is needed since only the type system (at least clang) knows a name.</div><div>The dereferenced value does not necessarily have a name. However, the clang type system knows an alias (<i>name</i> if it is a reference or <i>*name</i> if it is a pointer).</div><div><br></div><div>I also tried to fix this issue in the type system directly (lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:6051).</div><div>However, changing that broke several tests.</div><div><br></div><div>Let me know what you think.</div><div><br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">kind regards,<div>Lasse</div></div></div></div></div></div>