Rollup of 6 pull requests - #161686
Closed
JonathanBrouwer wants to merge 36 commits into
Closed
Conversation
The linker used by MinGW now works with ar_archive_writer generated short import libraries too.
LLVM 24 stopped using llvm::Any here to avoid heap allocations in PassInstrumentation.
The essential problem is that, with this table: ```text one | ----| a | b | c a | b | a | b a | ``` And this logic: ```rust let too_many_pipes = divider_count > expected_cells + 1; ``` `expected_cells + 1` winds up as 2, so you get this warning: ```text error: unused content after last table cell --> $DIR/invalid_markdown_table.rs:81:14 | LL | //! a | b | c | ^^^^^^ this content is discarded error: unused content after last table cell --> $DIR/invalid_markdown_table.rs:83:14 | LL | //! a | b | | ^^^^ this content is discarded error: unused content after last table cell --> $DIR/invalid_markdown_table.rs:85:14 | LL | //! a | b | ^^ this content is discarded ``` We really want our warning to give the suggest-escaping flow, like this: ```text error: table row has too many columns --> $DIR/invalid_markdown_table.rs:81:13 | LL | //! a | b | c | ^ any content after this column divider is discarded | = help: to escape `|` characters in tables, add a `\` before them like `\|` error: table row has too many columns --> $DIR/invalid_markdown_table.rs:83:13 | LL | //! a | b | | ^ any content after this column divider is discarded | = help: to escape `|` characters in tables, add a `\` before them like `\|` error: unused content after last table cell --> $DIR/invalid_markdown_table.rs:85:14 | LL | //! a | b | ^^ this content is discarded ``` By only scanning the text between the end of the last cell and the row, instead of doing the entire row, we don't have to re-implement as much of pulldown-cmark's logic.
The reason `rustc_ast_ir` and `rustc_pattern_analysis` have nested `cfg_attr`s is so that they don't mention `cfg(bootstrap)` when nightly or rustc cargo feature turned on. If you don't do it like that, they stop compiling on stable (or rather, they emit unexpected cfg warnings...).
??? why wasn't this detected by compiletest ???
… r=JonathanBrouwer stabilize never type ### This PR - stabilizes the [never type](https://doc.rust-lang.org/stable/std/primitive.never.html) (aka `!`) (!!!) - sets the [never type fallback](https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html) to `!` on all editions (breaking change, see [crater report analysis](rust-lang#155499 (comment)) and [refresher on never type fallback](rust-lang#155499 (comment))) - makes `Infallible` an alias to `!` - removes `dependency_on_unit_never_type_fallback` lint (there is no more never type fallback to `()` so this lint can't be triggered) ### Cat <img width="1024" height="683" alt="52270233795_5979a3174d_b" src="https://github.com/user-attachments/assets/f6b4737e-32ef-4c33-86b2-76b81673cf20" /> ### Tracking - rust-lang#35121 - rust-lang#148922 ### FCPs - rust-lang#123508 (comment) (stabilization plan, T-lang) - rust-lang#155499 (comment) (never type stabilization modulo bugs, T-lang) - rust-lang#155924 (comment) (make `Infallible = !`, T-libs) ### Related changes - Lint bump: rust-lang#141937 - Rust 2024 edition change: - rust-lang#123748 - rust-lang#123508 - Various changes to lessen the effect of the breaking changes: - rust-lang#157820 - rust-lang#156047 - rust-lang#160705 - Never type documentation changes: rust-lang#158370 (blocked on this pr) ### Experiments - Fallback change and never type stabilization: - Run: rust-lang#155499 (comment) - Analysis: rust-lang#155499 (comment) - Status of backports: rust-lang#155499 (comment) - Fallback change, never type stabilization and making `Infallible = !`: rust-lang#155500 - Fallback change, never type stabilization, making `Infallible = !`, and removing reservation impl: rust-lang#155501 - Never type stabilization and `Infallible = !` change, _without_ fallback change: rust-lang#155657 --- Closes rust-lang#35121 Closes rust-lang#148922
add crashtests [6/N] Followup to rust-lang#161166. [Link to issue list.](https://github.com/rust-lang/rust/issues?q=is:issue%20state:open%20label:I-ICE%20label:S-has-mcve%20sort:created-asc%20AND%20(%20138262%20OR%20142155%20OR%20144241%20OR%20149562%20OR%20152414%20OR%20152416%20OR%20152626%20OR%20154903%20OR%20154963%20OR%20155053%20OR%20156101%20OR%20156288%20))
Only use dlltool.exe on MinGW if -Cdlltool is passed The linker used by MinGW now works with ar_archive_writer generated short import libraries too. Implements rust-lang/compiler-team#1029 r? @mati865
…able_cell, r=Urgau,notriddle,camelid Add new `invalid_markdown_table` rustdoc lint Fixes rust-lang#159186. r? @Urgau
…=cuviper PassWrapper: handle LLVM 24 change in function types LLVM 24 stopped using llvm::Any here [to avoid heap allocations](llvm/llvm-project@fa23198) in PassInstrumentation. @rustbot label: +llvm-main
…re, r=ChrisDenton Don't treat slashes as path seps after drive letters in verbatim paths Treat slashes as just a regular character in `\\?\C:/path\somewhere`. This mirrors how slashes are treated afterwards, e.g. in `\\?\C:\path/somewhere`, which has a component `path/somewhere`, rather than `path`, `somewhere`. Likewise, drive letters followed by `/` do not denote a `VerbatimDisk`, but an arbitrary `Verbatim` path: The prefix of `\\?\C:/path\somewhere` is `\\?\C:/path`. Fixes rust-lang#161651
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Successful merges:
invalid_markdown_tablerustdoc lint #159583 (Add newinvalid_markdown_tablerustdoc lint)r? @ghost
Create a similar rollup