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 9 pull requests #122045

Merged
merged 21 commits into from
Mar 6, 2024
Merged

Rollup of 9 pull requests #122045

merged 21 commits into from
Mar 6, 2024

Commits on Mar 1, 2024

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

Commits on Mar 2, 2024

  1. Configuration menu
    Copy the full SHA
    374607d View commit details
    Browse the repository at this point in the history
  2. typo

    Co-authored-by: bjorn3 <17426603+bjorn3@users.noreply.github.com>
    RalfJung and bjorn3 authored Mar 2, 2024
    Configuration menu
    Copy the full SHA
    d858809 View commit details
    Browse the repository at this point in the history

Commits on Mar 5, 2024

  1. Configuration menu
    Copy the full SHA
    4dbd256 View commit details
    Browse the repository at this point in the history
  2. doc wording improvements

    Co-authored-by: Simon Farnsworth <simon@farnz.org.uk>
    CAD97 and farnz committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    215a4b6 View commit details
    Browse the repository at this point in the history
  3. Decouple DummyAstNode and DummyResult.

    They are two different ways of creating dummy results, with two
    different purposes. Their implementations are separate except for
    crates, where `DummyResult` depends on `DummyAstNode`.
    
    This commit removes that dependency, so they are now fully separate. It
    also expands the comment on `DummyAstNode`.
    nnethercote committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    b5d7da8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a9dff2d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c98be32 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    960dd38 View commit details
    Browse the repository at this point in the history
  7. Change some attributes to only_local.

    Modified according to rust-lang/compiler-team#505.
    surechen committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    8dd126d View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    f391c07 View commit details
    Browse the repository at this point in the history
  9. Remove some dead code

    drop_in_place has been a lang item, not an intrinsic, for forever
    oli-obk committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    5a16aeb View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#121065 - CAD97:display-i18n, r=cuviper

    Add basic i18n guidance for `Display`
    
    I've tried to be relatively noncommittal here. The part I think is most important is to mention the concept of "display adapters" *somewhere* in the `std::fmt` documentation that has some chance of being discovered when people go looking for ways to provide context when `Display`ing their type.
    
    Rendered:
    
    > ### Internationalization
    >
    > Because a type can only have one `Display` implementation, it is often preferable to only implement `Display` when there is a single most "obvious" way that values can be formatted as text. This could mean formatting according to the "invariant" culture and "undefined" locale, or it could mean that the type display is designed for a specific culture/locale, such as developer logs.
    >
    > If not all values have a justifiably canonical textual format or if you want to support alternative formats not covered by the standard set of possible [formatting traits], the most flexible approach is display adapters: methods like [`str::escape_default`] or [`Path::display`] which create a wrapper implementing `Display` to output the specific display format.
    >
    > [formatting traits]: https://doc.rust-lang.org/nightly/std/fmt/index.html#formatting-traits
    > [`str::escape_default`]: https://doc.rust-lang.org/nightly/std/primitive.str.html#method.escape_default
    > [`Path::display`]: https://doc.rust-lang.org/nightly/std/path/struct.Path.html#method.display
    
    The module docs do already have a [localization header](https://doc.rust-lang.org/nightly/std/fmt/index.html#localization), so maybe this header should be l10n instead of i18n, or maybe this information should live under that header? I'm not sure, but here on the `Display` trait at least isn't a *bad* spot to put it.
    
    The other side of this that comes up a lot is `FromStr` compatibility, but that's for a different PR.
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    49ff95d View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#121744 - oli-obk:eager_opaque_checks2, r=lcnr

    Stop using Bubble in coherence and instead emulate it with an intercrate check
    
    r? `````@compiler-errors`````
    
    This change is kinda funny, because all I've done is reimplement `Bubble` behaviour for coherence without using `Bubble` explicitly.
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    e2e8405 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#121829 - nnethercote:dummy-tweaks-2, r=petr…

    …ochenkov
    
    Dummy tweaks (attempt 2)
    
    r? `````@petrochenkov`````
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    0783a63 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#121857 - compiler-errors:async-closure-sign…

    …ature-deduction, r=oli-obk
    
    Implement async closure signature deduction
    
    Self-explanatory from title.
    
    Regarding the interaction between signature deduction, fulfillment, and the new trait solver: I'm not worried about implementing closure signature deduction here because:
    
    1. async closures are unstable, and
    2. I'm reasonably confident we'll need to support signature deduction in the new solver somehow (i.e. via proof trees, which seem very promising).
    
    This is in contrast to rust-lang#109338, which was closed because it generalizes signature deduction for a *stable* kind of expression (`async {}` blocks and `Future` traits), and which proliferated usage may pose a stabilization hazard for the new solver.
    
    I'll be certain to make sure sure we revisit the closure signature deduction problem by the time that async closures are being stabilized (which isn't particularly soon) (edit: Put it into the async closure tracking issue). cc `````@lcnr`````
    
    r? `````@oli-obk`````
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    2875b10 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#121894 - RalfJung:const_eval_select, r=oli-obk

    const_eval_select: make it safe but be careful with what we expose on stable for now
    
    As this is all still nightly-only I think `````@rust-lang/wg-const-eval````` can do that without involving t-lang.
    
    r? `````@oli-obk`````
    Cc `````@Nilstrieb````` -- the updated version of your RFC would basically say that we can remove these comments about not making behavior differences visible in stable `const fn`
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    327842b View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#122014 - surechen:change_attributes_to_loca…

    …l_20240304, r=lcnr
    
    Change some attributes to only_local.
    
    Modified according to rust-lang/compiler-team#505.
    
    r? ``@lcnr``
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    c1bb406 View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#122016 - RalfJung:will_wake, r=dtolnay

    will_wake tests fail on Miri and that is expected
    
    Follow-up to rust-lang#121622
    r? ```@cuviper``` ```@dtolnay```
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    0760433 View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#122018 - RalfJung:box-custom-alloc, r=oli-obk

    only set noalias on Box with the global allocator
    
    As discovered in rust-lang/miri#3341, `noalias` and custom allocators don't go well together.
    
    rustc can now check whether a Box uses the global allocator. This replaces the previous ad-hoc and rather unprincipled check for a zero-sized allocator.
    
    This is the rustc part of fixing that; Miri will also need a patch.
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    b08837f View commit details
    Browse the repository at this point in the history
  18. Rollup merge of rust-lang#122028 - oli-obk:drop_in_place_leftovers, r…

    …=compiler-errors
    
    Remove some dead code
    
    drop_in_place has been a lang item, not an intrinsic, for forever
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    4f73d2a View commit details
    Browse the repository at this point in the history