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 10 pull requests #122030

Closed
wants to merge 25 commits into from

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
    e71f207 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aa1ab01 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    374607d View commit details
    Browse the repository at this point in the history
  4. typo

    Co-authored-by: bjorn3 <17426603+bjorn3@users.noreply.github.com>
    RalfJung and bjorn3 committed 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. errors: share SilentEmitter between rustc and rustfmt

    Signed-off-by: David Wood <david@davidtw.co>
    davidtwco committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    2ee0409 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    ec24d75 View commit details
    Browse the repository at this point in the history
  8. Add a description field to target definitions

    This is the short description (`64-bit MinGW (Windows 7+)`) including
    the platform requirements.
    
    The reason for doing it like this is that this PR will be quite prone to
    conflicts whenever targets get added, so it should be as simple as
    possible to get it merged. Future PRs which migrate targets are scoped
    to groups of targets, so they will not conflict as they can just touch
    these.
    
    This moves some of the information from the rustc book into the
    compiler.
    It cannot be queried yet, that is future work. It is also future work to
    fill out all the descriptions, which will coincide with the work of
    moving over existing target docs to the new format.
    Noratrieb authored and WaffleLapkin committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    1db67fb View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    8255618 View commit details
    Browse the repository at this point in the history
  10. 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
  11. 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 committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    662fa92 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#121301 - davidtwco:rustfmt-silent-emitter, …

    …r=pnkfelix
    
    errors: share `SilentEmitter` between rustc and rustfmt
    
    Fixes rust-lang/rustfmt#6082.
    
    Shares the `SilentEmitter` between rustc and rustfmt, and gives it a fallback bundle (since it can emit diagnostics in some contexts).
    matthiaskrgr committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    e4da0d3 View commit details
    Browse the repository at this point in the history
  13. 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 committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    5e749bc View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#121829 - nnethercote:dummy-tweaks-2, r=petr…

    …ochenkov
    
    Dummy tweaks (attempt 2)
    
    r? `@petrochenkov`
    matthiaskrgr committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    bc5f8a2 View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#121832 - heiher:loongarch64-musl, r=wesleyw…

    …iser
    
    Add new Tier-3 target: `loongarch64-unknown-linux-musl`
    
    MCP: rust-lang/compiler-team#518
    matthiaskrgr committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    63cd563 View commit details
    Browse the repository at this point in the history
  16. 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 committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    2614564 View commit details
    Browse the repository at this point in the history
  17. 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 committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    46e37e4 View commit details
    Browse the repository at this point in the history
  18. Rollup merge of rust-lang#121905 - Nilstrieb:add-empty-targets, r=dav…

    …idtwco
    
    Add a `description` field to target definitions
    
    Starts addressing rust-lang#121051 (review)
    
    This is the short description (`64-bit MinGW (Windows 7+)`) including the platform requirements.
    
    The reason for doing it like this is that this PR will be quite prone to conflicts whenever targets get added, so it should be as simple as possible to get it merged. Future PRs which migrate targets are scoped to groups of targets, so they will not conflict as they can just touch these.
    
    This moves some of the information from the rustc book into the compiler.
    It cannot be queried yet, that is future work. It is also future work to fill out all the descriptions, which will coincide with the work of moving over existing target docs to the new format.
    
    r? `@davidtwco` but anyone is also free to steal it
    matthiaskrgr committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    6e40eb1 View commit details
    Browse the repository at this point in the history
  19. Rollup merge of rust-lang#122022 - heiher:loongarch-features, r=petro…

    …chenkov
    
    loongarch: add frecipe and relax target feature
    
    This PR adds `frecipe` and `relax` target features to LoongArch:
    
    * frecipe - Support frecipe.{s/d} and frsqrte.{s/d} instructions..
    * relax - Enable Linker relaxation.
    matthiaskrgr committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    eb7a348 View commit details
    Browse the repository at this point in the history
  20. 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 committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    6a4157b View commit details
    Browse the repository at this point in the history