rjmccall added a comment.

Non-canonical information is not supposed to be mangled.

It's not clear to me what the language rule you're really trying to implement 
is.  Maybe you really do need a canonical __private address space, in which 
case you are going to have to change a lot of code in Sema to add the address 
space qualifier to every local and temporary allocation.  But that's not 
obvious to me yet, because you haven't really explained why it needs to be 
explicit in the representation.

If you just want pointers to __private to be mangled with an address-space 
qualifier — meaning I guess that the mangling e.g. Pi will be completely unused 
— that should be easy enough to handle in the mangler.  But if you need to 
distinguish between __private-qualified types and unqualified types, and that 
distinction isn't purely to implement some syntactic restriction about not 
writing e.g. __private __global, then that's not good enough and you do need a 
canonical __private.

Telling me that you're in a hurry isn't helpful; preserving a reasonable 
representation and not allowing corner cases to become maintenance problems is 
far more important to the project than landing patches in trunk on some 
particular schedule.


https://reviews.llvm.org/D35082



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to