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 #111080

Closed
wants to merge 31 commits into from

Commits on Mar 1, 2023

  1. lint/ctypes: ext. abi fn-ptr in internal abi fn

    Instead of skipping functions with internal ABIs, check that the
    signature doesn't contain any fn-ptr types with external ABIs that
    aren't FFI-safe.
    
    Signed-off-by: David Wood <david.wood@huawei.com>
    davidtwco committed Mar 1, 2023
    Configuration menu
    Copy the full SHA
    5dd54fd View commit details
    Browse the repository at this point in the history
  2. abi: avoid ice for non-ffi-safe fn ptrs

    Remove an `unwrap` that assumed FFI-safe types in foreign fn-ptr types.
    
    Signed-off-by: David Wood <david.wood@huawei.com>
    davidtwco committed Mar 1, 2023
    Configuration menu
    Copy the full SHA
    c1dcf26 View commit details
    Browse the repository at this point in the history

Commits on Mar 2, 2023

  1. Configuration menu
    Copy the full SHA
    05c1e6b View commit details
    Browse the repository at this point in the history
  2. lint/ctypes: multiple external fn-ptrs in ty

    Extend previous commit's support for checking for external fn-ptrs in
    internal fn types to report errors for multiple found fn-ptrs.
    
    Signed-off-by: David Wood <david.wood@huawei.com>
    davidtwco committed Mar 2, 2023
    Configuration menu
    Copy the full SHA
    92ae35f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5c34f77 View commit details
    Browse the repository at this point in the history

Commits on Mar 6, 2023

  1. lint/ctypes: check other types for ext. fn-ptr ty

    Extend previous checks for external ABI fn-ptrs to use in internal
    statics, constants, type aliases and algebraic data types.
    
    Signed-off-by: David Wood <david.wood@huawei.com>
    davidtwco committed Mar 6, 2023
    Configuration menu
    Copy the full SHA
    3e7ca3e View commit details
    Browse the repository at this point in the history

Commits on Apr 17, 2023

  1. Configuration menu
    Copy the full SHA
    1a7132d View commit details
    Browse the repository at this point in the history
  2. rustdoc: restructure type search engine to pick-and-use IDs

    This change makes it so, instead of mixing string distance with
    type unification, function signature search works by
    mapping names to IDs at the start, reporting to the user any
    cases where it had to make corrections, and then matches with
    IDs when going through the items.
    
    This only changes function searches. Name searches are left alone,
    and corrections are only done when there's a single item in the
    search query.
    notriddle committed Apr 17, 2023
    Configuration menu
    Copy the full SHA
    4c11822 View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2023

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

Commits on Apr 19, 2023

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

Commits on Apr 20, 2023

  1. Configuration menu
    Copy the full SHA
    e0a7462 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7529d87 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    395840c View commit details
    Browse the repository at this point in the history

Commits on Apr 21, 2023

  1. libtest: add tests for junit output format

    I'm about to make some changes here, and it was making me uneasy to
    modify the output format without test coverage.
    durin42 committed Apr 21, 2023
    Configuration menu
    Copy the full SHA
    d77f636 View commit details
    Browse the repository at this point in the history
  2. junit: also include per-case stdout in xml

    By placing the stdout in a CDATA block we avoid almost all escaping, as
    there's only two byte sequences you can't sneak into a CDATA and you can
    handle that with some only slightly regrettable CDATA-splitting. I've
    done this in at least two other implementations of the junit xml format
    over the years and it's always worked out. The only quirk new to this
    (for me) is smuggling newlines as &#xA; to avoid literal newlines in the
    output.
    durin42 committed Apr 21, 2023
    Configuration menu
    Copy the full SHA
    610f827 View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2023

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

Commits on May 1, 2023

  1. remove pointless FIXME in bootstrap::download

    The suggestion given by `FIXME` to use `CompilerMetadata` for
    `download_toolchain` in `bootstrap::download` can result in more
    confusion. This is because `stamp_key` is not always a date; it
    can also be a commit hash. Additionally, unlike in `download_beta_toolchain`,
    in the `download_ci_rustc` function, `version` and `commit` values
    are calculated separately.
    
    Signed-off-by: ozkanonur <work@onurozkan.dev>
    onur-ozkan committed May 1, 2023
    Configuration menu
    Copy the full SHA
    bc68de9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b540b5f View commit details
    Browse the repository at this point in the history
  3. Rename some suggestion/note functions

    We really shouldn't be naming functions `fn check_*` unless they're
    doing *typechecking*. It's especially misleading when we're doing this
    inside of HIR typeck.
    compiler-errors committed May 1, 2023
    Configuration menu
    Copy the full SHA
    1ca3bdf View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f0e7af4 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b00e5f3 View commit details
    Browse the repository at this point in the history
  6. fix stderrs

    gibbyfree committed May 1, 2023
    Configuration menu
    Copy the full SHA
    c9653a6 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#108611 - davidtwco:issue-94223-external-abi…

    …-fn-ptr-in-internal-abi-fn, r=jackh726
    
    lint/ctypes: ext. abi fn-ptr in internal abi fn
    
    Fixes rust-lang#94223.
    
    - In the improper ctypes lint, instead of skipping functions with internal ABIs, check that the signature doesn't contain any fn-ptr types with external ABIs that aren't FFI-safe.
    - When computing the ABI for fn-ptr types, remove an `unwrap` that assumed FFI-safe types in foreign fn-ptr types.
      - I'm not certain that this is the correct approach.
    matthiaskrgr committed May 1, 2023
    Configuration menu
    Copy the full SHA
    1795530 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#108668 - gibbyfree:stabilizedebuggervisuali…

    …zer, r=wesleywiser
    
    Stabilize debugger_visualizer
    
    This stabilizes the `debugger_visualizer` attribute (rust-lang#95939).
    
    * Marks the `debugger_visualizer` feature as `accepted`.
    * Marks the `debugger_visualizer` attribute as `ungated`.
    * Deletes feature gate test, removes feature gate from other tests.
    
    Closes rust-lang#95939
    matthiaskrgr committed May 1, 2023
    Configuration menu
    Copy the full SHA
    dcef3b7 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#109677 - dpaoliello:rawdylib, r=michaelwoer…

    …ister,wesleywiser
    
    Stabilize raw-dylib, link_ordinal, import_name_type and -Cdlltool
    
    This stabilizes the `raw-dylib` feature (rust-lang#58713) for all architectures (i.e., `x86` as it is already stable for all other architectures).
    
    Changes:
    * Permit the use of the `raw-dylib` link kind for x86, the `link_ordinal` attribute and the `import_name_type` key for the `link` attribute.
    * Mark the `raw_dylib` feature as stable.
    * Stabilized the `-Zdlltool` argument as `-Cdlltool`.
    * Note the path to `dlltool` if invoking it failed (we don't need to do this if `dlltool` returns an error since it prints its path in the error message).
    * Adds tests for `-Cdlltool`.
    * Adds tests for being unable to find the dlltool executable, and dlltool failing.
    * Fixes a bug where we were checking the exit code of dlltool to see if it failed, but dlltool always returns 0 (indicating success), so instead we need to check if anything was written to `stderr`.
    
    NOTE: As previously noted (rust-lang#104218 (comment)) using dlltool within rustc is temporary, but this is not the first time that Rust has added a temporary tool use and argument: rust-lang#104218 (comment)
    
    Big thanks to `@tbu-` for the first version of this PR (rust-lang#104218)
    matthiaskrgr committed May 1, 2023
    Configuration menu
    Copy the full SHA
    ca7717e View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#110371 - notriddle:notriddle/search-correct…

    …ions, r=GuillaumeGomez
    
    rustdoc: restructure type search engine to pick-and-use IDs
    
    Fixes rust-lang#110029
    
    Preview: https://notriddle.com/rustdoc-demo-html-3/search-corrections/std/index.html?search=-%3E%20streaming
    
    ![image](https://user-images.githubusercontent.com/1593513/233494900-ae77d5b4-e395-41f8-bbac-53ee55bb4a76.png)
    
    This change makes it so, instead of mixing string distance with type unification, function signature search works by mapping names to IDs at the start, reporting to the user any cases where it had to make corrections, and then matches with IDs when going through the items.
    
    This only changes function searches. Name searches are left alone, and corrections are only done when there's a single item in the search query.
    matthiaskrgr committed May 1, 2023
    Configuration menu
    Copy the full SHA
    b3261cb View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#110504 - compiler-errors:tweak-borrow-sugg,…

    … r=cjgillot
    
    Tweak borrow suggestion span
    
    Avoids a `span_to_snippet` call when we don't need to surround the expression in parentheses. The fact that the suggestion was using the whole span of the expression rather than just appending a `&` was prevented me from using `// run-rustfix` in another PR (rust-lang#110432 (comment)).
    
    Also some drive-by renames of functions that have been annoying me for a bit.
    matthiaskrgr committed May 1, 2023
    Configuration menu
    Copy the full SHA
    4af1284 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#110651 - durin42:xunit-stdout, r=cuviper

    libtest: include test output in junit xml reports
    
    Fixes rust-lang#110336.
    matthiaskrgr committed May 1, 2023
    Configuration menu
    Copy the full SHA
    35bc61e View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#110946 - RalfJung:tls-realstd, r=m-ou-se

    avoid duplicating TLS state between test std and realstd
    
    This basically re-lands rust-lang#100201 and rust-lang#106638, which got reverted by rust-lang#110861. This works around 2 Miri limitations:
    - Miri doesn't support the magic linker section that our Windows TLS support relies on, and instead knows where in std to find the symbol that stores the thread callback.
    - For macOS, Miri only supports at most one destructor to be registered per thread.
    
    The 2nd would not be very hard to fix (though the intended destructor order is unclear); the first would be a lot of work to fix. Neither of these is a problem for regular Rust code, but in the std test suite we have essentially 2 copies of the std code and then these both become issues. To avoid that we have the std test crate import the TLS code from the real std instead of having its own copy.
    
    r? `@m-ou-se`
    matthiaskrgr committed May 1, 2023
    Configuration menu
    Copy the full SHA
    ffd8460 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#111069 - ozkanonur:remove-pointless-fixme, …

    …r=albertlarsan68
    
    remove pointless `FIXME` in `bootstrap::download`
    
    The suggestion given by `FIXME` to use `CompilerMetadata` for `download_toolchain` in `bootstrap::download` can result in more confusion. This is because `stamp_key` is not always a date; it can also be a commit hash. Additionally, unlike in `download_beta_toolchain`, in the `download_ci_rustc` function, `version` and `commit` values are calculated separately.
    matthiaskrgr committed May 1, 2023
    Configuration menu
    Copy the full SHA
    5945ab8 View commit details
    Browse the repository at this point in the history