{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":724712,"defaultBranch":"master","name":"rust","ownerLogin":"rust-lang","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2010-06-16T20:39:03.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/5430905?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716682659.0","currentOid":""},"activityList":{"items":[{"before":"caa187f3bc9604c78dfbc3ffabbe1372cb528639","after":"32a3ed229caaaa6476ee1b0e644dd53579454536","ref":"refs/heads/master","pushedAt":"2024-05-30T07:59:06.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125671 - BoxyUwU:remove_const_ty_eq, r=compiler-errors\n\nDo not equate `Const`'s ty in `super_combine_const`\n\nFixes #114456\n\nIn #125451 we started relating the `Const`'s tys outside of a probe so it was no longer simply an assertion to catch bugs.\n\nThis was done so that when we _do_ provide a wrongly typed const argument to an item if we wind up relating it with some other instantiation we'll have a `TypeError` we can bubble up and taint the resulting mir allowing const eval to skip evaluation.\n\nIn this PR I instead change `ConstArgHasType` to correctly handle checking the types of const inference variables. Previously if we had something like `impl Trait for [(); N]`, when using the impl we would instantiate it with infer vars and then check that `?x: u32` is of type `u32` and succeed. Then later we would infer `?x` to some `Const` of type `usize`.\n\nWe now stall on `?x` in `ConstArgHasType` until it has a concrete value that we can determine the type of. This allows us to fail using the erroneous implementation of `Trait` which allows us to taint the mir.\n\nLong term we intend to remove the `ty` field on `Const` so we would have no way of accessing the `ty` of a const inference variable anyway and would have to do this. I did not fully update `ConstArgHasType` to avoid using the `ty` field as it's not entirely possible right now- we would need to lookup `ConstArgHasType` candidates in the env.\n\n---\n\nAs for _why_ I think we should do this, relating the types of const's is not necessary for soundness of the type system. Originally this check started off as a plain `==` in `super_relate_consts` and gradually has been growing in complexity as we support more complicated types. It was never actually required to ensure that const arguments are correctly typed for their parameters however.\n\nThe way we currently check that a const argument has the correct type is a little convoluted and confusing (and will hopefully be less weird as time goes on). Every const argument has an anon const with its return type set to type of the const parameter it is an argument to. When type checking the anon const regular type checking rules require that the expression is the same type as the return type. This effectively ensure that no matter what every const argument _always_ has the correct type.\n\nAn extra bit of complexity is that during `hir_ty_lowering` we do not represent everything as a `ConstKind::Unevaluated` corresponding to the anon const. For generic parameters i.e. `[(); N]` we simply represent them as `ConstKind::Param` as we do not want `ConstKind::Unevaluated` with generic substs on stable under min const generics. The anon const still gets type checked resulting in errors about type mismatches.\n\nEventually we intend to not create anon consts for all const arguments (for example for `ConstKind::Param`) and instead check that the argument type is correct via `ConstArgHasType` obligations (these effectively also act as a check that the anon consts have the correctly set return type).\n\nWhat this all means is that the the only time we should ever have mismatched types when relating two `Const`s is if we have messed up our logic for ensuring that const arguments are of the correct type. Having this not be an assert is:\n- Confusing as it may incorrectly lead people to believe this is an important check that is actually required\n- Opens the possibility for bugs or behaviour reliant on this (unnecessary) check existing\n\n---\n\nThis PR makes two tests go from pass->ICE (`generic_const_exprs/ice-125520-layout-mismatch-mulwithoverflow.rs` and `tests/crashes/121858.rs`). This is caused by the fact that we evaluate anon consts even if their where clauses do not hold and is a pre-existing issue and only affects `generic_const_exprs`. I am comfortable exposing the brokenness of `generic_const_exprs` more with this PR\n\nThis PR makes a test go from ICE->pass (`const-generics/issues/issue-105821.rs`). I have no idea why this PR affects that but I believe that ICE is an unrelated issue to do with the fact that under `generic_const_exprs`/`adt_const_params` we do not handle lifetimes in const parameter types correctly. This PR is likely just masking this bug.\n\nNote: this PR doesn't re-introduce the assertion that the two consts' tys are equal. I'm not really sure how I feel about this but tbh it has caused more ICEs than its found lately so :woman_shrugging:\n\nr? `@oli-obk` `@compiler-errors`","shortMessageHtmlLink":"Auto merge of #125671 - BoxyUwU:remove_const_ty_eq, r=compiler-errors"}},{"before":"23ea77b8edc902f4a90cda62af66f8b300e5de54","after":"caa187f3bc9604c78dfbc3ffabbe1372cb528639","ref":"refs/heads/master","pushedAt":"2024-05-30T02:59:25.000Z","pushType":"push","commitsCount":25,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125744 - fmease:rollup-ky7d098, r=fmease\n\nRollup of 7 pull requests\n\nSuccessful merges:\n\n - #125653 (Migrate `run-make/const-prop-lint` to `rmake.rs`)\n - #125662 (Rewrite `fpic`, `simple-dylib` and `issue-37893` `run-make` tests in `rmake.rs` or ui test format)\n - #125699 (Streamline `x fmt` and improve its output)\n - #125701 ([ACP 362] genericize `ptr::from_raw_parts`)\n - #125723 (Migrate `run-make/crate-data-smoke` to `rmake.rs`)\n - #125733 (Add lang items for `AsyncFn*`, `Future`, `AsyncFnKindHelper`'s associated types)\n - #125734 (ast: Revert a breaking attribute visiting order change)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of #125744 - fmease:rollup-ky7d098, r=fmease"}},{"before":"debd22da66cfa97c74040ebf68e420672ac8560e","after":"23ea77b8edc902f4a90cda62af66f8b300e5de54","ref":"refs/heads/master","pushedAt":"2024-05-30T00:48:39.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125702 - workingjubilee:tell-tidy-about-csky, r=nikic\n\nGive tidy the good news about C-SKY\n\nIt seems this was overlooked in https://github.com/rust-lang/rust/pull/125472 because we don't test C-SKY much yet.\n\nFixes #125697\n\nr? `@erikdesjardins`","shortMessageHtmlLink":"Auto merge of #125702 - workingjubilee:tell-tidy-about-csky, r=nikic"}},{"before":"e9b7aa08f7cd890dcebd36c198193707d5cd3770","after":"debd22da66cfa97c74040ebf68e420672ac8560e","ref":"refs/heads/master","pushedAt":"2024-05-29T22:18:52.000Z","pushType":"push","commitsCount":22,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125732 - matthiaskrgr:rollup-bozbtk3, r=matthiaskrgr\n\nRollup of 7 pull requests\n\nSuccessful merges:\n\n - #124655 (Add `-Zfixed-x18`)\n - #125693 (Format all source files in `tests/coverage/`)\n - #125700 (coverage: Avoid overflow when the MC/DC condition limit is exceeded)\n - #125705 (Reintroduce name resolution check for trying to access locals from an inline const)\n - #125708 (tier 3 target policy: clarify the point about producing assembly)\n - #125715 (remove unneeded extern crate in rmake test)\n - #125719 (Extract coverage-specific code out of `compiletest::runtest`)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of #125732 - matthiaskrgr:rollup-bozbtk3, r=matthiaskrgr"}},{"before":"a83f933a9da258cf037e3cab37cd486bfd861a7d","after":"e9b7aa08f7cd890dcebd36c198193707d5cd3770","ref":"refs/heads/master","pushedAt":"2024-05-29T20:10:03.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125613 - ChrisDenton:windows-recipie, r=jieyouxu\n\nUse `rmake` for `windows-` run-make tests\n\nConvert some Makefile tests to recipes.\n\nI renamed \"issue-85441\" to \"windows-ws2_32\" as I think it's slightly more descriptive. EDIT: `llvm-readobj` seems to work for reading DLL imports so I've used that instead of `objdump`.\n\ncc #121876","shortMessageHtmlLink":"Auto merge of #125613 - ChrisDenton:windows-recipie, r=jieyouxu"}},{"before":"f2e1a3a80ae54734e1a3d306f31c2caebb05de9b","after":"a83f933a9da258cf037e3cab37cd486bfd861a7d","ref":"refs/heads/master","pushedAt":"2024-05-29T16:37:07.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125531 - surechen:make_suggestion_for_note_like_drop_lint, r=Urgau\n\nMake lint: `lint_dropping_references` `lint_forgetting_copy_types` `lint_forgetting_references` give suggestion if possible.\n\nThis is a follow-up PR of #125433. When it's merged, I want change lint `dropping_copy_types` to use the same `Subdiagnostic` struct `UseLetUnderscoreIgnoreSuggestion` which is added in this PR.\n\nHi, Thank you(`@Urgau` ) again for your help in the previous PR. If your time permits, please also take a look at this one.\n\nr? compiler\n\n","shortMessageHtmlLink":"Auto merge of #125531 - surechen:make_suggestion_for_note_like_drop_l…"}},{"before":"4cf5723dbe471ef0a32857b968b91498551f5e38","after":"f2e1a3a80ae54734e1a3d306f31c2caebb05de9b","ref":"refs/heads/master","pushedAt":"2024-05-29T14:04:25.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125360 - RalfJung:packed-field-reorder, r=fmease\n\ndon't inhibit random field reordering on repr(packed(1))\n\n`inhibit_struct_field_reordering_opt` being false means we exclude this type from random field shuffling. However, `packed(1)` types can still be shuffled! The logic was added in https://github.com/rust-lang/rust/pull/48528 since it's pointless to reorder fields in packed(1) types (there's no padding that could be saved) -- but that shouldn't inhibit `-Zrandomize-layout` (which did not exist at the time).\n\nWe could add an optimization elsewhere to not bother sorting the fields for `repr(packed)` types, but I don't think that's worth the effort.\n\nThis *does* change the behavior in that we may now reorder fields of `packed(1)` structs (e.g. if there are niches, we'll try to move them to the start/end, according to `NicheBias`). We were always allowed to do that but so far we didn't. Quoting the [reference](https://doc.rust-lang.org/reference/type-layout.html):\n\n> On their own, align and packed do not provide guarantees about the order of fields in the layout of a struct or the layout of an enum variant, although they may be combined with representations (such as C) which do provide such guarantees.","shortMessageHtmlLink":"Auto merge of #125360 - RalfJung:packed-field-reorder, r=fmease"}},{"before":"5870f1ccbbb2661c92cdc356231386210a64d723","after":"4cf5723dbe471ef0a32857b968b91498551f5e38","ref":"refs/heads/master","pushedAt":"2024-05-29T11:56:05.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125695 - RalfJung:fn_arg_sanity_check, r=jieyouxu\n\nfn_arg_sanity_check: fix panic message\n\nThe `\\n` inside a raw string doesn't actually make a newline...","shortMessageHtmlLink":"Auto merge of #125695 - RalfJung:fn_arg_sanity_check, r=jieyouxu"}},{"before":"751691271d76b8435559200b84d1947c2bd735bd","after":"5870f1ccbbb2661c92cdc356231386210a64d723","ref":"refs/heads/master","pushedAt":"2024-05-29T08:23:58.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125433 - surechen:fix_125189, r=Urgau\n\nA small diagnostic improvement for dropping_copy_types\n\nFor a value `m` which implements `Copy` trait, `drop(m);` does nothing.\nWe now suggest user to ignore it by a abstract and general note: `let _ = ...`.\nI think we can give a clearer note here: `let _ = m;`\n\nfixes #125189\n\n","shortMessageHtmlLink":"Auto merge of #125433 - surechen:fix_125189, r=Urgau"}},{"before":"da159eb331b27df528185c616b394bb0e1d2a4bd","after":"751691271d76b8435559200b84d1947c2bd735bd","ref":"refs/heads/master","pushedAt":"2024-05-29T06:12:57.000Z","pushType":"push","commitsCount":26,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125691 - jieyouxu:rollup-0i3wrc4, r=jieyouxu\n\nRollup of 8 pull requests\n\nSuccessful merges:\n\n - #124251 (Add an intrinsic for `ptr::metadata`)\n - #124320 (Add `--print=check-cfg` to get the expected configs)\n - #125226 (Make more of the test suite run on Mac Catalyst)\n - #125381 (Silence some resolve errors when there have been glob import errors)\n - #125633 (miri: avoid making a full copy of all new allocations)\n - #125638 (Rewrite `lto-smoke`, `simple-rlib` and `mixing-deps` `run-make` tests in `rmake.rs` format)\n - #125639 (Support `./x doc run-make-support --open`)\n - #125664 (Tweak relations to no longer rely on `TypeTrace`)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of #125691 - jieyouxu:rollup-0i3wrc4, r=jieyouxu"}},{"before":"274499dd0ff53b81e93b80520f7afe25adaa2812","after":"da159eb331b27df528185c616b394bb0e1d2a4bd","ref":"refs/heads/master","pushedAt":"2024-05-28T23:09:46.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125682 - weihanglo:update-cargo, r=weihanglo\n\nUpdate cargo\n\n5 commits in a8d72c675ee52dd57f0d8f2bae6655913c15b2fb..431db31d0dbeda320caf8ef8535ea48eb3093407\n2024-05-24 03:34:17 +0000 to 2024-05-28 18:17:31 +0000\n- Include `lints.rust.unexpected_cfgs.check-cfg` in the fingerprint (rust-lang/cargo#13958)\n- feat(test): Auto-redact elapsed time (rust-lang/cargo#13973)\n- chore: Update to snapbox 0.6 (rust-lang/cargo#13963)\n- fix: check if rev is full commit sha for github fast path (rust-lang/cargo#13969)\n- test: switch from `drop` to `let _` due to nightly rustc change (rust-lang/cargo#13964)\n\nr? ghost","shortMessageHtmlLink":"Auto merge of #125682 - weihanglo:update-cargo, r=weihanglo"}},{"before":"8c4db851a7bb64173832e6602638204ebbd373a8","after":"274499dd0ff53b81e93b80520f7afe25adaa2812","ref":"refs/heads/master","pushedAt":"2024-05-28T20:29:58.000Z","pushType":"push","commitsCount":17,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125665 - matthiaskrgr:rollup-srkx0v1, r=matthiaskrgr\n\nRollup of 5 pull requests\n\nSuccessful merges:\n\n - #117671 (NVPTX: Avoid PassMode::Direct for args in C abi)\n - #125573 (Migrate `run-make/allow-warnings-cmdline-stability` to `rmake.rs`)\n - #125590 (Add a \"Setup Python\" action for github-hosted runners and remove unnecessary `CUSTOM_MINGW` environment variable)\n - #125598 (Make `ProofTreeBuilder` actually generic over `Interner`)\n - #125637 (rustfmt fixes)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of #125665 - matthiaskrgr:rollup-srkx0v1, r=matthiaskrgr"}},{"before":"7717a306b2678ba9ece19b723c76a6b3a89ba931","after":"8c4db851a7bb64173832e6602638204ebbd373a8","ref":"refs/heads/master","pushedAt":"2024-05-28T18:20:18.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #122662 - Mark-Simulacrum:optional-drop, r=bjorn3\n\nOmit non-needs_drop drop_in_place in vtables\n\nThis replaces the drop_in_place reference with null in vtables. On librustc_driver.so, this drops about ~17k (11%) dynamic relocations from the output, since many vtables can now be placed in read-only memory, rather than having a relocated pointer included.\n\nThis makes a tradeoff by adding a null check at vtable call sites. I'm not sure that's readily avoidable without changing the vtable format (e.g., so that we can use a pc-relative relocation instead of an absolute address, and avoid the dynamic relocation that way). But it seems likely that the check is cheap at runtime.\n\nAccepted MCP: https://github.com/rust-lang/compiler-team/issues/730","shortMessageHtmlLink":"Auto merge of #122662 - Mark-Simulacrum:optional-drop, r=bjorn3"}},{"before":"f989d2f62500df1696eb797d8800a705293b43b9","after":"7717a306b2678ba9ece19b723c76a6b3a89ba931","ref":"refs/heads/master","pushedAt":"2024-05-28T15:57:09.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #124650 - oli-obk:pattern_types_syntax, r=nnethercote\n\nCreate const block DefIds in typeck instead of ast lowering\n\nthis is a prerequisite for cleaning up pattern types and the range pattern HIR nodes in general. Right now they contain expressions, but they are supposed to only contain constants. In order to generate the anonymous constants lazily during typeck, we need to support generating new items with bodies during typeck in general. Transforming const blocks was the simplest change I could find to allow us to do that (everything else is much more invasive if we haven't already done it for const blocks).","shortMessageHtmlLink":"Auto merge of #124650 - oli-obk:pattern_types_syntax, r=nnethercote"}},{"before":"c0d600385bb96cc23d3de8615ee37c01abba6c8a","after":"f989d2f62500df1696eb797d8800a705293b43b9","ref":"refs/heads/master","pushedAt":"2024-05-28T11:19:36.000Z","pushType":"push","commitsCount":24,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125649 - workingjubilee:rollup-zwoum3k, r=workingjubilee\n\nRollup of 5 pull requests\n\nSuccessful merges:\n\n - #125089 (Improve diagnostic output the `non_local_definitions` lint)\n - #125343 (`-Znext-solver`: eagerly normalize when adding goals)\n - #125551 (Stabilise `IpvNAddr::{BITS, to_bits, from_bits}` (`ip_bits`))\n - #125640 (Don't suggest turning non-char-literal exprs of ty `char` into string literals)\n - #125647 (update tracking issue for lazy_cell_consume)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of #125649 - workingjubilee:rollup-zwoum3k, r=workingjubilee"}},{"before":"d86e1229411c086e1267c80dd9872959ca13b8b9","after":"c0d600385bb96cc23d3de8615ee37c01abba6c8a","ref":"refs/heads/master","pushedAt":"2024-05-28T07:06:03.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125636 - workingjubilee:bump-backtrace-0.3.72, r=workingjubilee\n\nBump backtrace to 0.3.72\n\nThis removes a bunch of dead code, contains critical aarch64-windows fixes, some less-critical windows-in-general improvements, adds visionOS support (and probably improves support for a bunch of Apple platforms...), and harmonizes backtrace's dependencies with rustc/std's.\n\nSee https://github.com/rust-lang/backtrace-rs/compare/0.3.71...0.3.72\n\nr? `@ghost`","shortMessageHtmlLink":"Auto merge of #125636 - workingjubilee:bump-backtrace-0.3.72, r=worki…"}},{"before":"71213fd60700478ac9ddef2cb4ef43b7bb660a5b","after":"d86e1229411c086e1267c80dd9872959ca13b8b9","ref":"refs/heads/master","pushedAt":"2024-05-28T04:56:59.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125609 - diondokter:opt-size-char-count, r=thomcc\n\nAlways use the general case char count with `optimize_for_size`\n\nThe faster algo is really expensive, over a kilobyte if the full algo is present in a binary.\nWith this PR the general case algo is picked always instead of only for small strings.\n\nIn a test of mine this change makes the total binary go from 3116 bytes to 2032 bytes in opt-level 3 and from 1652 bytes to 1428 bytes in opt-level z. I've seen it much worse in real application, so the savings (especially on 'z') will be higher in many cases.\n\nThis is the second pr of this kind after #125606","shortMessageHtmlLink":"Auto merge of #125609 - diondokter:opt-size-char-count, r=thomcc"}},{"before":"84b40fc908c3adc7e0e470b3fbaa264df0e122b8","after":"71213fd60700478ac9ddef2cb4ef43b7bb660a5b","ref":"refs/heads/master","pushedAt":"2024-05-28T02:36:35.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125539 - matthiaskrgr:cräsh, r=jieyouxu\n\ncrashes: increment the number of tracked ones\n\nr? `@jieyouxu`","shortMessageHtmlLink":"Auto merge of #125539 - matthiaskrgr:cräsh, r=jieyouxu"}},{"before":"f00b02e6bbe63707503f058fb87cc3e2b25991ac","after":"84b40fc908c3adc7e0e470b3fbaa264df0e122b8","ref":"refs/heads/master","pushedAt":"2024-05-27T23:04:49.000Z","pushType":"push","commitsCount":12,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125628 - matthiaskrgr:rollup-3zk9v3w, r=matthiaskrgr\n\nRollup of 4 pull requests\n\nSuccessful merges:\n\n - #125339 (The number of tests does not depend on the architecture's pointer width)\n - #125542 (Migrate rustdoc verify output files)\n - #125616 (MIR validation: ensure that downcast projection is followed by field projection)\n - #125625 (Use grep to implement verify-line-endings)\n\nFailed merges:\n\n - #125573 (Migrate `run-make/allow-warnings-cmdline-stability` to `rmake.rs`)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of #125628 - matthiaskrgr:rollup-3zk9v3w, r=matthiaskrgr"}},{"before":"b0f86189380c64e4a090233a0a0a97f1e87fe88e","after":"f00b02e6bbe63707503f058fb87cc3e2b25991ac","ref":"refs/heads/master","pushedAt":"2024-05-27T20:48:17.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125599 - camelid:clarify-stability, r=notriddle,GuillaumeGomez\n\nrustdoc: Clarify const-stability with regard to normal stability\n\nFixes #125511.\n\n- Elide const-unstable if also unstable overall\n- Show \"const\" for const-unstable if also overall unstable","shortMessageHtmlLink":"Auto merge of #125599 - camelid:clarify-stability, r=notriddle,Guilla…"}},{"before":"f6e4703e91eedcc5e33ad2cf3f6c0d034782f245","after":"b0f86189380c64e4a090233a0a0a97f1e87fe88e","ref":"refs/heads/master","pushedAt":"2024-05-27T17:45:18.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125413 - lcnr:ambig-drop-region-constraints, r=compiler-errors\n\ndrop region constraints for ambiguous goals\n\nSee the comment in `compute_external_query_constraints`. While the underlying issue is preexisting, this fixes a bug introduced by #125343.\n\nIt slightly weakens the leak chec, even if we didn't have any test which was affected. I want to write such a test before merging this PR.\n\nr? `@compiler-errors`","shortMessageHtmlLink":"Auto merge of #125413 - lcnr:ambig-drop-region-constraints, r=compile…"}},{"before":"a59072ec4fb6824213df5e9de8cae4812fd4fe97","after":"f6e4703e91eedcc5e33ad2cf3f6c0d034782f245","ref":"refs/heads/master","pushedAt":"2024-05-27T15:27:46.000Z","pushType":"push","commitsCount":26,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125611 - GuillaumeGomez:rollup-dfavpgg, r=GuillaumeGomez\n\nRollup of 7 pull requests\n\nSuccessful merges:\n\n - #124870 (Update Result docs to the new guarantees)\n - #125148 (codegen: tweak/extend shift comments)\n - #125522 (Add \"better\" edition handling on lint-docs tool)\n - #125530 (cleanup dependence of `ExtCtxt` in transcribe when macro expansion)\n - #125535 (clean-up: remove deprecated field `dist.missing-tools`)\n - #125597 (Uplift `EarlyBinder` into `rustc_type_ir`)\n - #125607 (Migrate `run-make/compile-stdin` to `rmake.rs`)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of #125611 - GuillaumeGomez:rollup-dfavpgg, r=GuillaumeGomez"}},{"before":"b582f807fae230b22ac126ff1d8a13262bb099ba","after":"a59072ec4fb6824213df5e9de8cae4812fd4fe97","ref":"refs/heads/master","pushedAt":"2024-05-27T13:21:49.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125602 - RalfJung:interpret-mir-lifetime, r=oli-obk\n\ninterpret: get rid of 'mir lifetime\n\nI realized our MIR bodies are actually at lifetime `'tcx`, so we don't need to carry around this other lifetime everywhere.\n\nr? `@oli-obk`","shortMessageHtmlLink":"Auto merge of #125602 - RalfJung:interpret-mir-lifetime, r=oli-obk"}},{"before":"fec98b3bbc94b54a0b3085d004708aabcc48081a","after":"b582f807fae230b22ac126ff1d8a13262bb099ba","ref":"refs/heads/master","pushedAt":"2024-05-27T11:00:09.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125410 - fmease:adj-lint-diag-api, r=nnethercote\n\n[perf] Delay the construction of early lint diag structs\n\nAttacks some of the perf regressions from https://github.com/rust-lang/rust/pull/124417#issuecomment-2123700666.\n\nSee individual commits for details. The first three commits are not strictly necessary.\nHowever, the 2nd one (06bc4fc67145e3a7be9b5a2cf2b5968cef36e587, *Remove `LintDiagnostic::msg`*) makes the main change way nicer to implement.\nIt's also pretty sweet on its own if I may say so myself.","shortMessageHtmlLink":"Auto merge of #125410 - fmease:adj-lint-diag-api, r=nnethercote"}},{"before":"cdc509f7c09361466d543fc8311ce7066b10cc4f","after":"fec98b3bbc94b54a0b3085d004708aabcc48081a","ref":"refs/heads/master","pushedAt":"2024-05-27T08:43:59.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125468 - BoxyUwU:remove_defid_from_regionparam, r=compiler-errors\n\nRemove `DefId` from `EarlyParamRegion`\n\nCurrently we represent usages of `Region` parameters via the `ReEarlyParam` or `ReLateParam` variants. The `ReEarlyParam` is effectively equivalent to `TyKind::Param` and `ConstKind::Param` (i.e. it stores a `Symbol` and a `u32` index) however it also stores a `DefId` for the definition of the lifetime parameter.\n\nThis was used in roughly two places:\n- Borrowck diagnostics instead of threading the appropriate `body_id` down to relevant locations. Interestingly there were already some places that had to pass down a `DefId` manually.\n- Some opaque type checking logic was using the `DefId` field to track captured lifetimes\n\nI've split this PR up into a commit for generate rote changes to diagnostics code to pass around a `DefId` manually everywhere, and another commit for the opaque type related changes which likely require more careful review as they might change the semantics of lints/errors.\n\nInstead of manually passing the `DefId` around everywhere I previously tried to bundle it in with `TypeErrCtxt` but ran into issues with some call sites of `infcx.err_ctxt` being unable to provide a `DefId`, particularly places involved with trait solving and normalization. It might be worth investigating adding some new wrapper type to pass this around everywhere but I think this might be acceptable for now.\n\nThis pr also has the effect of reducing the size of `EarlyParamRegion` from 16 bytes -> 8 bytes. I wouldn't expect this to have any direct performance improvement however, other variants of `RegionKind` over `8` bytes are all because they contain a `BoundRegionKind` which is, as far as I know, mostly there for diagnostics. If we're ever able to remove this it would shrink the `RegionKind` type from `24` bytes to `12` (and with clever bit packing we might be able to get it to `8` bytes). I am curious what the performance impact would be of removing interning of `Region`'s if we ever manage to shrink `RegionKind` that much.\n\nSidenote: by removing the `DefId` the `Debug` output for `Region` has gotten significantly nicer. As an example see this opaque type debug print before vs after this PR:\n`Opaque(DefId(0:13 ~ impl_trait_captures[aeb9]::foo::{opaque#0}), [DefId(0:9 ~ impl_trait_captures[aeb9]::foo::'a)_'a/#0, T, DefId(0:9 ~ impl_trait_captures[aeb9]::foo::'a)_'a/#0])`\n`Opaque(DefId(0:13 ~ impl_trait_captures[aeb9]::foo::{opaque#0}), ['a/#0, T, 'a/#0])`\n\nr? `@compiler-errors` (I would like someone who understands the opaque type setup to atleast review the type system commit, but the rest is likely reviewable by anyone)","shortMessageHtmlLink":"Auto merge of #125468 - BoxyUwU:remove_defid_from_regionparam, r=comp…"}},{"before":"529bb2573a2a07d29329db8ff1bac8a7c6a4757f","after":"cdc509f7c09361466d543fc8311ce7066b10cc4f","ref":"refs/heads/master","pushedAt":"2024-05-27T04:29:31.000Z","pushType":"push","commitsCount":37,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125580 - RalfJung:miri-sync, r=RalfJung\n\nMiri subtree update\n\nr? `@ghost`","shortMessageHtmlLink":"Auto merge of #125580 - RalfJung:miri-sync, r=RalfJung"}},{"before":"0aad3f64e29debcb087bdfc2d14e07a12fb3b703","after":"529bb2573a2a07d29329db8ff1bac8a7c6a4757f","ref":"refs/heads/master","pushedAt":"2024-05-27T02:22:04.000Z","pushType":"push","commitsCount":18,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125593 - workingjubilee:rollup-67qk7di, r=workingjubilee\n\nRollup of 8 pull requests\n\nSuccessful merges:\n\n - #124048 (Support C23's Variadics Without a Named Parameter)\n - #125046 (Only allow immutable statics with #[linkage])\n - #125466 (Don't continue probing for method if in suggestion and autoderef hits ambiguity)\n - #125469 (Don't skip out of inner const when looking for body for suggestion)\n - #125544 (Also mention my-self for other check-cfg docs changes)\n - #125559 (Simplify the `unchecked_sh[lr]` ub-checks a bit)\n - #125566 (Notify T-rustdoc for beta-accepted and stable-accepted too)\n - #125582 (Avoid a `FieldIdx::from_usize` in InstSimplify)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of #125593 - workingjubilee:rollup-67qk7di, r=workingjubilee"}},{"before":"bdbbb6c6a718d4d196131aa16bafb60e850311d9","after":"0aad3f64e29debcb087bdfc2d14e07a12fb3b703","ref":"refs/heads/master","pushedAt":"2024-05-27T00:16:05.000Z","pushType":"push","commitsCount":46,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125576 - lnicola:sync-from-ra, r=lnicola\n\nSubtree update of `rust-analyzer`\n\nr? `@ghost`","shortMessageHtmlLink":"Auto merge of #125576 - lnicola:sync-from-ra, r=lnicola"}},{"before":"b0925697fdaec1bcddec2732bb3cf7f918b18745","after":"bdbbb6c6a718d4d196131aa16bafb60e850311d9","ref":"refs/heads/master","pushedAt":"2024-05-26T20:59:13.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #125546 - ChrisDenton:mingw-ci, r=Mark-Simulacrum\n\nTry to not reinstall tools in mingw CI\n\nReinstalling the tools seems prone to failure (e.g. [latest](https://github.com/rust-lang/rust/pull/125529#issuecomment-2130919307)) and is more work. It also seems unnecessary as CI actually uses a vendored tarball for builds.\n\ncc `@mati865`","shortMessageHtmlLink":"Auto merge of #125546 - ChrisDenton:mingw-ci, r=Mark-Simulacrum"}},{"before":"785eb65377e5d7f8d8e8b82ede044212bbd2d76e","after":"b0925697fdaec1bcddec2732bb3cf7f918b18745","ref":"refs/heads/master","pushedAt":"2024-05-26T17:56:20.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"bors","name":"bors","path":"/bors","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3372342?s=80&v=4"},"commit":{"message":"Auto merge of #122079 - tbu-:pr_copy_file_range_probe, r=the8472\n\nLess syscalls for the `copy_file_range` probe\n\nIf it's obvious from the actual syscall results themselves that the syscall is supported or unsupported, don't do an extra syscall with an invalid file descriptor.\n\nCC #122052","shortMessageHtmlLink":"Auto merge of #122079 - tbu-:pr_copy_file_range_probe, r=the8472"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEV78wigA","startCursor":null,"endCursor":null}},"title":"Activity · rust-lang/rust"}