C/C++ FEs: Do we really need three char_type_nodes?

Joe Buck Joe.Buck@synopsys.COM
Wed Sep 24 13:48:00 GMT 2008


On Tue, Sep 23, 2008 at 05:51:23PM -0400, Jason Merrill wrote:
> Mark Mitchell wrote:
> >Is that desirable?  Type-based alias analysis should be able to take
> >advantage of the difference between them; a "char **" and a "signed char
> >**" cannot point at the same thing, for example.
> 
> They can.  In C++, a char* (or unsigned char*) can alias anything, and 
> any signed/unsigned type can alias the other signage.

Right, but a char** points to a char*, and a signed char** points to a
signed char*.  The aliasing exception for char pointers doesn't cover this
case the way it does for the "one star" case.

That said, it may not be that significant if we lose that information.



More information about the Gcc mailing list