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

Rollup of 8 pull requests #121036

Merged
merged 26 commits into from
Feb 13, 2024
Merged

Rollup of 8 pull requests #121036

merged 26 commits into from
Feb 13, 2024

Commits on Aug 16, 2023

  1. Configuration menu
    Copy the full SHA
    f0abcd9 View commit details
    Browse the repository at this point in the history

Commits on Feb 1, 2024

  1. Configuration menu
    Copy the full SHA
    ea4a36b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    48c4272 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7c32908 View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2024

  1. Start blocks eagerly

    Nadrieril committed Feb 12, 2024
    Configuration menu
    Copy the full SHA
    faaf81b View commit details
    Browse the repository at this point in the history
  2. Remove TypeErrCtxt::drop.

    The check within changed from `delay_span_bug` to `delay_good_path_bug`
    in rust-lang#110476, and removing the check altogether was considered. It's a
    very weak sanity check and gets in the way of removing good path delayed
    bugs altogether, so this PR just removes it.
    nnethercote committed Feb 12, 2024
    Configuration menu
    Copy the full SHA
    173dbc9 View commit details
    Browse the repository at this point in the history
  3. Remove good_path_delayed_bug.

    It's only has a single remaining purpose: to ensure that a diagnostic is
    printed when `trimmed_def_paths` is used. It's an annoying mechanism:
    weak, with odd semantics, badly named, and gets in the way of other
    changes.
    
    This commit replaces it with a simpler `must_produce_diag` mechanism,
    getting rid of a diagnostic `Level` along the way.
    nnethercote committed Feb 12, 2024
    Configuration menu
    Copy the full SHA
    9f2aa09 View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2024

  1. also try to normalize opaque types in alias-relate

    with this, alias-relate treats all aliases the same way
    and it can be used for structural normalization.
    lcnr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    bbe2f6c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3e3e207 View commit details
    Browse the repository at this point in the history
  3. add revisions

    lcnr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    e5541cf View commit details
    Browse the repository at this point in the history
  4. one must imagine ci happy

    lcnr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    51a1000 View commit details
    Browse the repository at this point in the history
  5. coverage: When merging spans, keep prev and merge curr into it

    Swapping the direction of this merge produces the same results, but means that
    we never need to mutate `curr`.
    Zalathar committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    412c86c View commit details
    Browse the repository at this point in the history
  6. coverage: Don't track curr_original_span explicitly

    Now that we never mutate `curr.span`, we don't need to store its original span
    separately.
    Zalathar committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    5a569b1 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1392f60 View commit details
    Browse the repository at this point in the history
  8. coverage: Split CoverageSpan into several distinct structs

    This requires some extra boilerplate, but in exchange it becomes much easier to
    see how each field and method is actually used.
    Zalathar committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    a618321 View commit details
    Browse the repository at this point in the history
  9. coverage: Move prev_original_span into PrevCovspan

    Now that `prev` has its own dedicated struct, we can store the original span in
    that struct, instead of in a separate field in the refiner.
    Zalathar committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    499609d View commit details
    Browse the repository at this point in the history
  10. coverage: Simplify code for adding prev to pending dups

    If we only check for duplicate spans when `prev` is unmodified, we reduce the
    number of situations that `update_pending_dups` needs to handle.
    
    This could potentially change the coverage spans we produce in some unknown
    corner cases, but none of our current coverage tests indicate any change.
    Zalathar committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    e67db4c View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    14ec3b6 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#114877 - tshepang:patch-1, r=Dylan-DPC

    unstable-book: add quick-edit link
    matthiaskrgr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    f566a25 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#120548 - GuillaumeGomez:glob-reexport-cfg-m…

    …erge, r=GuillaumeGomez
    
    rustdoc: Fix handling of doc_auto_cfg feature for cfg attributes on glob reexport
    
    This is a follow-up of rust-lang#120501 and a part of rust-lang#120487.
    
    r? `@notriddle`
    matthiaskrgr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    5d9c899 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#120549 - lcnr:errs-showcase, r=compiler-errors

    modify alias-relate to also normalize ambiguous opaques
    
    allows a bunch of further cleanups and generally simplifies the type system. To handle rust-lang/trait-system-refactor-initiative#8 we'll have to add a some additional complexity to the `(Alias, Infer)` branches in alias-relate, so removing the opaque type special case here is really valuable.
    
    It does worsen `deduce_closure_signature` and friends even more as they now receive an inference variable which is only constrained via an `AliasRelate` goal. These probably have to look into alias relate goals somehow. Leaving that for a future PR as this is something we'll have to tackle regardless.
    
    r? `@compiler-errors`
    matthiaskrgr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    65ab663 View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#120959 - nnethercote:rm-good_path, r=oli-obk

    Remove good path delayed bugs
    
    Because they're not that useful, and kind of annoying. Details in the individual commits.
    
    r? ```@compiler-errors```
    matthiaskrgr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    93e9579 View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#120978 - Nadrieril:sane-blocks, r=matthewja…

    …sper
    
    match lowering: simplify block creation
    
    Match lowering was doing complicated things with block creation. As far as I can tell it was trying to avoid creating unneeded blocks, but of the three places that start out with `otherwise = &mut None`, two of them called `otherwise.unwrap_or_else(|| self.cfg.start_new_block())` anyway. As far as I can tell the only place where this PR makes a difference is in `lower_match_tree`, which did indeed sometimes avoid creating the unreachable final block + FakeRead. Unless this is important I propose we do the naive thing instead.
    
    I have not checked all the graph isomorphisms by hand, but at a glance the test diff looks sensible.
    
    r? `@matthewjasper`
    matthiaskrgr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    b785fdb View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#121019 - Zalathar:covspans, r=oli-obk

    coverage: Simplify some parts of the coverage span refiner
    
    This is another incremental step on my quest to dismantle the coverage span refiner into something more understandable and maintainable.
    
    The biggest change here is splitting up `CoverageSpan` into several more specific structs. Doing so reveals that most of the places that were using that struct only need a subset of its fields and methods.
    
    We can also get rid of separate tracking of `curr_original_span` and `prev_original_span`, by observing that `curr.span` never actually needs to be mutated, and that we can store `prev_original_span` directly in the dedicated struct for `prev`.
    
    `@rustbot` label +A-code-coverage
    matthiaskrgr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    e36a7f4 View commit details
    Browse the repository at this point in the history
  18. Rollup merge of rust-lang#121021 - GuillaumeGomez:extend-intra-doc-li…

    …nk-chapter, r=notriddle
    
    Extend intra-doc link chapter in the rustdoc book
    
    Linked to rust-lang#117178.
    
    r? `@notriddle`
    matthiaskrgr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    cc171de View commit details
    Browse the repository at this point in the history
  19. Rollup merge of rust-lang#121031 - TimNN:lh-fix-20240213, r=durin42

    RustWrapper: adapt for coverage mapping API changes
    
    There've been a number of changes to the coverage mapping API today, but the end result is that specifying the MCDC parameters is now optional (they've been moved to the end of the argument list and now default to `std::monostate`).
    
    `@rustbot` label: +llvm-main
    
    r? `@durin42`
    matthiaskrgr committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    8dffa39 View commit details
    Browse the repository at this point in the history