Switch back to the old mangling for ObjC runtime names.

To be backward compatible to existing archives created by the NSKeyedArchiver
This commit is contained in:
Erik Eckstein
2017-05-01 15:31:45 -07:00
parent 72cf919156
commit 285addb92d
4 changed files with 1784 additions and 0 deletions

View File

@@ -409,6 +409,12 @@ void mangleIdentifier(const char *data, size_t length,
/// This should always round-trip perfectly with demangleSymbolAsNode.
std::string mangleNode(const NodePointer &root);
/// Remangle in the old mangling scheme.
///
/// This is only used for objc-runtime names and should be removed as soon as
/// we switch to the new mangling for those names as well.
std::string mangleNodeOld(const NodePointer &root);
/// \brief Transform the node structure to a string.
///
/// Typical usage: