about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2023-03-19Only clear locals that are known to be written to.Camille GILLOT-16/+53
2023-03-19Auto merge of #14378 - lowr:patch/bump-chalk-0.89, r=lnicolabors-12/+44
internal: Bump chalk This release fixes a problem around GATs (rust-lang/chalk#790). While a regression test is added in chalk's own test suite, I also added one in ours so that we can catch regressions when we move away from chalk. Fixes #14164
2023-03-19Add regression testRyo Yoshida-0/+32
so that we can catch regressions when we move away from chalk.
2023-03-19Bump chalk to 0.89Ryo Yoshida-12/+12
2023-03-19refactor: improve "ident starts with number" errorEzra Shaw-20/+61
2023-03-19refactor: refactor identifier parsing somewhatEzra Shaw-23/+31
2023-03-19Delay overlap errors if errors are involvedMichael Goulet-8/+15
2023-03-19Constrain const vars to error if const types are mismatchedMichael Goulet-8/+39
2023-03-19Improve collect_into documentationfren_gor-4/+4
2023-03-19The name of NativeLib will be presentedyukang-56/+71
2023-03-18Auto merge of #109326 - nikic:revert-llvm-16, r=the8472bors-4/+4
Revert "Auto merge of #107224 - nikic:llvm-16, r=cuviper" This reverts commit 4a04d086cac54a41517d5657b59d5fe2caca2d71, reversing changes made to 2d0a7def330ed90f416a3429dbb44c5ee2a914e5. The LLVM 16 upgrade is almost certainly responsible for the CI segfaults that were observed after it landed, looking something like this: ``` Building stage1 library artifacts (x86_64-unknown-linux-gnu) error: failed to run `rustc` to learn about target-specific information Caused by: process didn't exit successfully: `/checkout/obj/build/bootstrap/debug/rustc - --crate-name ___ --print=file-names -Csymbol-mangling-version=legacy -Zunstable-options -Zunstable-options '--check-cfg=values(bootstrap)' '--check-cfg=values(stdarch_intel_sde)' '--check-cfg=values(no_fp_fmt_parse)' '--check-cfg=values(no_global_oom_handling)' '--check-cfg=values(no_rc)' '--check-cfg=values(no_sync)' '--check-cfg=values(freebsd12)' '--check-cfg=values(backtrace_in_libstd)' '--check-cfg=values(target_env,"libnx")' '--check-cfg=values(target_arch,"asmjs","spirv","nvptx","xtensa")' -Zmacro-backtrace -Clink-args=-Wl,-z,origin '-Clink-args=-Wl,-rpath,$ORIGIN/../lib' -Csplit-debuginfo=off -Cprefer-dynamic -Cembed-bitcode=yes '-Zcrate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/")' --target x86_64-unknown-linux-gnu --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=split-debuginfo --print=crate-name --print=cfg` (exit status: 254) --- stderr /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(+0x97f0b3)[0x7faee84e60b3] /lib/x86_64-linux-gnu/libc.so.6(+0x43090)[0x7faee77f2090] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/libLLVM-16-rust-1.70.0-nightly.so(+0x7262e06)[0x7faee608fe06] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(+0xd10ad4)[0x7faee8877ad4] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(+0xbcb6cc)[0x7faee87326cc] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(+0xbca804)[0x7faee8731804] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(_RNvXs5_Cs7DTEPoQIU0M_18rustc_codegen_llvmNtB5_18LlvmCodegenBackendNtNtNtCsiydnvZ3aRh1_17rustc_codegen_ssa6traits7backend14CodegenBackend15target_features+0x1b)[0x7faee879183b] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(_RNvNtCsbMR7lNZiyEF_15rustc_interface4util17add_configuration+0x37)[0x7faee85d38f7] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(_RNvNtCsbMR7lNZiyEF_15rustc_interface4util14create_session+0x89d)[0x7faee85d439d] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(+0x989600)[0x7faee84f0600] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(+0x984380)[0x7faee84eb380] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/librustc_driver-fdca23ff32bf7124.so(+0x985ec3)[0x7faee84ecec3] /checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/libstd-2268eb07c4da6a07.so(rust_metadata_std_e292dd3bffb96032+0xca4ae)[0x7faee7a6f4ae] /lib/x86_64-linux-gnu/libpthread.so.0(+0x8609)[0x7faedec0d609] /lib/x86_64-linux-gnu/libc.so.6(clone+0x43)[0x7faee78ce133] [RUSTC-TIMING] ___ test:false 0.203 rustc exited with signal: 11 (SIGSEGV) (core dumped) ``` r? `@ehuss`
2023-03-18Revert "Auto merge of #107224 - nikic:llvm-16, r=cuviper"Nikita Popov-4/+4
This reverts commit 4a04d086cac54a41517d5657b59d5fe2caca2d71, reversing changes made to 2d0a7def330ed90f416a3429dbb44c5ee2a914e5.
2023-03-18Implement FixedSizeEncoding for UnusedGenericParams.Camille GILLOT-14/+43
2023-03-18Always enable MIR inlining when building stdBen Kimock-0/+6
2023-03-18Enable inlining of diverging functionsBen Kimock-7/+557
2023-03-18Remove duplicate switch targetsBen Kimock-1/+63
2023-03-18Remove duplicate unreachable blocksBen Kimock-75/+148
2023-03-18Auto merge of #107224 - nikic:llvm-16, r=cuviperbors-8/+9
Upgrade to LLVM 16 This updates Rust to LLVM 16. It also updates our host compiler for dist-x86_64-linux to LLVM 16. The reason for that is that Bolt from LLVM 15 is not capable of compiling LLVM 16 (https://github.com/llvm/llvm-project/issues/61114). LLVM 16.0.0 has been [released](https://discourse.llvm.org/t/llvm-16-0-0-release/69326) on March 18, while Rust 1.70 will become stable on June 1. Tested images: `dist-x86_64-linux`, `dist-riscv64-linux` (alt), `dist-x86_64-illumos`, `dist-various-1`, `dist-various-2`, `dist-powerpc-linux`, `wasm32`, `armhf-gnu` Tested images until the usual IPv6 failures: `test-various`
2023-03-18Add test for `c_variadic` in rustdoc-jsonAlona Enraght-Moony-0/+9
2023-03-18Update links for custom discriminants.Eric Huss-5/+4
2023-03-18refactor `fn bootstrap::builder::Builder::compiler_for`ozkanonur-8/+9
- check compiler stage before forcing for stage2. - check if download_rustc is not set before forcing for stage1. Signed-off-by: ozkanonur <work@onurozkan.dev>
2023-03-18Auto merge of #10456 - samueltardieu:issue-10450, r=Manishearthbors-4/+75
Issue function modifiers in the right order in manual_async_fn lint Fixes #10450 changelog: [`manual_async_fn`] output function modifiers in correct order
2023-03-18Auto merge of #108802 - nikic:bolt-update, r=Mark-Simulacrumbors-1/+1
Update host compiler to LLVM 16 Update the host compiler for dist-x86_64-linux to LLVM 16. In particular, this pulls in https://github.com/llvm/llvm-project/commit/1de305da428598d79b7d2d9e70962130142f7ca4, which is needed to update Rust's own LLVM (https://github.com/rust-lang/rust/pull/107224).
2023-03-18Ignore `Inlined` spans when computing caller location.Camille GILLOT-5/+37
2023-03-18Auto merge of #109303 - matthiaskrgr:rollup-usj4ef5, r=matthiaskrgrbors-313/+760
Rollup of 8 pull requests Successful merges: - #107416 (Error code E0794 for late-bound lifetime parameter error.) - #108772 (Speed up tidy quite a lot) - #109193 (Add revisions for -Zlower-impl-trait-in-trait-to-assoc-ty fixed tests) - #109234 (Tweak implementation of overflow checking assertions) - #109238 (Fix generics mismatch errors for RPITITs on -Zlower-impl-trait-in-trait-to-assoc-ty) - #109283 (rustdoc: reduce allocations in `visibility_to_src_with_space`) - #109287 (Use `size_of_val` instead of manual calculation) - #109288 (Stabilise `unix_socket_abstract`) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2023-03-18Rollup merge of #109288 - jmillikin:linux-abstract-socket-addr, r=joshtriplettMatthias Krüger-20/+15
Stabilise `unix_socket_abstract` Fixes https://github.com/rust-lang/rust/issues/85410
2023-03-18Rollup merge of #109287 - scottmcm:hash-slice-size-of-val, r=oli-obkMatthias Krüger-2/+2
Use `size_of_val` instead of manual calculation Very minor thing that I happened to notice in passing, but it's both shorter and [means it gets `mul nsw`](https://rust.godbolt.org/z/Y9KxYETv5), so why not.
2023-03-18Rollup merge of #109283 - notriddle:notriddle/visibility-to-src-with-space, ↵Matthias Krüger-7/+7
r=jsha rustdoc: reduce allocations in `visibility_to_src_with_space`
2023-03-18Rollup merge of #109238 - spastorino:new-rpitit-12, r=compiler-errorsMatthias Krüger-1/+27
Fix generics mismatch errors for RPITITs on -Zlower-impl-trait-in-trait-to-assoc-ty This PR stops reporting errors due to different count of generics on the new synthesized associated types for RPITITs. Those were already reported when we compare the function on the triat with the function on the impl. r? ``@compiler-errors``
2023-03-18Rollup merge of #109234 - tmiasko:overflow-checks, r=cjgillotMatthias Krüger-41/+19
Tweak implementation of overflow checking assertions Extract and reuse logic controlling behaviour of overflow checking assertions instead of duplicating it three times. r? `@cjgillot`
2023-03-18Rollup merge of #109193 - spastorino:new-rpitit-11, r=compiler-errorsMatthias Krüger-20/+339
Add revisions for -Zlower-impl-trait-in-trait-to-assoc-ty fixed tests Needs to go on top of #109198 r? ``@compiler-errors``
2023-03-18Rollup merge of #108772 - jyn514:faster-tidy, r=the8472Matthias Krüger-187/+225
Speed up tidy quite a lot I highly recommend reviewing this commit-by-commit. Based on #106440 for convenience. ## Timings These were collected by running `x test tidy -v` to copy paste the command, then using [`samply record`](https://github.com/mstange/samply). before (8 threads) ![image](https://user-images.githubusercontent.com/23638587/222965319-352ad2c8-367c-4d74-960a-e4bb161a6aff.png) after (8 threads) ![image](https://user-images.githubusercontent.com/23638587/222965323-fa846f4e-727a-4bf8-8e3b-1b7b40505cc3.png) before (64 threads) ![image](https://user-images.githubusercontent.com/23638587/222965302-dc88020c-19e9-49d9-a87d-cad054d717f3.png) after (64 threads) ![image](https://user-images.githubusercontent.com/23638587/222965335-e73d7622-59de-41d2-9cc4-1bd67042a349.png) The last commit makes tidy use more threads, so comparing "before (8 threads)" to "after (64 threads)" is IMO the most realistic comparison. Locally, that brings the time for me to run tidy down from 4 to .9 seconds, i.e. the majority of the time for `x test tidy` is now spend running `fmt --check`. r? `@the8472`
2023-03-18Rollup merge of #107416 - czzrr:issue-80618, r=GuillaumeGomezMatthias Krüger-35/+126
Error code E0794 for late-bound lifetime parameter error. This PR addresses [#80618](https://github.com/rust-lang/rust/issues/80618).
2023-03-18Mark DoubleEndedIterator as #[const_trait] using rustc_do_not_const_check, ↵onestacked-24/+70
implement const Iterator and DoubleEndedIterator for Range.
2023-03-18Auto merge of #108815 - the8472:process-obligations-fast-skip, r=nnethercotebors-6/+79
fast path for process_obligations Speeds up `keccak` and `cranelift-codegen` in perf.rlo.
2023-03-18Auto merge of #13789 - feniljain:fix_enum_completion, r=Veykrilbors-13/+147
feat: show only missing variant suggestion for enums in patterns completion and bump them in list too Fixes #12438 ### Points to help in review: - This PR can be reviewed commit wise, first commit is about bumping enum variant completions up in the list of completions and second commit is about only showing enum variants which are not complete - I am calculating missing variants in analysis.rs by firstly locating the enum and then comparing each of it's variant's name and checking if arm string already contains that name, this is kinda hacky but I didn't want to implement complete missing_arms assist here as that would have been too bulky to run on each completion cycle ( if we can improve this somehow would appreciate some inputs on it ) ### Output: https://user-images.githubusercontent.com/49019259/208245540-57d7321b-b275-477e-bef0-b3a1ff8b7040.mov Relevant Zulip Discussion: https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/Issue.20.2312438
2023-03-18refactor: pass is_variant_missing as args to build_completionfeniljain-21/+15
2023-03-18move Option::as_slice to intrinsicAndre Bogus-72/+152
2023-03-18fix: make tests valid rust codefeniljain-4/+7
2023-03-18address review commentsJoshua Nelson-24/+52
2023-03-18Let tidy use more threadsJoshua Nelson-1/+5
This has a significant speedup for me locally, from about 1.3 seconds to .9 seconds.
2023-03-18Use a single WalkBuilder for multiple pathsJoshua Nelson-42/+43
2023-03-18Make `ui_tests` non-quadraticJoshua Nelson-34/+30
Previously, it would walk each directory twice: once in the main `Walk` iterator, and once to count the number of entries in the directory. Now it only walks each directory once.
2023-03-18Speed up file walking in tidyJoshua Nelson-83/+80
- Skip files in `skip` wherever possible to avoid reading their contents - Don't look for `tidy-alphabetic-start` in tests. It's never currently used and slows the check down a lot. - Add new `filter_not_rust` helper function
2023-03-18Use named threads in tidyJoshua Nelson-4/+16
This makes it easier to profile.
2023-03-17reviewGus Caplan-3/+3
2023-03-17move default backtrace setting to sysGus Caplan-3/+10
2023-03-18Stabilise `unix_socket_abstract`John Millikin-20/+15
Fixes https://github.com/rust-lang/rust/issues/85410
2023-03-18fix: don't suggest similar method when unstableEzra Shaw-0/+56
2023-03-18Auto merge of #109284 - matthiaskrgr:rollup-aaublsx, r=matthiaskrgrbors-65/+252
Rollup of 9 pull requests Successful merges: - #109102 (Erase escaping late-bound regions when probing for ambiguous associated types) - #109200 (Fix index out of bounds in `suggest_trait_fn_ty_for_impl_fn_infer`) - #109211 (E0206 - update description ) - #109222 (Do not ICE for unexpected lifetime with ConstGeneric rib) - #109235 (fallback to lstat when stat fails on Windows) - #109248 (Pass the right HIR back from `get_fn_decl`) - #109251 (Suggest surrounding the macro with `{}` to interpret as a statement) - #109256 (Check for llvm-tools before install) - #109257 (resolve: Improve debug impls for `NameBinding`) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup