<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Mon, Feb 5, 2018 at 1:21 PM Roman Popov <<a href="mailto:ripopov@gmail.com">ripopov@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div class="gmail_extra"><br><div class="gmail_quote">2018-02-05 13:04 GMT-08:00 David Blaikie <span dir="ltr"><<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Seems fair (though I feel like/wish, perhaps there should be an implicit type parameter in cases like this, but ah well).<br><br>I still think the idea that DWARF producers should create names that match exactly some specific demangler's pretty printing is problematic... but in this case there's clearly information loss that needs to be addressed.</div></blockquote></div><br></div></div><div dir="ltr"><div class="gmail_extra">Can you please elaborate why this is problematic?</div></div></blockquote><div><br>It's a rather tight coupling - there are many demanglers out there that might choose different renderings. (eg: "foo<(unsigned)0>" or "foo<0u>" or "foo<0U>" etc)<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">  Also why not to put mangled names into debug_info? Debugger can demangle them by itself.</div></div></blockquote><div><br>There is a way to include mangled names in DWARF (DW_AT_linkage_name) but that adds some size penalty to the debug info to include that extra information everywhere.<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">Here is related GDB thread:</span><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><font color="#1155cc"><u><a href="https://sourceware.org/ml/gdb/2018-02/msg00021.html" target="_blank">https://sourceware.org/ml/gdb/2018-02/msg00021.html</a></u></font></div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;background-color:rgb(255,255,255);float:none;display:inline">According to GDB developer in some cases it is impossible to reconstruct type from template parameter tags.</span><br class="m_6334437010917348701gmail-Apple-interchange-newline"><br class="m_6334437010917348701gmail-Apple-interchange-newline"><br></div></div>
</blockquote></div></div>