Skip to content

Audit uses of skip_binder in diagnostics code #72507

Open
@ecstatic-morse

Description

@ecstatic-morse

As discussed in #71618, skip_binder is called very often in diagnostics code. In general, this is incorrect for types with late-bound regions, e.g. function pointers. We should audit uses of skip_binder and replace them with no_bound_vars + early return or unwrap. If there are uses of skip_binder that are benign, for example debug printing or comparing with a known type, we should abstract this behind a function to minimize the number of calls to skip_binder that need to be checked.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-diagnosticsArea: Messages for errors, warnings, and lintsA-trait-systemArea: Trait systemC-cleanupCategory: PRs that clean code up or issues documenting cleanup.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-typesRelevant to the types team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions