Skip to content

create a lint for tracking "tainted" fallback around abrupt expressions and ! type #66173

Closed
@nikomatsakis

Description

@nikomatsakis

As part of #65992, we want to create a lint that warns about cases where changing the fallback for type variables from () to ! will create problems. This issue is tracking that implementation work.

Edit 2020-10-05: stream for work on this, https://rust-lang.zulipchat.com/#narrow/stream/259160-t-lang.2Fproject-never-type

Current status and next steps

  • prototype lint and verify that it works on the example test cases
  • turn the lint to deny by default and make sure libstd builds
  • create a helper function for adding to dead_nodes that explains what is going on, document that this function is invoked on the "way up" the tree, so that nodes are added to dead_nodes set if they diverge before completing (or they never start)
  • test against the objc crate version that had problems
  • run a "crater check" run and see the results
  • improve the error message

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-inferenceArea: Type inferenceA-lintsArea: Lints (warnings about flaws in source code) such as unused_mut.C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCF-never_type`#![feature(never_type)]`S-tracking-design-concernsStatus: There are blocking design concerns.T-compilerRelevant to the compiler 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