<html>
<head>
<base href="https://llvm.org/bugs/" />
</head>
<body><span class="vcard"><a class="email" href="mailto:richard-llvm@metafoo.co.uk" title="Richard Smith <richard-llvm@metafoo.co.uk>"> <span class="fn">Richard Smith</span></a>
</span> changed
<a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED INVALID - QualType::print prints "&" when PrintingPolicy.SuppressSpecifiers is true for reference types"
href="https://llvm.org/bugs/show_bug.cgi?id=26383">bug 26383</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Status</td>
<td>NEW
</td>
<td>RESOLVED
</td>
</tr>
<tr>
<td style="text-align:right;">Resolution</td>
<td>---
</td>
<td>INVALID
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED INVALID - QualType::print prints "&" when PrintingPolicy.SuppressSpecifiers is true for reference types"
href="https://llvm.org/bugs/show_bug.cgi?id=26383#c6">Comment # 6</a>
on <a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED INVALID - QualType::print prints "&" when PrintingPolicy.SuppressSpecifiers is true for reference types"
href="https://llvm.org/bugs/show_bug.cgi?id=26383">bug 26383</a>
from <span class="vcard"><a class="email" href="mailto:richard-llvm@metafoo.co.uk" title="Richard Smith <richard-llvm@metafoo.co.uk>"> <span class="fn">Richard Smith</span></a>
</span></b>
<pre>(In reply to <a href="show_bug.cgi?id=26383#c5">comment #5</a>)
<span class="quote">> What I mean is that I want to only skip the specifiers of the function.
> About what I want, I've already explained - I want to explicitly instantiate
> functions of template types:
>
> template const QString & QList<QString>::first() const;</span >
Here, 'const' and 'QString' are both specifiers, so you'll need to produce
those somehow. One possibility would be:
1) print the declaration with SuppressSpecifiers = true
2) get the function's return type and print it to a string stream with a
marker string for the declared name:
FD->getType()->castAs<FunctionProtoType>()->getReturnType().print(Out,
Policy, "<<<MARKER>>>");
3) take the string from step 2, remove the marker and everything after it, and
glue that on the start of the declaration from step 1.
In any case, I'm closing this bug as invalid, as SuppressSpecifiers is working
as intended.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>