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

[ConstraintSystem] Detect and diagnose missing generic arguments #25149

Merged
merged 9 commits into from May 31, 2019

Commits on May 29, 2019

  1. Configuration menu
    Copy the full SHA
    e97955e View commit details
    Browse the repository at this point in the history
  2. [ConstraintLocator] NFC: Add a helper to return generic parameter if …

    …locator points to one
    xedin committed May 29, 2019
    Configuration menu
    Copy the full SHA
    29e79c6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3737358 View commit details
    Browse the repository at this point in the history
  4. [Diagnostics] Improve missing generic argument diagnostic notes

    Emit separate notes for generic parameters found in operator, initializer
    and function declarations. As well as clarify types of `declared in type`
    note.
    xedin committed May 29, 2019
    Configuration menu
    Copy the full SHA
    44536fe View commit details
    Browse the repository at this point in the history
  5. [ConstraintSystem] Default generic parameters associated with missing…

    … member to `Any`
    
    As part of the `DefineBasedOnUse` fix introduced in places where
    there is a reference to non-existent member, let's also add
    constraints which allow to default any generic parameters found
    in base type to `Any`.
    xedin committed May 29, 2019
    Configuration menu
    Copy the full SHA
    636b4ce View commit details
    Browse the repository at this point in the history
  6. [ConstraintSystem] Detect and diagnose missing generic arguments

    Introduce a fix to detect and diagnose situations when omitted
    generic arguments couldn't be deduced by the solver based on
    the enclosing context.
    
    Example:
    
    ```swift
    struct S<T> {
    }
    
    _ = S() // There is not enough context to deduce `T`
    ```
    
    Resolves: rdar://problem/51203824
    xedin committed May 29, 2019
    Configuration menu
    Copy the full SHA
    c30845f View commit details
    Browse the repository at this point in the history

Commits on May 30, 2019

  1. Configuration menu
    Copy the full SHA
    d0a9560 View commit details
    Browse the repository at this point in the history
  2. [Diagnostics] Replace CSDiag logic for diagnosing missing generic arg…

    …uments with new diagnostic
    xedin committed May 30, 2019
    Configuration menu
    Copy the full SHA
    5e35c3e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    da799eb View commit details
    Browse the repository at this point in the history