<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Feb 22, 2015 at 2:33 PM, Manasij Mukherjee <span dir="ltr"><<a href="mailto:manasij7479@gmail.com" target="_blank">manasij7479@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><span class=""><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br>5.1.1 [expr.prim.general] in paragraph 8 states that "The form ~ decltype-specifier also denotes the destructor, but it shall not be used as
the unqualified-id in a qualified-id."<br><br>I implemented this a while ago, but it looks like (r146155) it was for expressions (x.~decltype(*x)(), for example) not necessarily for dtor declarations.</div></div><br></div></div>
</blockquote></div></span>I do not clearly understand what this sentence implies.<br></div><div class="gmail_extra">Could you elaborate?<br><br></div><div class="gmail_extra">Also, if the meaning is as you interpreted it, what is the rationale for allowing x.~decltype(*x)() ?<br></div></div></blockquote><div><br>Not quite sure I understand this question (though I did make a mistake in that example, should've been x->~decltype(*x)())<br><br>5.1.1 talks about how ~decltype(...) is a valid unqualified id, except in the case of a qualified id (ie, you can't write "x::y::~decltype(...)"). So that's how x->~decltype(*x)() is valid, as far as I see/read/understand it - wherever you can use an unqualified-id that would name a dtor, you can use ~decltype(...) too (ecxept in the qualified-id case).<br> </div></div><br></div></div>