about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2022-07-29Statically ensure the size of ItemKindest31-0/+4
2022-07-29Box FunctionItem, TyMethodItem, MethodItem, ForeignFunctionItemest31-16/+16
This reduces ItemKind size from 160 bytes to 112 bytes
2022-07-29Box TypedefItem, ImplItem, AssocTypeItem variants of ItemKindest31-37/+37
This reduces ItemKind size from 224 bytes to 160 bytes.
2022-07-29Remove box_syntax feature gate from librustdocest31-1/+0
2022-07-29Remove box syntax from doctest.rsest31-2/+2
2022-07-29Remove box syntax from Box<rustdoc::clean::types::ItemKind> constructionest31-8/+8
The type has 240 bytes according to compiler internal rustdoc.
2022-07-29Auto merge of #99467 - BelovDV:add_option_link_arg, r=petrochenkovbors-20/+115
flag '-l link-arg=___ was added #99427
2022-07-29Add diagnostic when using public instead of pubGimgim-0/+40
2022-07-29Auto merge of #99715 - tmiasko:coverage-run-make, r=Mark-Simulacrumbors-13/+17
Move coverage tests from run-make-fulldeps to run-make
2022-07-29Remove unwanted extra white space characters from HTMLGuillaume Gomez-19/+21
2022-07-29remove some manual hash stable implslcnr-89/+15
2022-07-29Auto merge of #99892 - JohnTitor:rollup-qi4fem8, r=JohnTitorbors-50/+398
Rollup of 8 pull requests Successful merges: - #99686 (add suggestion when there is a impl of external trait on pointer with wrong coherence rules) - #99760 (doc/rustc: describe the uefi target platforms) - #99766 (Htmldocck: Substitute the doc channel when blessing) - #99781 (Use String::from_utf8_lossy in CStr demo) - #99803 (Update mentions to `rustc_metadata::rmeta::Lazy`) - #99845 (Remove `$` prefix for bash scripts in doc) - #99850 (rustdoc: Remove more Clean trait implementations) - #99872 (Clone the `src/llvm-project` submodule if profiling is enabled) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-07-29Auto merge of #99667 - ouz-a:some_branch, r=oli-obkbors-28/+22
Optimize `UnDerefer` Addresses the performance [issues](https://github.com/rust-lang/rust/pull/98145#issuecomment-1183548597) faced here. r? `@oli-obk`
2022-07-29dont call type ascription 'cast'Michael Goulet-79/+80
2022-07-29optimize bound vars replacement :3lcnr-20/+24
2022-07-29Rollup merge of #99872 - Nilstrieb:bootstrap-llvm, r=jyn514Yuki Okushi-0/+5
Clone the `src/llvm-project` submodule if profiling is enabled To compile rustc with profiling information, `compiler-rt` from LLVM is required. Building it requires the `src/llvm-project` submodule to be initialized and updated. Fixes #99869
2022-07-29Rollup merge of #99850 - GuillaumeGomez:clean-more-items, r=notriddleYuki Okushi-32/+28
rustdoc: Remove more Clean trait implementations Follow-up of https://github.com/rust-lang/rust/pull/99638. r? `@notriddle`
2022-07-29Rollup merge of #99845 - xtexChooser:patch-1, r=GuillaumeGomezYuki Okushi-2/+2
Remove `$` prefix for bash scripts in doc
2022-07-29Rollup merge of #99803 - JohnTitor:update-lazy-docs, r=compiler-errorsYuki Okushi-12/+12
Update mentions to `rustc_metadata::rmeta::Lazy` While working on https://github.com/rust-lang/rustc-dev-guide/pull/1411, I noticed there are still some mentions of `Lazy`. This updates them to `LazyValue`, `LazyArray`, or `LazyTable`. r? ````@compiler-errors```` Signed-off-by: Yuki Okushi <jtitor@2k36.org>
2022-07-29Rollup merge of #99781 - workingjubilee:demo-string-from-cstr, r=thomccYuki Okushi-3/+3
Use String::from_utf8_lossy in CStr demo Fixes rust-lang/rust#99755.
2022-07-29Rollup merge of #99766 - fmease:htmldocck-subst-channel-when-blessing, ↵Yuki Okushi-0/+1
r=Mark-Simulacrum Htmldocck: Substitute the doc channel when blessing Since #84942, the snippet `{{channel}}` gets substituted with the concrete “doc channel” (e.g. `https://doc.rust-lang.org/nightly`) when snapshot files are checked against the actual rustdoc output. However, when you `--bless` rustdoc tests, htmldocck just dumps the concrete channel into the snapshot file and you have to manually do a find-and-replace after blessing to uphold what #84942 set out to fix. I admit it's a bit fragile to blindly replace URLs like this but I guess it's not too bad in practice. Feel free to close this PR if you don't think that this is a good idea. `@rustbot` label T-rustdoc A-testsuite
2022-07-29Rollup merge of #99760 - dvdhrm:rw/uefiplat, r=ehussYuki Okushi-0/+255
doc/rustc: describe the uefi target platforms Add a `platform-support` entry to the rustc-docs for the different `*-unknown-uefi` targets. This describes in detail how this platform works, a few basic examples, and how to compile for the platform. Red Hat is sponsoring my work on this platform, so I am putting myself down as target maintainer. Co-maintainers are more than welcome to join me in the effort. Communication is going on off-list to coordinate the different efforts. Note that the ultimate goal is to move the UEFI targets to Tier-2 so bootloaders can be more easily supported in commercial products. This documentation is the first step towards that goal, but should be a viable documentation even for the current Tier-3 status of the targets. I also want to point out that there is an ongoing GSoC-effort to port the rust standard library to UEFI (by Ayush Singh). While this work is not necessarily required to get to Tier-2, we definitely should coordinate the efforts and update the documentation as soon as any such ports are merged. Note that the targets are already used by multiple commercial and non commercial production systems, including, but not limited to: * Tianocore-EDK2 (Official UEFI SDK by Intel) comes with rust support in its staging repository (not part of any release, yet). (https://github.com/tianocore/edk2-staging/tree) * Intel's research program "Project Mu" uses the rust UEFI targets to show possible future replacements for Tianocore-EDK2. * The Rust OS "Redox" uses the UEFI targets for its bootloader. (https://www.redox-os.org/) * The hugely popular in-depth documentation of OS development in Rust by Philipp Oppermann uses the UEFI targets. (https://os.phil-opp.com/)
2022-07-29Rollup merge of #99686 - vincenzopalazzo:macros/impl_on_ptr, r=compiler-errorsYuki Okushi-1/+92
add suggestion when there is a impl of external trait on pointer with wrong coherence rules Closes https://github.com/rust-lang/rust/issues/99572 This will try to improve the node in the error message by suggesting a general solution because the solution, in this case, is application depended. I'm not super happy regarding the code quality, but I'm happy to have feedback on it. `@rustbot` r? `@compiler-errors`
2022-07-29Document check_region_obligations_and_report_errors, simplify a call to ↵Michael Goulet-7/+11
resolve_regions
2022-07-29Adjust an expr span to account for macrosMichael Goulet-3/+22
2022-07-29Remove `TreeAndSpacing`.Nicholas Nethercote-307/+317
A `TokenStream` contains a `Lrc<Vec<(TokenTree, Spacing)>>`. But this is not quite right. `Spacing` makes sense for `TokenTree::Token`, but does not make sense for `TokenTree::Delimited`, because a `TokenTree::Delimited` cannot be joined with another `TokenTree`. This commit fixes this problem, by adding `Spacing` to `TokenTree::Token`, changing `TokenStream` to contain a `Lrc<Vec<TokenTree>>`, and removing the `TreeAndSpacing` typedef. The commit removes these two impls: - `impl From<TokenTree> for TokenStream` - `impl From<TokenTree> for TreeAndSpacing` These were useful, but also resulted in code with many `.into()` calls that was hard to read, particularly for anyone not highly familiar with the relevant types. This commit makes some other changes to compensate: - `TokenTree::token()` becomes `TokenTree::token_{alone,joint}()`. - `TokenStream::token_{alone,joint}()` are added. - `TokenStream::delimited` is added. This results in things like this: ```rust TokenTree::token(token::Semi, stmt.span).into() ``` changing to this: ```rust TokenStream::token_alone(token::Semi, stmt.span) ``` This makes the type of the result, and its spacing, clearer. These changes also simplifies `Cursor` and `CursorRef`, because they no longer need to distinguish between `next` and `next_with_spacing`.
2022-07-29Do not allow bad projection term to leak into the type checkerMichael Goulet-10/+55
2022-07-29Remove parent_pat from TopInfoMichael Goulet-36/+18
2022-07-29Remove some late `check_*` functions.Nicholas Nethercote-34/+2
They're not used by rustc or clippy.
2022-07-29Remove `visit_name` from the AST visitor.Nicholas Nethercote-18/+4
Because the default is empty and it's never overridden. This means `walk_ident` can also be removed, because it does nothing.
2022-07-29Remove some early `check_*` functions.Nicholas Nethercote-36/+0
They're not used by rustc or clippy.
2022-07-29check if T is sliceTakayuki Maeda-3/+4
fix msg
2022-07-29implement `point_at_index_if_possible`Takayuki Maeda-11/+17
2022-07-29Auto merge of #99660 - PrestonFrom:issue_99265, r=compiler-errorsbors-102/+1120
Generate correct suggestion with named arguments used positionally Address issue #99265 by checking each positionally used argument to see if the argument is named and adding a lint to use the name instead. This way, when named arguments are used positionally in a different order than their argument order, the suggested lint is correct. For example: ``` println!("{b} {}", a=1, b=2); ``` This will now generate the suggestion: ``` println!("{b} {a}", a=1, b=2); ``` Additionally, this check now also correctly replaces or inserts only where the positional argument is (or would be if implicit). Also, width and precision are replaced with their argument names when they exists. Since the issues were so closely related, this fix for issue #99265 also fixes issue #99266. Fixes #99265 Fixes #99266
2022-07-29Auto merge of #99512 - nikic:llvm-15-fixes, r=cuviperbors-103/+103
LLVM 15 compatibility fixes These are LLVM 15 compatibility fixes split out from #99464. There are three changes here: * Emit elementtype attribtue for ldrex/strex intrinsics. This is requires as part of the opaque pointers migration. * Make more tests compatible with opaque pointers. These are either new or aren't run on x86. * Remove a test for `#[rustc_allocator]`. Since #99574 there are more requirement on the function signature. I dropped the test entirely, since we already test the effect of the attribute elsewhere. * The main change: When a worker thread emits an error, wait for other threads to finish before unwinding the main thread and exiting. Otherwise workers may end up using globals for which destructors have already been run. This was probably never quite correct, but became an active problem with LLVM 15, because it started using global dtors in critical places, as part of ManagedStatic removal. Fixes #99432 (and probably also #95679). r? `@cuviper`
2022-07-29fix ICE when computing codegen_fn_attrs on closure with non-fn parentMichael Goulet-3/+14
2022-07-28Auto merge of #99865 - flip1995:clippyup, r=Manishearthbors-297/+1527
Update Clippy r? `@Manishearth`
2022-07-28Add Fuchsia platform support documentationDavid Koloski-0/+296
2022-07-28rustdoc: align invalid-html-tags lint with commonmark specMichael Howell-2/+28
2022-07-28Clone the `src/llvm-project` submodule if profiling is enabledNilstrieb-0/+5
To compile rustc with profiling information, `compiler-rt` from LLVM is required. Building it requires the `src/llvm-project` submodule to be initialized and updated.
2022-07-28Auto merge of #99863 - Dylan-DPC:rollup-lq9w047, r=Dylan-DPCbors-95/+215
Rollup of 6 pull requests Successful merges: - #99628 (add more docs regarding ideographic numbers) - #99689 (Revert `write!` and `writeln!` to late drop temporaries) - #99807 (Fix PermissionDenied UI tests on WSL) - #99817 (rustdoc: remove Clean trait impls for more items) - #99851 (Fix small typo in Cargo.toml comment) - #99856 (fix: remove fake no_dead_strip for osx) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-07-28bump rustc-perf commitJane Losare-Lusby-4/+4
2022-07-28Update Cargo.lockPhilipp Krones-0/+1
2022-07-28Merge commit '3c7e7dbc1583a0b06df5bd7623dd354a4debd23d' into clippyupPhilipp Krones-297/+1526
2022-07-28once again tidy was unhappyLokathor-1/+3
2022-07-28Auto merge of #9257 - flip1995:rustup, r=flip1995bors-88/+89
Rustup r? `@ghost` changelog: none
2022-07-28Bump nightly version -> 2022-07-28Philipp Krones-1/+1
2022-07-28Merge remote-tracking branch 'upstream/master' into rustupPhilipp Krones-345/+1578
2022-07-28Rollup merge of #99856 - csmoe:osx-no-dead-strip, r=bjorn3Dylan DPC-3/+1
fix: remove fake no_dead_strip for osx Closes https://github.com/rust-lang/rust/issues/99788 Link arg `-no_dead_strip` doesn't exist on OSX at all. The `no_gc_sections` function was never called before export-executable-symols implementation, and `export-executable-symbols` still works, so we just remove it. r? `@bjorn3`
2022-07-28Rollup merge of #99851 - yotamofek:patch-1, r=Mark-SimulacrumDylan DPC-1/+1
Fix small typo in Cargo.toml comment