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 7 pull requests #103398

Merged
merged 16 commits into from
Oct 22, 2022
Merged

Rollup of 7 pull requests #103398

merged 16 commits into from
Oct 22, 2022

Commits on Oct 2, 2022

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

Commits on Oct 19, 2022

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

Commits on Oct 20, 2022

  1. Copy of rust-lang#102941.

    finnbear committed Oct 20, 2022
    Configuration menu
    Copy the full SHA
    f81cd87 View commit details
    Browse the repository at this point in the history
  2. Put fn in the right place.

    finnbear committed Oct 20, 2022
    Configuration menu
    Copy the full SHA
    4f44d62 View commit details
    Browse the repository at this point in the history

Commits on Oct 21, 2022

  1. Configuration menu
    Copy the full SHA
    9b67910 View commit details
    Browse the repository at this point in the history
  2. Argument type for mutable with_metadata_of (rust-lang#75091)

    The method takes two pointer arguments: one `self` supplying the pointer
    value, and a second pointer supplying the metadata.
    
    The new parameter type more clearly reflects the actual requirements.
    The provenance of the metadata parameter is disregarded completely.
    Using a mutable pointer in the call site can be coerced to a const
    pointer while the reverse is not true.
    
    An example of the current use:
    
    ```rust
    // Manually taking an unsized object from a `ManuallyDrop` into another allocation.
    let val: &core::mem::ManuallyDrop<T> = …;
    
    let ptr = val as *const _ as *mut T;
    let ptr = uninit.as_ptr().with_metadata_of(ptr);
    ```
    
    This could then instead be simplified to:
    
    ```rust
    // Manually taking an unsized object from a `ManuallyDrop` into another allocation.
    let val: &core::mem::ManuallyDrop<T> = …;
    
    let ptr = uninit.as_ptr().with_metadata_of(&**val);
    ```
    Andreas Molzer committed Oct 21, 2022
    Configuration menu
    Copy the full SHA
    71c39de View commit details
    Browse the repository at this point in the history
  3. Reduce mutability in std-use of with_metadata_of

    Andreas Molzer committed Oct 21, 2022
    Configuration menu
    Copy the full SHA
    e3606b2 View commit details
    Browse the repository at this point in the history
  4. Reduce false positives in msys2 detection

    This checks that:
    
    * the handle is a pipe
    * the pipe's file name starts with "msys-" or "cygwin-" rather than looking in the full path.
    ChrisDenton committed Oct 21, 2022
    Configuration menu
    Copy the full SHA
    d7b0bcb View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2022

  1. Configuration menu
    Copy the full SHA
    3d7b1f0 View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#102602 - WaffleLapkin:linty_action, r=estebank

    Slightly tweak comments wrt `lint_overflowing_range_endpoint`
    
    From the review: rust-lang#101986 (comment)
    
    It _seemed_ that the lint was not emitted when the `if` check failed, but _actually_ this happens already in a special case and the lint is emitted outside of this function, if this function doesn't. I've cleared up the code/comments a bit, so it's more obvious :)
    
    r? ```@estebank```
    Dylan-DPC authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    16c3b64 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#103190 - fmease:rustdoc-render-bounds-of-cr…

    …oss-crate-gat-params, r=GuillaumeGomez
    
    rustdoc: render bounds of cross-crate GAT params
    
    Follow-up to rust-lang#102439.
    Render the trait bounds of type parameters of cross-crate (generic) associated types.
    
    `````@rustbot````` label T-rustdoc A-cross-crate-reexports
    r? `````@GuillaumeGomez`````
    Dylan-DPC authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    988153c View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#103224 - compiler-errors:semi-after-closure…

    …-in-macro, r=fee1-dead
    
    Allow semicolon after closure within parentheses in macros
    
    rust-lang#88546 added some parsing logic that if we're parsing a closure, and we're within parentheses, and a semicolon follows, then we must be parsing something erroneous like: `f(|| a; b)`, so it replaces the closure body with an error expression. However, it's valid to parse those tokens if we're within a macro, as in rust-lang#103222.
    
    This is a bit unsatisfying fix. Is there a more robust way of checking that we're within a macro?
    
    I would also be open to removing this "_It is likely that the closure body is a block but where the braces have been removed_" check altogether at the expense of more verbose errors, since it seems very suspicious in the first place...
    
    Fixes rust-lang#103222.
    Dylan-DPC authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    ada5011 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#103280 - finnbear:impl_string_leak_2, r=jos…

    …htriplett
    
    (rust-lang#102929) Implement `String::leak` (attempt 2)
    
    Implementation of `String::leak` (rust-lang#102929)
    
    ACP: rust-lang/libs-team#109
    
    Supersedes rust-lang#102941 (see previous reviews there)
    
    ```@rustbot``` label +T-libs-api -T-libs
    Dylan-DPC authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    141478b View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#103329 - saethlin:nonnull-precondition, r=t…

    …homcc
    
    Add a forgotten check for NonNull::new_unchecked's precondition
    
    Looks like I forgot this function a while ago in rust-lang#92686
    
    r? ```@thomcc```
    Dylan-DPC authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    3f49f95 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#103346 - HeroicKatora:metadata_of_const_poi…

    …nter_argument, r=dtolnay
    
    Adjust argument type for mutable with_metadata_of (rust-lang#75091)
    
    The method takes two pointer arguments: one `self` supplying the pointer value, and a second pointer supplying the metadata.
    
    The new parameter type more clearly reflects the actual requirements. The provenance of the metadata parameter is disregarded completely. Using a mutable pointer in the call site can be coerced to a const pointer while the reverse is not true.
    
    In some cases, the current parameter type can thus lead to a very slightly confusing additional cast. [Example](HeroicKatora/static-alloc@cad9377).
    
    ```rust
    // Manually taking an unsized object from a `ManuallyDrop` into another allocation.
    let val: &core::mem::ManuallyDrop<T> = …;
    
    let ptr = val as *const _ as *mut T;
    let ptr = uninit.as_ptr().with_metadata_of(ptr);
    ```
    
    This could then instead be simplified to:
    
    ```rust
    // Manually taking an unsized object from a `ManuallyDrop` into another allocation.
    let val: &core::mem::ManuallyDrop<T> = …;
    
    let ptr = uninit.as_ptr().with_metadata_of(&**val);
    ```
    
    Tracking issue: rust-lang#75091
    
    ``@dtolnay`` you're reviewed rust-lang#95249, would you mind chiming in?
    Dylan-DPC authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    b22559f View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#103360 - ChrisDenton:isterm-filetype, r=thomcc

    Reduce false positives in msys2 detection
    
    Currently msys2 will be detected by getting the file path and looking to see if it contains the substrings "msys-" and "-ptr" (or "cygwin-" and "-pty"). This risks false positives, especially with filesystem files and if `GetFileInformationByHandleEx` returns a [full path](https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/ntifs/nf-ntifs-ntqueryinformationfile#remarks).
    
    This PR adds a check to see if the handle is a pipe before doing the substring search. Additionally, for "msys2-" or "cygwin-" it only checks if the file name starts with the substring rather than looking at the whole path.
    Dylan-DPC authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    b453694 View commit details
    Browse the repository at this point in the history