The Mangle aspect marks a method to be mangled. Mangle takes an optional boolean that defaults to true. If true, the method will be forced to be mangled, if false, it won't be. Overrides and interface methods of mangled methods will automatically be mangled, additional methods that overload with an identical signature will also be mangled.

The compiler uses mangling on the Cocoa platform, when methods are overloaded with the same selector name but different types. On .NET and Java, mangling is used for named overloads that would have the same runtime signature.