swift
Opaque types with resilience
#22072
Merged

Commits
  • Parse opaque types.
    jckarter committed 6 years ago
  • AST: Represent OpaqueTypeDecls.
    jckarter committed 6 years ago
  • Add an OpaqueTypeArchetypeType subclass.
    jckarter committed 6 years ago
  • Sema: Infer the underlying type for opaque return types from function bodies.
    jckarter committed 6 years ago
  • SILGen: Substitute away opaque types.
    jckarter committed 6 years ago
  • Support nested types on opaque archetypes (and maybe opened ones).
    jckarter committed 6 years ago
  • Serialization: Serialize opaque types and their decls.
    jckarter committed 6 years ago
  • IRGen: Substitute out opaque types when emitting associated types.
    jckarter committed 6 years ago
  • Enable opaque result types.
    jckarter committed 6 years ago
  • Respond to Slava's feedback
    jckarter committed 6 years ago
  • Mangle opaque types without underlying types as ErrorType for now.
    jckarter committed 6 years ago
  • Remove ResilienceExpansion from substOpaqueTypes for now.
    jckarter committed 6 years ago
  • Sema: Don't allow properties with inferred types to infer opaque result types.
    jckarter committed 6 years ago
  • Add test for deserializing opaque types across modules
    jckarter committed 6 years ago
  • SILGen: Start supporting opaque result types resiliently.
    jckarter committed 6 years ago
  • Mangle opaque result types.
    jckarter committed 6 years ago
  • IRGen: Emit runtime calls to fetch opaque type metadata.
    jckarter committed 6 years ago
  • IRGen: Use runtime calls to get opaque type metadata and conformances for associated types.
    jckarter committed 6 years ago
  • opaque descriptor wip
    jckarter committed 6 years ago
  • IRGen: Emit opaque type descriptors.
    jckarter committed 6 years ago
  • Push the conformance accessor hack down into getTypeByMangledName.
    jckarter committed 6 years ago
  • IRGen: Inline helper into its last remaining use
    jckarter committed 6 years ago
  • IRGen: Extract GenKeyPath's emitWitnessTableRefString to be usable elsewhere.
    jckarter committed 6 years ago
  • fill in witness tables
    jckarter committed 6 years ago
  • change signature
    jckarter committed 6 years ago
  • runtime interface fixup irgen
    jckarter committed 6 years ago
  • Runtime: Implement entry points for opaque type support
    jckarter committed 6 years ago
  • Decode opaque types in the runtime demangler.
    jckarter committed 6 years ago
  • add changelog entry for opaque types
    jckarter committed 6 years ago
  • Switch __opaque to some, per the latest rev of the proposal
    jckarter committed 6 years ago
  • update tests
    jckarter committed 6 years ago
  • fix rdar://problem/49230987
    jckarter committed 6 years ago
  • IRGen: Bind local metadata before emitting opaque type assoc type witnesses. rdar://problem/49585457
    jckarter committed 6 years ago
  • TBD: Include opaque type descriptors
    jckarter committed 6 years ago
  • Parsable interface and type reconstruction support for opaque types.
    jckarter committed 6 years ago
  • merge fixup
    jckarter committed 6 years ago
  • Relax some assertions to allow opaque-type values at global scope in scripts.
    jckarter committed 6 years ago
  • Serialization: Handle reentrance while deserializing OpaqueTypeDecl. rdar://problem/49829836
    jckarter committed 6 years ago
  • Allow OpaqueTypeDecls to be (de)mangled as contexts, rdar://problem/49831658
    jckarter committed 6 years ago
  • merge fixup
    jckarter committed 6 years ago
  • Validate opaque return types for properties and subscripts.
    jckarter committed 6 years ago
  • Check the underlying type of get-only computed properties with opaque return types.
    jckarter committed 6 years ago
  • Serialize opaque return type of var/subscript decls.
    jckarter committed 6 years ago
  • Visit var/subscript opaque return decls during IRGen/TBDGen.
    jckarter committed 6 years ago
  • Track var/subscript opaque return decls for type reconstruction.
    jckarter committed 6 years ago
  • Demangler: Register substitution for opaque archetype manglings
    jckarter committed 6 years ago
Loading