>       typedef int foo;
>       typedef foo* foo_p;
> 
> In a truly canonical type-node environment, "foo" would have the same  
> type node as "int" (so we couldn't produce the name "foo" in  
> diagnostics), and "foo_p" would have the same type node as "int*".

But what about when you have multiple integer types that have the same
range?  Certainly you can't treat all of them as the same because they
have different alias sets and it's ciritical for efficient code generation
that this be the case.

Or would you consider these different types?

Reply via email to