Merge pull request #74916 from rjmccall/strip-isolated-any-reflection-metadata

Suppress `@isolated(any)` in reflective metadata strings on old targets
This commit is contained in:
John McCall
2024-07-03 02:41:23 -04:00
committed by GitHub
4 changed files with 38 additions and 7 deletions

View File

@@ -75,6 +75,14 @@ protected:
/// If enabled, inverses will not be mangled into generic signatures.
bool AllowInverses = true;
/// If enabled, @isolated(any) can be encoded in the mangled name.
/// Suppressing type attributes this way is generally questionable ---
/// for example, it does not interact properly with substitutions ---
/// and should only be done in situations where it is just going to be
/// interpreted as a type and the exact string value does not play
/// a critical role.
bool AllowIsolatedAny = true;
/// If enabled, declarations annotated with @_originallyDefinedIn are mangled
/// as if they're part of their original module. Disabled for debug mangling,
/// because lldb wants to find declarations in the modules they're currently