This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [C++ Patch] Fix 23287
Paolo Carlini wrote:
I understand this first sentence of yours as meaning that in any case
there is something to fix in the library too, in ext/pb_ds, in
particular. Let's get in touch about that, irrespective of the front-end
issue....
I think it will be very hard to find them without the compiler diagnosing the
issue. The problem is that in
foo->~name ();
name must be looked up in both the scope of foo's type and the scope of the
whole expression. If it's found in both places, it must be the same type.
The parser is not doing this check.
The issue I found was that there are cases of
foo->~value_type ();
in member functions of template classes where Foo::value_type is one type and
Klass::value_type is a different type. (char and basic_string<char> was the
specific case I fell over.)
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery
nathan@codesourcery.com :: http://www.planetfall.pwp.blueyonder.co.uk