Repository navigation
Rollup of 19 pull requests - #165217
Rollup of 19 pull requests#165217jhpratt wants to merge 45 commits into
Conversation
…` (part 1) The macro is duplicated in each file to allow the diff to compare changes with the previous implementation.
Co-authored-by: Mark Rousskov <mark.simulacrum@gmail.com>
In the `br_string` closure, `s` was non-empty if and only if it was created using `format!`; add the extra space directly in that `format!` invocation.
The langref says that > The first argument is a pointer from which to load a function pointer So whenever we load something that is not a function pointer, we should not use `type_checked_load`
Normalizing a field type can fail during const-eval validation if it contains an unsatisfied projection alias. Fall back to a delayed bug instead of panicking with an ICE, and conservatively assume the field is inhabited.
This avoids depending on LLVM's struct types to determine the size of the array/pointer element. Co-Authored-By: Bee <b@beetr.ee>
… if there's no `dyn Trait` field to point at
…uillaumeGomez,lolbinarycat rustdoc: notable trait badge and popover enhancements Part of rust-lang#45040 Preview ------- https://notriddle.com/rustdoc-html-demo-13/gui-tests/lib2/notable_trait_colors/struct.NotableTraitColors.html Screenshots ----------- <img width="2448" height="1514" alt="image" src="https://github.com/user-attachments/assets/4c65db6f-61cf-4e90-864c-e0c4d7c62ef0" /> <img width="2448" height="1514" alt="image" src="https://github.com/user-attachments/assets/ccb6bda0-7f74-4b7b-964d-88defc09987b" /> <img width="2448" height="1514" alt="image" src="https://github.com/user-attachments/assets/bd766a67-9f45-4207-b260-5c63a489630f" /> --- <img width="2410" height="476" alt="image" src="https://github.com/user-attachments/assets/aa22a598-af10-4076-9382-6b84541e456c" /> <img width="1209" height="346" alt="Screenshot 2026-09-18 at 19 19 03" src="https://github.com/user-attachments/assets/48d69baf-b118-4844-bf1f-d32d6b00e7ce" /> --- <img width="1351" height="981" alt="Screenshot 2026-09-18 at 19 15 02" src="https://github.com/user-attachments/assets/bf84f185-5ab8-476f-85b0-b92805c5ff7c" /> <img width="1351" height="981" alt="Screenshot 2026-09-18 at 19 15 38" src="https://github.com/user-attachments/assets/8300989e-8768-4914-b314-b0c9471d2603" />
Use a macro to reduce duplication in `core/src/num/f{16,32,64,128}.rs` (part 1)
Now there are 4 primitive floating point types, the code for each method/constant is duplicated 4 times, once on each type. This PR begins reducing the duplication by moving the code in `impl f{16,32,64,128}` in `core` into a `float_impl!` macro, similar to the existing `int_impl!` and `uint_impl!` macros (which are used for 6 primitive types each). To reduce merge conflicts and make this easier to review, I'm going to move the items in chunks: this PR just moves the associated constants.
The PR is split into two commits, with the first commit having the macro duplicated in all 4 individual float files so that the diff can compare the macro with the original implementation.
virtual function elimination: only use `type.checked.load` for function pointers tracking issue: rust-lang#68262 fixes rust-lang#164267 The documentation on `@llvm.type.checked.load` says: https://llvm.org/docs/LangRef.html#llvm-type-checked-load-intrinsic > The first argument is a pointer from which to load a function pointer. But we also used it for other kinds of types, causing type mismatches in LLVM IR. So, just use a plain load instead in those cases. This was missed in rust-lang#130734. This also fixes a related bug with `feature(ptr_metadata)`, see https://godbolt.org/z/9d941rhWd. Basically rust-lang#130734 passed an invalid type along, causing an ICE down the line. This example was found by an LLM. r? codegen
Limit lldb string summary length Limits string summaries to the character limit specified by LLDB's summary length setting. Resolves rust-lang#164588
This comment has been minimized.
This comment has been minimized.
Rollup of 19 pull requests try-job: dist-various-1 try-job: test-various try-job: test-x86_64-gnu-aux try-job: test-x86_64-gnu-llvm-21-3 try-job: test-x86_64-msvc-1 try-job: test-aarch64-apple-1 try-job: test-aarch64-apple-2 try-job: test-x86_64-mingw-1 try-job: test-i686-msvc try-job: test-armhf-gnu
|
💔 Test for e8b13fe failed: CI. Failed job:
|
|
A job failed! Check out the build log: (web) (plain enhanced) (plain) Click to see the possible cause of the failure (guessed by this bot) |
|
@bors try jobs=dist-various-1,test-various,test-x86_64-gnu-aux,test-x86_64-msvc-1,test-aarch64-apple-1,test-aarch64-apple-2,test-x86_64-mingw-1,test-i686-msvc,test-armhf-gnu,test-x86_64-gnu-llvm-22-3,test-aarch64-msvc-2 |
This comment has been minimized.
This comment has been minimized.
Rollup of 19 pull requests try-job: dist-various-1 try-job: test-various try-job: test-x86_64-gnu-aux try-job: test-x86_64-msvc-1 try-job: test-aarch64-apple-1 try-job: test-aarch64-apple-2 try-job: test-x86_64-mingw-1 try-job: test-i686-msvc try-job: test-armhf-gnu try-job: test-x86_64-gnu-llvm-22-3 try-job: test-aarch64-msvc-2
|
The job Click to see the possible cause of the failure (guessed by this bot) |
|
@bors try jobs=test-aarch64-apple-2 |
Rollup of 19 pull requests try-job: test-aarch64-apple-2
This comment has been minimized.
This comment has been minimized.
|
The job Click to see the possible cause of the failure (guessed by this bot) |
|
💔 Test for 59c1438 failed: CI. Failed job:
|
|
⌛ Testing commit 82f7da8 with merge 26c536c... Workflow: https://github.com/rust-lang/rust/actions/runs/41195759796 |
Rollup of 19 pull requests Successful merges: - #160370 (rustdoc: notable trait badge and popover enhancements) - #163410 (Use a macro to reduce duplication in `core/src/num/f{16,32,64,128}.rs` (part 1)) - #164290 (virtual function elimination: only use `type.checked.load` for function pointers) - #165113 (Limit lldb string summary length) - #165146 (Stop using LLVM struct types for array/pointer offset GEPs (rebase)) - #165197 (Inline usages of `is_doc_keyword_or_attribute` and `is_rustc_doc_primitive`) - #165209 (Don't ICE when making diagnostic in `point_at_dyn_trait_in_field_def` if there's no `dyn Trait` field to point at) - #153633 (feat: improve `Cell` doc) - #164686 (Add regression test for new solver hang on cyclic projection bound) - #164937 (Add example for misaligned elements in `subslice_range`) - #164981 (Reflection add TypeId::name) - #165035 (Suggest `gca!` for path const args that use generic params) - #165106 (Windows: Disallow some special chars in bat script names) - #165120 (Add regression test for overlap check hang with unresolved type in where clause) - #165158 (Tiny optimization to `TypeErrCtxt::report_inference_failure()`) - #165184 (GCI: Check where-clauses of associated constants for well-formedness) - #165190 (Improve delayed bug comment and message on first_method_vtable_slot) - #165196 (inhabitedness: use try_normalize_erasing_regions on ADT fields) - #165206 (tests: clarify dead_code_pub_in_binary FIXME after Cargo workaround)
|
@bors yield |
|
Auto build was cancelled. Cancelled workflows: The next pull request likely to be tested is #165234. |
…uwer Rollup of 22 pull requests Successful merges: - #164851 (Add behavior tests for `Arc` and `Rc`) - #164989 (rustdoc: Fix performance regression for private documented items) - #165079 (Remove GenericArgRef) - #161781 (Don't emit InlineAsm terminator if input operand is `!`.) - #162754 (optimize large elements for slice rotating) - #163252 (Remove windows-targets dependency from the root workspace) - #163839 (Fix the floating point clobbers of RISC-V `clobber_abi`) - #165104 (Use getrandom instead of /scheme/rand on Redox OS) - #165132 (Implement `advance_back_by` on `Fuse`) - #165142 (Remove the unused generic Graphviz writer) - #165233 (Remove test-aarch64-apple-* jobs temporarily) - #163371 (Don't suggest replacing foreign format specifiers in `concat!` output) - #163802 (fix RegionEq direction in canonical query responses) - #163986 (omit unconditionally invoking crate level limits query) - #164920 (Point at prior token on `let` when expression is expected) - #164987 (use adt_async_drop_tys for nested ADTs in needs_async_drop) - #165061 (Use a fixed-length encoding for hash disambiguators in v0 symbols) - #165114 (use native interpreter impl for funnel shifts intrinsics) - #165119 (remove unnecessary fast path from borrowck) - #165122 (fix MaybeDangling validity logic for ZST at usize::MAX) - #165128 (Move `doc(keyword)` and `doc(attribute)` attributes checks from `rustc_passes` to `rustc_attr_parsing`) - #165129 (Fix ICE in prelude edition lint) > [!WARNING] > This rollup conflicts with pending auto build #165217 and may need to be recreated if the pending build succeeds.
|
☔ The latest upstream changes (presumably #165234) made this pull request unmergeable. Please resolve the merge conflicts by rebasing. This pull request was unapproved. |
|
PR #165184, which is a member of this rollup, was unapproved. |
|
PR #160370, which is a member of this rollup, changed its commit SHA to This rollup was closed. |
Successful merges:
core/src/num/f{16,32,64,128}.rs(part 1) #163410 (Use a macro to reduce duplication incore/src/num/f{16,32,64,128}.rs(part 1))type.checked.loadfor function pointers #164290 (virtual function elimination: only usetype.checked.loadfor function pointers)is_doc_keyword_or_attributeandis_rustc_doc_primitive#165197 (Inline usages ofis_doc_keyword_or_attributeandis_rustc_doc_primitive)point_at_dyn_trait_in_field_defif there's nodyn Traitfield to point at #165209 (Don't ICE when making diagnostic inpoint_at_dyn_trait_in_field_defif there's nodyn Traitfield to point at)Celldoc #153633 (feat: improveCelldoc)subslice_range#164937 (Add example for misaligned elements insubslice_range)gca!for path const args that use generic params #165035 (Suggestgca!for path const args that use generic params)TypeErrCtxt::report_inference_failure()#165158 (Tiny optimization toTypeErrCtxt::report_inference_failure())r? @ghost
Create a similar rollup