[6.0] Support closures that capture opened pack element types #73541
slavapestov
marked this pull request as draft 1 year ago
ASTVerifier: Consolidate verifier logic for local archetypes
a8bd4e7f
AST: Record captured generic environments in CaptureInfo
a721ef80
slavapestov
marked this pull request as ready for review 1 year ago
AST: Add getNextDepth() and getMaxDepth() methods to GenericSignature
1f621acf
AST: Factor out LocalArchetypeRequirementCollector from SIL
5db9e4d7
SIL: Plumb pack element captures through type lowering
413d94b7
SIL: Rename old LocalArchetypeRequirementCollector
a5d127e0
SIL: Support element archetypes inside lowerCaptureContextParameters()
3b083493
AST: Introduce TypeBase::hasPrimaryArchetype()
3787d657
SIL: Add missing SILType::has*Archetype() predicates
c6e46472
AST: Use hasPrimaryArchetype() in a few places
531d91b8
AST: Allow local archetypes in interface types of local declarations
8dc68c7f
AST: Rewrite GenericEnvironment::mapElementTypeIntoPackContext()
a429e25a
AST: Remove VarDecl::getOpenedElementEnvironment()
e2bc6fc6
SIL: Store captured environments in SILFunction
ed63461f
AutoDiff: Local workaround for invariant violation
fa390c99
SIL: Handle captured environments in SILFunction::mapTypeIntoContext()
b27beb96
SIL: Fix assertion failure after deleting instructions that contain u…
4cf6e33e
ASTMangler: Support closures whose types contain local archetypes
f91e4299
SIL: Add TypeConverter::getSubstitutionMapWithCapturedEnvironments()
d8c0a39c
SILGen: Use TypeConverter::getSubstitutionMapWithCapturedEnvironments()
d47d6a1a
SILGen: Rewrite captured local archetypes into primary archetypes
4c36819e
hborla
approved these changes
on 2024-05-22
slavapestov
merged
8c230de0
into release/6.0 1 year ago
Assignees
No one assigned
Login to write a write a comment.
Login via GitHub