mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[AST] Skip verification of typealiases marked as "debugger aliases".
LLDB creates global typealiases that have archetypes in them, which violates AST invariants and trips up the AST verifier. Introduce a specific bit that LLDB can set to indicate that a given typealias is such an alias. We'll skip AST verification for such typealiases. As a way to stage in this change without requiring synchronization across the Swift and LLDB repos, also match typealiases with the names $.*lldb in the AST verifier and skip verification. Once LLDB is setting the bit appropriately, we'll remove this hack.
This commit is contained in:
@@ -2513,6 +2513,7 @@ TypeAliasDecl::TypeAliasDecl(SourceLoc TypeAliasLoc, SourceLoc EqualLoc,
|
||||
: GenericTypeDecl(DeclKind::TypeAlias, DC, Name, NameLoc, {}, GenericParams),
|
||||
TypeAliasLoc(TypeAliasLoc), EqualLoc(EqualLoc) {
|
||||
Bits.TypeAliasDecl.IsCompatibilityAlias = false;
|
||||
Bits.TypeAliasDecl.IsDebuggerAlias = false;
|
||||
}
|
||||
|
||||
SourceRange TypeAliasDecl::getSourceRange() const {
|
||||
|
||||
Reference in New Issue
Block a user