Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[AST] Verify canonicalization of generic signatures. #12774

Merged
merged 4 commits into from
Nov 7, 2017

Commits on Nov 6, 2017

  1. [GSB] Simplify resolveDependentMemberTypes().

    Make sure that we always get the underlying concrete type or the anchor
    of a particular equivalence class.
    DougGregor committed Nov 6, 2017
    Configuration menu
    Copy the full SHA
    b673e5d View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2017

  1. [Type checker] Replace a transformRec() with a subst().

    We’re substituting in the conformance type for Self, nothing more.
    DougGregor committed Nov 7, 2017
    Configuration menu
    Copy the full SHA
    42868b3 View commit details
    Browse the repository at this point in the history
  2. [AST] Properly handle substitution of generic function types.

    If substitution into the generic parameters of a generic function type
    changes those generic parameters, build a new generic signature from
    the resulting parameters. Otherwise, we can end up building ill-formed
    generic signatures that fail validation.
    DougGregor committed Nov 7, 2017
    Configuration menu
    Copy the full SHA
    06d1679 View commit details
    Browse the repository at this point in the history
  3. [AST] Verify canonicalization of generic signatures.

    When we canonicalize a generic signature, ensure that the resulting
    signature has canonical requirements in the appropriate order.
    More validation for generic signature canonicalization as part of the
    ABI, which is tracked by SR-3733 / rdar://problem/31412994.
    DougGregor committed Nov 7, 2017
    Configuration menu
    Copy the full SHA
    c5fe5c4 View commit details
    Browse the repository at this point in the history