Opaque types with resilience #22072
jckarter
force pushed
to
d7490860
6 years ago
jckarter
force pushed
to
88a05b78
6 years ago
jckarter
force pushed
to
95903299
6 years ago
Parse opaque types.
5e149796
AST: Represent OpaqueTypeDecls.
71912bbf
Add an OpaqueTypeArchetypeType subclass.
dd2b51d6
Sema: Infer the underlying type for opaque return types from function…
f008019b
SILGen: Substitute away opaque types.
c771a7e7
Support nested types on opaque archetypes (and maybe opened ones).
a419754f
Serialization: Serialize opaque types and their decls.
2d19110e
IRGen: Substitute out opaque types when emitting associated types.
325ba600
Enable opaque result types.
a82b9929
Respond to Slava's feedback
7a8b9401
Mangle opaque types without underlying types as ErrorType for now.
a6c92546
Remove ResilienceExpansion from substOpaqueTypes for now.
e3bbd8ce
Sema: Don't allow properties with inferred types to infer opaque resu…
6db0540b
Add test for deserializing opaque types across modules
141d6bfb
SILGen: Start supporting opaque result types resiliently.
0255baa9
Mangle opaque result types.
42e1824a
IRGen: Emit runtime calls to fetch opaque type metadata.
09ca7a78
IRGen: Use runtime calls to get opaque type metadata and conformances…
34620a9b
opaque descriptor wip
ca537d1e
IRGen: Emit opaque type descriptors.
ffc9fd5e
Push the conformance accessor hack down into getTypeByMangledName.
05dfec0c
IRGen: Inline helper into its last remaining use
60d719ca
IRGen: Extract GenKeyPath's emitWitnessTableRefString to be usable el…
1841a1f2
fill in witness tables
5ec394c6
change signature
cf008925
runtime interface fixup irgen
f363a10b
Runtime: Implement entry points for opaque type support
a3c17bd0
Decode opaque types in the runtime demangler.
95c43f4e
add changelog entry for opaque types
40757497
Switch __opaque to some, per the latest rev of the proposal
be0140fe
update tests
0b47f5b6
fix rdar://problem/49230987
455f0609
IRGen: Bind local metadata before emitting opaque type assoc type wit…
29a8c67b
TBD: Include opaque type descriptors
733b08bd
Parsable interface and type reconstruction support for opaque types.
399332b7
merge fixup
60aa49d6
Relax some assertions to allow opaque-type values at global scope in …
78b48707
Serialization: Handle reentrance while deserializing OpaqueTypeDecl. …
f96ca720
Allow OpaqueTypeDecls to be (de)mangled as contexts, rdar://problem/4…
5bb22b0b
merge fixup
c58737fb
Validate opaque return types for properties and subscripts.
59fd1414
Check the underlying type of get-only computed properties with opaque…
0fcc7cda
Serialize opaque return type of var/subscript decls.
b57f3522
Visit var/subscript opaque return decls during IRGen/TBDGen.
a99716bb
Track var/subscript opaque return decls for type reconstruction.
dbd3a48a
jckarter
force pushed
to
dbd3a48a
6 years ago
Demangler: Register substitution for opaque archetype manglings
b87a5664
jckarter
merged
a8c2b50b
into master 6 years ago
Assignees
No one assigned
Login to write a write a comment.
Login via GitHub