{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":747200176,"defaultBranch":"master","name":"rust","ownerLogin":"ShoyuVanilla","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2024-01-23T13:20:34.000Z","ownerAvatar":"https://github.com/avatars/u/10542892?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1726707498.0","currentOid":""},"activityList":{"items":[{"before":"a5cf8bbd4e1c8edeae08778c85c6f806dd00e853","after":"5793a9e90289382e447f5bc411cab2bc01c5836f","ref":"refs/heads/master","pushedAt":"2024-09-20T03:15:41.000Z","pushType":"push","commitsCount":54,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #130561 - lukas-code:perf-normalize-env, r=compiler-errors\n\n[perf] skip normalizing param env if it is already normalized\n\nIf the param env is already normalized after elaboration, then we can skip a bunch of expensive operations.\n\n> [!note]\n> This makes it so that outlives predicates are no longer sorted after non-outlives predicates. Surely this won't make a semantic difference.\n\nr? ghost","shortMessageHtmlLink":"Auto merge of rust-lang#130561 - lukas-code:perf-normalize-env, r=com…"}},{"before":"8959434c70c2d3de86f5a1539792fa06de3c5715","after":null,"ref":"refs/heads/remove-subst","pushedAt":"2024-09-19T00:58:18.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"}},{"before":"f6bcd094abe174a218f7cf406e75521be4199f88","after":"a5cf8bbd4e1c8edeae08778c85c6f806dd00e853","ref":"refs/heads/master","pushedAt":"2024-09-19T00:58:06.000Z","pushType":"push","commitsCount":61,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #130534 - workingjubilee:rollup-furaug4, r=workingjubilee\n\nRollup of 9 pull requests\n\nSuccessful merges:\n\n - #97524 (Add `Thread::{into_raw, from_raw}`)\n - #127988 (Do not ICE with incorrect empty suggestion)\n - #129422 (Gate `repr(Rust)` correctly on non-ADT items)\n - #129934 (Win: Open dir for sync access in remove_dir_all)\n - #130450 (Reduce confusion about `make_indirect_byval` by renaming it)\n - #130476 (Implement ACP 429: add `Lazy{Cell,Lock}::get[_mut]` and `force_mut`)\n - #130487 (Update the minimum external LLVM to 18)\n - #130513 (Clarify docs for std::fs::File::write)\n - #130522 ([Clippy] Swap `manual_retain` to use diagnostic items instead of paths)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of rust-lang#130534 - workingjubilee:rollup-furaug4, r=wor…"}},{"before":"a3af2085ccdc1890fef22b96397ac58f714c5580","after":"f6bcd094abe174a218f7cf406e75521be4199f88","ref":"refs/heads/master","pushedAt":"2024-09-18T08:41:04.000Z","pushType":"push","commitsCount":766,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #130498 - matthiaskrgr:rollup-tg4d0zi, r=matthiaskrgr\n\nRollup of 4 pull requests\n\nSuccessful merges:\n\n - #130116 (Implement a Method to Seal `DiagInner`'s Suggestions)\n - #130489 (Ensure that `keyword_ident` lint doesn't trigger on `'r#kw` lifetime)\n - #130491 (more crash tests)\n - #130496 (Fix circular fn_sig queries to correct number of args for methods)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of rust-lang#130498 - matthiaskrgr:rollup-tg4d0zi, r=matth…"}},{"before":"d2e6cf7fa78500d6c264e35468278aeffd806258","after":"a3af2085ccdc1890fef22b96397ac58f714c5580","ref":"refs/heads/master","pushedAt":"2024-09-06T09:58:34.000Z","pushType":"push","commitsCount":5664,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #130016 - matthiaskrgr:rollup-fopistw, r=matthiaskrgr\n\nRollup of 6 pull requests\n\nSuccessful merges:\n\n - #129021 (Check WF of source type's signature on fn pointer cast)\n - #129781 (Make `./x.py compiler/` aware of the crate's features)\n - #129963 (Inaccurate `{Path,OsStr}::to_string_lossy()` documentation)\n - #129969 (Make `Ty::boxed_ty` return an `Option`)\n - #129995 (Remove wasm32-wasip2's tier 2 status from release notes)\n - #130013 (coverage: Count await when the Future is immediately ready )\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of rust-lang#130016 - matthiaskrgr:rollup-fopistw, r=matth…"}},{"before":"bda221a0eb5019a939e34e0f4583f1c4b6e5b862","after":"d2e6cf7fa78500d6c264e35468278aeffd806258","ref":"refs/heads/master","pushedAt":"2024-07-05T11:17:36.000Z","pushType":"push","commitsCount":882,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #127344 - matthiaskrgr:morecrashes, r=jieyouxu\n\ncrashes: add latest\n\nr? `@jieyouxu`\n`@bors` rollup=iffy","shortMessageHtmlLink":"Auto merge of rust-lang#127344 - matthiaskrgr:morecrashes, r=jieyouxu"}},{"before":"b14d8b2ef20c64c1002e2c6c724025c3d0846b91","after":"bda221a0eb5019a939e34e0f4583f1c4b6e5b862","ref":"refs/heads/master","pushedAt":"2024-06-25T10:50:47.000Z","pushType":"push","commitsCount":6587,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #125740 - RalfJung:transmute-size-check, r=oli-obk\n\ntransmute size check: properly account for alignment\n\nFixes another place where ZST alignment was ignored when checking whether something is a newtype. I wonder how many more of these there are...\n\nFixes https://github.com/rust-lang/rust/issues/101084","shortMessageHtmlLink":"Auto merge of rust-lang#125740 - RalfJung:transmute-size-check, r=oli…"}},{"before":"f2c80133931a5e5dc194359c0451bfaed579b48d","after":"b14d8b2ef20c64c1002e2c6c724025c3d0846b91","ref":"refs/heads/master","pushedAt":"2024-04-10T09:50:27.000Z","pushType":"push","commitsCount":169,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #122812 - dtolnay:mode, r=workingjubilee\n\nShow mode_t as octal in std::fs Debug impls\n\nExample:\n\n```rust\nfn main() {\n println!(\"{:?}\", std::fs::metadata(\"Cargo.toml\").unwrap().permissions());\n}\n```\n\n- Before: `Permissions(FilePermissions { mode: 33204 })`\n\n- ~~After: `Permissions(FilePermissions { mode: 0o100664 })`~~\n\n- After: `Permissions(FilePermissions { mode: 0o100664 (-rw-rw-r--) })`\n\n~~I thought about using the format from `ls -l` (`-rw-rw-r--`, `drwxrwxr-x`) but I am not sure how transferable the meaning of the higher bits between different unix systems, and anyway starting the value with a leading negative-sign seems objectionable.~~","shortMessageHtmlLink":"Auto merge of rust-lang#122812 - dtolnay:mode, r=workingjubilee"}},{"before":"0e3235f85b0a83843fb2397a3345ff3830b408d4","after":"f2c80133931a5e5dc194359c0451bfaed579b48d","ref":"refs/heads/master","pushedAt":"2024-04-08T05:32:29.000Z","pushType":"push","commitsCount":39,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #123569 - c410-f3r:testsssssss, r=jieyouxu\n\nMove some tests\n\nr? `@petrochenkov`","shortMessageHtmlLink":"Auto merge of rust-lang#123569 - c410-f3r:testsssssss, r=jieyouxu"}},{"before":"4fd4797c2654977f545c9a91e2aa4e6cdbb38919","after":"0e3235f85b0a83843fb2397a3345ff3830b408d4","ref":"refs/heads/master","pushedAt":"2024-04-07T09:51:01.000Z","pushType":"push","commitsCount":447,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #123555 - DianQK:update-llvm-18, r=cuviper\n\nUpdate to LLVM 18.1.3\n\nFixes #122805.\n\nThis should work on all targets: https://rust.godbolt.org/z/svW8ha31z.\n\nr? `@cuviper`","shortMessageHtmlLink":"Auto merge of rust-lang#123555 - DianQK:update-llvm-18, r=cuviper"}},{"before":"a8cfc83801301c2b4f0fd030192e268eeb15d473","after":"4fd4797c2654977f545c9a91e2aa4e6cdbb38919","ref":"refs/heads/master","pushedAt":"2024-04-04T01:49:46.000Z","pushType":"push","commitsCount":209,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #123429 - matthiaskrgr:rollup-4emw4e9, r=matthiaskrgr\n\nRollup of 8 pull requests\n\nSuccessful merges:\n\n - #121595 (Better reporting on generic argument mismatchs)\n - #122619 (Fix some unsoundness with PassMode::Cast ABI)\n - #122964 (Rename `expose_addr` to `expose_provenance`)\n - #123291 (Move some tests)\n - #123301 (pattern analysis: fix union handling)\n - #123395 (More postfix match fixes)\n - #123419 (rustc_index: Add a `ZERO` constant to index types)\n - #123421 (Fix target name in NetBSD platform-support doc)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of rust-lang#123429 - matthiaskrgr:rollup-4emw4e9, r=matth…"}},{"before":"af98101ed89dba94309c64f1fbf37c890d988f9f","after":"a8cfc83801301c2b4f0fd030192e268eeb15d473","ref":"refs/heads/master","pushedAt":"2024-03-31T15:30:20.000Z","pushType":"push","commitsCount":637,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #123246 - Kobzol:tarball-reproducible, r=Mark-Simulacrum\n\nMake source tarball generation more reproducible\n\nThis PR performs several changes to source tarball generation (`x dist rustc-src`) in order to make it more reproducible (in light of the recent \"xz backdoor\"...). I want to follow up on it with making a separate CI workflow for generating the tarball.\n\nAfter this PR, running this locally produces identical checksums:\n```bash\n$ ./x dist rustc-src\n$ sha256sum build/dist/rustc-1.79.0-src.tar.gz\n\n$ ./x dist rustc-src\n$ sha256sum build/dist/rustc-1.79.0-src.tar.gz\n```\n\nr? `@Mark-Simulacrum`","shortMessageHtmlLink":"Auto merge of rust-lang#123246 - Kobzol:tarball-reproducible, r=Mark-…"}},{"before":"c31b2178e0c4266550375dc1641ba60dfbcf58e1","after":null,"ref":"refs/heads/issue-101903","pushedAt":"2024-03-26T05:33:07.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"}},{"before":"c3b05c6e5b5b59613350b8c2875b0add67ed74df","after":"af98101ed89dba94309c64f1fbf37c890d988f9f","ref":"refs/heads/master","pushedAt":"2024-03-25T15:15:35.000Z","pushType":"push","commitsCount":212,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #123029 - matthiaskrgr:rollup-6qsevhx, r=matthiaskrgr\n\nRollup of 7 pull requests\n\nSuccessful merges:\n\n - #122858 (Tweak `parse_dot_suffix_expr`)\n - #122982 (Add more comments to the bootstrap code that handles `tests/coverage`)\n - #122990 (Clarify transmute example)\n - #122995 (Clean up unnecessary headers/flags in coverage mir-opt tests)\n - #123003 (CFI: Handle dyn with no principal)\n - #123005 (CFI: Support complex receivers)\n - #123020 (Temporarily remove nnethercote from the review rotation.)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of rust-lang#123029 - matthiaskrgr:rollup-6qsevhx, r=matth…"}},{"before":"37dbe40a7e54a873d047ae530b3a70e52ec8c030","after":null,"ref":"refs/heads/issue-117310","pushedAt":"2024-03-24T23:36:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"}},{"before":null,"after":"c31b2178e0c4266550375dc1641ba60dfbcf58e1","ref":"refs/heads/issue-101903","pushedAt":"2024-03-23T15:32:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Add regression tests for #101903","shortMessageHtmlLink":"Add regression tests for rust-lang#101903"}},{"before":null,"after":"37dbe40a7e54a873d047ae530b3a70e52ec8c030","ref":"refs/heads/issue-117310","pushedAt":"2024-03-23T14:56:01.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Add a regression test for #117310","shortMessageHtmlLink":"Add a regression test for rust-lang#117310"}},{"before":"b57a10c39d2a2da7389d029595d7fff6ac9cbf5a","after":"c3b05c6e5b5b59613350b8c2875b0add67ed74df","ref":"refs/heads/master","pushedAt":"2024-03-23T14:09:26.000Z","pushType":"push","commitsCount":91,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #122911 - Nilstrieb:live-love-patch, r=clubby789\n\nFix nix patching for LLVM 18\n\nLLVM 18 now ships `libLLVM*.so.*`, so `.so` is not the sole extension anymore, which breaks the dylib detection. Oops! Adjust it to only search for `.so` somewhere.\n\nfixes #122906","shortMessageHtmlLink":"Auto merge of rust-lang#122911 - Nilstrieb:live-love-patch, r=clubby789"}},{"before":"ae4c5c891ec55e2bf78615650daded9124552ca0","after":null,"ref":"refs/heads/gen-block-impl-fused-iter","pushedAt":"2024-03-22T06:14:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"}},{"before":"0ad927c0c07b65fc0dae37105e09c877c87c296a","after":"b57a10c39d2a2da7389d029595d7fff6ac9cbf5a","ref":"refs/heads/master","pushedAt":"2024-03-22T04:44:35.000Z","pushType":"push","commitsCount":170,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #122854 - matthiaskrgr:rollup-9nnuo0z, r=matthiaskrgr\n\nRollup of 11 pull requests\n\nSuccessful merges:\n\n - #121881 (std::net: adding acceptfilter feature for netbsd/freebsd.)\n - #122817 (Doc Guarantee: BTree(Set|Map): `IntoIter` Iterate in Sorted by key Order)\n - #122826 (Add tests for shortcomings of associated type bounds)\n - #122829 (Implement `FusedIterator` for `gen` block)\n - #122831 (make failure logs less verbose)\n - #122837 (add test for #122549)\n - #122838 (Avoid noop rewrite of issues.txt)\n - #122841 (add 2 more tests for issues fixed by #122749)\n - #122843 (Add a never type option to make diverging blocks `()`)\n - #122844 (add test for ice \"cannot relate region: LUB(ReErased, ReError)\")\n - #122845 (Clippy subtree update)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of rust-lang#122854 - matthiaskrgr:rollup-9nnuo0z, r=matth…"}},{"before":"03994e498df79aa1f97f7bbcfd52d57c8e865049","after":"0ad927c0c07b65fc0dae37105e09c877c87c296a","ref":"refs/heads/master","pushedAt":"2024-03-22T03:13:15.000Z","pushType":"push","commitsCount":58,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #122785 - the8472:const-select-specialized-impl, r=Amanieu\n\nselect Vec::from_iter impls in a const block to optimize compile times\n\nIgnoring whitespace diffs should make this easier to review.\n\nThis relies on the trick from #122301\nSplit out from #120682","shortMessageHtmlLink":"Auto merge of rust-lang#122785 - the8472:const-select-specialized-imp…"}},{"before":"7bc4d25e755f9ccbb58ffe13958a2a8baf48b528","after":"ae4c5c891ec55e2bf78615650daded9124552ca0","ref":"refs/heads/gen-block-impl-fused-iter","pushedAt":"2024-03-21T17:03:04.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Implement `FusedIterator` for `gen` block","shortMessageHtmlLink":"Implement FusedIterator for gen block"}},{"before":null,"after":"7bc4d25e755f9ccbb58ffe13958a2a8baf48b528","ref":"refs/heads/gen-block-impl-fused-iter","pushedAt":"2024-03-21T15:49:12.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Implement `FusedIterator` for `gen` block","shortMessageHtmlLink":"Implement FusedIterator for gen block"}},{"before":"1388d7a069d872bcfe5e5dd97ef61fa0a586fac0","after":"03994e498df79aa1f97f7bbcfd52d57c8e865049","ref":"refs/heads/master","pushedAt":"2024-03-21T15:09:08.000Z","pushType":"push","commitsCount":56,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #122718 - workingjubilee:eyeliner-for-contrast, r=lcnr\n\nInline a bunch of trivial conditions in parser\n\nIt is often the case that these small, conditional functions, when inlined, reveal notable optimization opportunities to LLVM. While saethlin has done a lot of good work on making these kinds of small functions not need `#[inline]` tags as much, being clearer about what we want inlined will get both the MIR opts and LLVM to pursue it more aggressively.\n\nOn local perf runs, this seems fruitful. Let's see what rust-timer says.\n\nr? `@ghost`","shortMessageHtmlLink":"Auto merge of rust-lang#122718 - workingjubilee:eyeliner-for-contrast…"}},{"before":"c270a42fea7ac5897756a55a4797e06244cf947b","after":null,"ref":"refs/heads/fix-issue-121267","pushedAt":"2024-03-21T08:40:24.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"}},{"before":"40dbc62f0d7761392734e297100dcc6bc11b03a1","after":"c270a42fea7ac5897756a55a4797e06244cf947b","ref":"refs/heads/fix-issue-121267","pushedAt":"2024-03-21T01:41:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Fix bad span for explicit lifetime suggestion\n\nMove verbose logic to a function\n\nMinor renaming","shortMessageHtmlLink":"Fix bad span for explicit lifetime suggestion"}},{"before":"c86f3ac24f6b62b438c4bdc34ae73e8a1db60234","after":"1388d7a069d872bcfe5e5dd97ef61fa0a586fac0","ref":"refs/heads/master","pushedAt":"2024-03-21T01:18:04.000Z","pushType":"push","commitsCount":12,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #122761 - jwong101:fix/vec-insert, r=workingjubilee,Nilstrieb\n\nfix OOB pointer formed in Vec::index\n\nMove the length check to before using `index` with `ptr::add` to prevent an out of bounds pointer from being formed.\n\nFixes #122760","shortMessageHtmlLink":"Auto merge of rust-lang#122761 - jwong101:fix/vec-insert, r=workingju…"}},{"before":"0f706af330022b46efb5bcc8da7ad7276dfdeb69","after":"c86f3ac24f6b62b438c4bdc34ae73e8a1db60234","ref":"refs/heads/master","pushedAt":"2024-03-20T13:54:09.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #120717 - compiler-errors:cap-closure-kind, r=oli-obk\n\nFor async closures, cap closure kind, get rid of `by_mut_body`\n\nRight now we have three `AsyncFn*` traits, and three corresponding futures that are returned by the `call_*` functions for them. This is fine, but it is a bit excessive, since the future returned by `AsyncFn` and `AsyncFnMut` are identical. Really, the only distinction we need to make with these bodies is \"by ref\" and \"by move\".\n\nThis PR removes `AsyncFn::CallFuture` and renames `AsyncFnMut::CallMutFuture` to `AsyncFnMut::CallRefFuture`. This simplifies MIR building for async closures, since we don't need to build an extra \"by mut\" body, but just a \"by move\" body which is materially different.\n\nWe need to do a bit of delicate handling of the ClosureKind for async closures, since we need to \"cap\" it to `AsyncFnMut` in some cases when we only care about what body we're looking for.\n\nThis also fixes a bug where `<{async closure} as Fn>::call` was returning a body that takes the async-closure receiver *by move*.\n\nThis also helps align the `AsyncFn` traits to the `LendingFn` traits' eventual designs.","shortMessageHtmlLink":"Auto merge of rust-lang#120717 - compiler-errors:cap-closure-kind, r=…"}},{"before":"196ff446d20088406b9d69978dddccc4682bd006","after":"0f706af330022b46efb5bcc8da7ad7276dfdeb69","ref":"refs/heads/master","pushedAt":"2024-03-20T13:07:22.000Z","pushType":"push","commitsCount":73,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #122763 - matthiaskrgr:rollup-o8a2mye, r=matthiaskrgr\n\nRollup of 6 pull requests\n\nSuccessful merges:\n\n - #121543 (various clippy fixes)\n - #122540 (Do not use `?`-induced skewing of type inference in the compiler)\n - #122730 (Expose `ucred::peer_cred` on QNX targets to enable dist builds)\n - #122732 (Remove redundant coroutine captures note)\n - #122739 (Add \"put\" as a confusable for insert on hash map/set)\n - #122748 (Reduce `pub` usage in `rustc_session`.)\n\nr? `@ghost`\n`@rustbot` modify labels: rollup","shortMessageHtmlLink":"Auto merge of rust-lang#122763 - matthiaskrgr:rollup-o8a2mye, r=matth…"}},{"before":"13abc0ac9b2b77299cf02d634fc409e26a180ef3","after":"196ff446d20088406b9d69978dddccc4682bd006","ref":"refs/heads/master","pushedAt":"2024-03-19T08:52:48.000Z","pushType":"push","commitsCount":65,"pusher":{"login":"ShoyuVanilla","name":"Shoyu Vanilla","path":"/ShoyuVanilla","primaryAvatarUrl":"https://github.com/avatars/u/10542892?s=80&v=4"},"commit":{"message":"Auto merge of #122493 - lukas-code:sized-constraint, r=lcnr\n\nclean up `Sized` checking\n\nThis PR cleans up `sized_constraint` and related functions to make them simpler and faster. This should not make more or less code compile, but it can change error output in some rare cases.\n\n## enums and unions are `Sized`, even if they are not WF\n\nThe previous code has some special handling for enums, which made them sized if and only if the last field of each variant is sized. For example given this definition (which is not WF)\n```rust\nenum E {\n A(T1, T2),\n B(U1, U2),\n}\n```\nthe enum was sized if and only if `T2` and `U2` are sized, while `T1` and `T2` were ignored for `Sized` checking. After this PR this enum will always be sized.\n\nUnsized enums are not a thing in Rust and removing this special case allows us to return an `Option` from `sized_constraint`, rather than a `List`.\n\nSimilarly, the old code made an union defined like this\n```rust\nunion Union {\n head: T,\n tail: U,\n}\n```\nsized if and only if `U` is sized, completely ignoring `T`. This just makes no sense at all and now this union is always sized.\n\n## apply the \"perf hack\" to all (non-error) types, instead of just type parameters\n\nThis \"perf hack\" skips evaluating `sized_constraint(adt): Sized` if `sized_constraint(adt): Sized` exactly matches a predicate defined on `adt`, for example:\n\n```rust\n// `Foo: Sized` iff `T: Sized`, but we know `T: Sized` from a predicate of `Foo`\nstruct Foo(T);\n```\n\nPreviously this was only applied to type parameters and now it is applied to every type. This means that for example this type is now always sized:\n\n```rust\n// Note that this definition is WF, but the type `S` not WF in the global/empty ParamEnv\nstruct S([T]) where [T]: Sized;\n```\n\nI don't anticipate this to affect compile time of any real-world program, but it makes the code a bit nicer and it also makes error messages a bit more consistent if someone does write such a cursed type.\n\n## tuples are sized if the last type is sized\n\nThe old solver already has this behavior and this PR also implements it for the new solver and `is_trivially_sized`. This makes it so that tuples work more like a struct defined like this:\n\n```rust\nstruct TupleN(T1, T2, /* ... */ Tn);\n```\n\nThis might improve the compile time of programs with large tuples a little, but is mostly also a consistency fix.\n\n## `is_trivially_sized` for more types\n\nThis function is used post-typeck code (borrowck, const eval, codegen) to skip evaluating `T: Sized` in some cases. It will now return `true` in more cases, most notably `UnsafeCell` and `ManuallyDrop` where `T.is_trivially_sized`.\n\nI'm anticipating that this change will improve compile time for some real world programs.","shortMessageHtmlLink":"Auto merge of rust-lang#122493 - lukas-code:sized-constraint, r=lcnr"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMFQwMzoxNTo0MS4wMDAwMDBazwAAAAS7gznm","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMFQwMzoxNTo0MS4wMDAwMDBazwAAAAS7gznm","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wMy0xOVQwODo1Mjo0OC4wMDAwMDBazwAAAAQZYDcV"}},"title":"Activity · ShoyuVanilla/rust"}