[PATCH] D52581: [AST] Revert mangling changes from r339428
Shoaib Meenai via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 27 11:59:26 PDT 2018
smeenai added a subscriber: rnk.
smeenai added a comment.
Adding @rnk, since this'll touch MS ABI mangling. For context, we want `struct X` to have the same mangling as `@interface X` normally, but we want to be able to distinguish them for the purpose of exception handling. See this diff's summary for more details.
The simplest option is something like https://reviews.llvm.org/P8109, where we add a `.objc` discriminator when mangling the RTTI itself. It would require the GNUStep runtime for Windows to be altered accordingly (e.g. https://github.com/gnustep/libobjc2/blob/master/eh_win32_msvc.cc#L85 would have to use `".objc.PAU"` instead of `".PAU.objc_cls_"`); would that be acceptable, @theraven and @DHowett-MSFT?
If we want to keep the Obj-C discriminator as an infix instead of a prefix, we'll probably have to keep some state around in the mangler indicating if we're mangling for RTTI or not. That seems ugly, but I don't know if there's any other way to do it.
Repository:
rC Clang
https://reviews.llvm.org/D52581
More information about the cfe-commits
mailing list