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

Re-implement async fn drop order lowering #61413

Merged
merged 7 commits into from
Jun 4, 2019

Commits on Jun 3, 2019

  1. syntax: revert ast::AsyncArgument and associated changes.

    Here follows the main reverts applied in order to make this commit:
    
    Revert "Rollup merge of rust-lang#60676 - davidtwco:issue-60674, r=cramertj"
    
    This reverts commit 45b0945, reversing
    changes made to f6df1f6.
    
    Revert "Rollup merge of rust-lang#60437 - davidtwco:issue-60236, r=nikomatsakis"
    
    This reverts commit 16939a5, reversing
    changes made to 12bf981.
    
    Revert "Rollup merge of rust-lang#59823 - davidtwco:issue-54716, r=cramertj"
    
    This reverts commit 62d1574, reversing
    changes made to 4eff852.
    eddyb authored and davidtwco committed Jun 3, 2019
    Configuration menu
    Copy the full SHA
    d0c78dd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3277107 View commit details
    Browse the repository at this point in the history
  3. rustc: async fn drop order lowering in HIR

    This commit re-implements the async fn drop order lowering changes so
    that it all takes place in HIR lowering, building atop the work done by
    `@eddyb` to refactor `Res::Upvar`.
    
    Previously, this types involved in the lowering were constructed in
    libsyntax as they had to be used during name resolution and HIR
    lowering. This was awful because none of that logic should have existed
    in libsyntax.
    
    This commit also changes `ArgSource` to keep a `HirId` to the original
    argument pattern rather than a cloned copy of the pattern.
    davidtwco committed Jun 3, 2019
    Configuration menu
    Copy the full SHA
    1e5f496 View commit details
    Browse the repository at this point in the history
  4. rustc: remove HirId from ArgSource::AsyncFn

    This commit removes the `HirId` from `ArgSource::AsyncFn`, relying on
    the fact that only `simple_ident` is used in each of the locations that
    previously took the original pattern from the `ArgSource::AsyncFn`.
    davidtwco committed Jun 3, 2019
    Configuration menu
    Copy the full SHA
    5e3b41e View commit details
    Browse the repository at this point in the history
  5. rustc: use lowering helpers

    This commit changes the lowering to stop creating HIR statements,
    expressions and patterns directly and instead uses the pre-existing
    helper functions.
    davidtwco committed Jun 3, 2019
    Configuration menu
    Copy the full SHA
    3ebe9ab View commit details
    Browse the repository at this point in the history
  6. rustc: construct statement vector directly

    This commit simplifies the previous logic to construct the statement
    vector directly rather than constructing a `Vec` of
    `(hir::Stmt, Option<hir::Stmt>)` first.
    davidtwco committed Jun 3, 2019
    Configuration menu
    Copy the full SHA
    3c7e0eb View commit details
    Browse the repository at this point in the history
  7. rustc: remove ArgSource

    `ArgSource` is no longer used anywhere, so it can be removed.
    davidtwco committed Jun 3, 2019
    Configuration menu
    Copy the full SHA
    2bb92aa View commit details
    Browse the repository at this point in the history