about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2020-05-30Add check for doc alias attribute formatGuillaume Gomez-0/+28
2020-05-25Rollup merge of #72538 - rakshith-ravi:refactor/remove-const-query, r=oli-obkDylan DPC-51/+7
Removed all instances of const_field. Fixes #72264 r? @oli-obk
2020-05-25Rollup merge of #72451 - ecstatic-morse:nrvo-type-mismatch, r=matthewjasperDylan DPC-12/+6
Perform MIR NRVO even if types don't match This is the most straightforward way to resolve #72428, but it could cause problems in codegen since the type of `_0` may no longer match the return type of the body.
2020-05-25Rollup merge of #72450 - csmoe:issue-72442, r=oli-obkDylan DPC-1/+48
Fix ice-#72442 Closes #72442 Closes #72426 r? @oli-obk
2020-05-25Rollup merge of #72424 - RalfJung:mir-print-ice, r=oli-obkDylan DPC-10/+20
fix ICE when debug-printing MIR Fixes https://github.com/rust-lang/rust/issues/72105 This bug also makes debugging Miri harder as `MIRI_LOG=info` ICEs.
2020-05-25Rollup merge of #72061 - lcnr:const-inference-test, r=eddybDylan DPC-4/+74
add regression tests for stalled_on const vars closes #70180 Afaict this has been fixed sometime after #70213 `trait_ref_type_vars` correctly adds const infers and I did not find any remaining `FIXME`s which correspond to this issue. https://github.com/rust-lang/rust/blob/7c59a81a5fcbaaca311f744cd7c68d99bfbb05d3/src/librustc_trait_selection/traits/fulfill.rs#L555-L557 Added both examples from the issue as regression tests and renamed `trait_ref_type_vars` -> `trait_ref_infer_vars`. r? @eddyb
2020-05-25Auto merge of #72575 - Dylan-DPC:rollup-zo679hv, r=Dylan-DPCbors-11/+171
Rollup of 4 pull requests Successful merges: - #72153 (exhaustively check `ty::Kind` during structural match checking) - #72308 (Emit a better diagnostic when function actually has a 'self' parameter) - #72560 (Enable `glacier` command via triagebot) - #72567 (Clean up E0608 explanation) Failed merges: r? @ghost
2020-05-25Rollup merge of #72567 - GuillaumeGomez:cleanup-e0608, r=Dylan-DPCDylan DPC-1/+1
Clean up E0608 explanation r? @Dylan-DPC
2020-05-25Rollup merge of #72308 - Aaron1011:fix/hygiene-error-message, r=matthewjasperDylan DPC-4/+52
Emit a better diagnostic when function actually has a 'self' parameter Fixes #66898 When we are unable to resolve a reference to `self`, we current assume that the containing function doesn't have a `self` parameter, and emit an error message accordingly. However, if the reference to `self` was created by a macro invocation, then resolution will correctly fail, due to hygiene. In this case, we don't want to tell the user that the containing fuction doesn't have a 'self' paramter if it actually has one. This PR checks for the precense of a 'self' parameter, and adjusts the error message we emit accordingly. TODO: The exact error message we emit could probably be improved. Should we explicitly mention hygiene?
2020-05-25Rollup merge of #72153 - lcnr:exhaustively-match, r=pnkfelixDylan DPC-6/+118
exhaustively check `ty::Kind` during structural match checking This was prone to errors as we may forget new kinds in the future. I am also not yet sure about some kinds. `ty::GeneratorWitness(..) | ty::Infer(_) | ty::Placeholder(_) | ty::UnnormalizedProjection(..) | ty::Bound(..)` might be unreachable here. We may want to forbid `ty::Projection`, similar to `ty::Param`. `ty::Opaque` seems fine afaict, should not be possible in a match atm. I believe `ty::Foreign` should not be structurally match, as I don't even know what that would actually mean. r? @pnkfelix cc @eddyb
2020-05-25Auto merge of #72354 - tamird:remove-copyright, r=Mark-Simulacrumbors-18/+9
Remove dangling COPYRIGHT references Missed in 2a663555ddf36f6b041445894a8c175cd1bc718c. r? @Mark-Simulacrum
2020-05-25Clean up E0608 explanationGuillaume Gomez-1/+1
2020-05-25Auto merge of #72562 - RalfJung:rollup-2ngjgwi, r=RalfJungbors-136/+212
Rollup of 5 pull requests Successful merges: - #71940 (Add `len` and `slice_from_raw_parts` to `NonNull<[T]>`) - #72525 (Miri casts: do not blindly rely on dest type) - #72537 (Fix InlineAsmOperand expresions being visited twice during liveness checking) - #72544 (librustc_middle: Rename upvars query to upvars_mentioned) - #72551 (First draft documenting Debug stability.) Failed merges: r? @ghost
2020-05-25Rollup merge of #72551 - alilleybrinker:document-debug-stability, r=KodrAusRalf Jung-0/+7
First draft documenting Debug stability. Debug implementations of std types aren't stable, and neither are derived Debug implementations for any types, including user-defined types. This commit adds a section to the Debug documentation noting this stability status. This issue is tracked by #62794.
2020-05-25Rollup merge of #72544 - sexxi-goose:upvars_mentioned, r=matthewjasperRalf Jung-34/+41
librustc_middle: Rename upvars query to upvars_mentioned As part of supporting RFC 2229, we will be capturing all the Places that were mentioned in the closure. This commit modifies the name of the upvars query to upvars_mentioned. r? @nikomatsakis @blitzerr @matthewjasper
2020-05-25Rollup merge of #72537 - Amanieu:fix-asm-liveness, r=petrochenkovRalf Jung-8/+2
Fix InlineAsmOperand expresions being visited twice during liveness checking
2020-05-25Rollup merge of #72525 - RalfJung:miri-cast-checks, r=eddybRalf Jung-94/+101
Miri casts: do not blindly rely on dest type Make sure that we notice when the MIR is bad and the casted-to and destination type are e.g. of different size, as suggested by @eddyb.
2020-05-25Rollup merge of #71940 - SimonSapin:nonnull-slice, r=kennytmRalf Jung-0/+61
Add `len` and `slice_from_raw_parts` to `NonNull<[T]>` This follows the precedent of the recently-added `<*const [T]>::len` (adding to its tracking issue https://github.com/rust-lang/rust/issues/71146) and `ptr::slice_from_raw_parts`.
2020-05-25fix ICE when debug-printing MIRRalf Jung-10/+20
2020-05-25Auto merge of #72520 - jonas-schievink:cleanup-userty, r=matthewjasperbors-17/+21
Clear MIR local type annotations after borrowck
2020-05-25Auto merge of #72472 - LeSeulArtichaut:sync-command, r=dtolnaybors-7/+11
Implement `Sync` for `process::Command on unix and vxworks Closes #72387. r? @cuviper
2020-05-24First draft documenting Debug stability.Andrew Lilley Brinker-0/+7
Debug implementations of std types aren't stable, and neither are derived Debug implementations for any types, including user-defined types. This commit adds a section to the Debug documentatio noting this stability status.
2020-05-24Auto merge of #72287 - Aaron1011:feature/min-token-collect, r=petrochenkovbors-18/+97
Store tokens inside `ast::Expr` This is a smaller version of #70091. We now store captured tokens inside `ast::Expr`, which allows us to avoid some reparsing in `nt_to_tokenstream`. To try to mitigate the performance impact, we only collect tokens when we've seen an outer attribute. This makes progress towards solving #43081. There are still many things left to do: * Collect tokens for other AST items. * Come up with a way to handle inner attributes (we need to be collecting tokens by the time we encounter them) * Avoid re-parsing when a `#[cfg]` attr is used. However, this is enough to fix spans for a simple example, which I've included as a test case.
2020-05-24Collect tokens for `ast::Expr`Aaron Hill-18/+97
2020-05-24Auto merge of #72539 - RalfJung:rollup-8yfidi8, r=RalfJungbors-67/+130
Rollup of 5 pull requests Successful merges: - #72402 (Remove all uses of `NodeId` in `ResolverOutputs`) - #72527 (bootstrap: propagate test-args to miri and clippy test suites) - #72530 (Clean up E0602 explanation) - #72532 (Use `dyn` trait syntax in more comments and docs) - #72535 (Use sort_unstable_by in its own docs) Failed merges: r? @ghost
2020-05-24librustc_middle: Rename upvars query to upvars_mentionedAman Arora-34/+41
As part of supporting RFC 2229, we will be capturing all the Places that were mentioned in the closure. This commit modifies the name of the upvars query to upvars_mentioned. Co-authored-by: Aman Arora <me@aman-arora.com> Co-authored-by: Chris Pardy <chrispardy36@gmail.com>
2020-05-24comment nitRalf Jung-1/+1
2020-05-24use helper method for determining size of int typeRalf Jung-15/+11
2020-05-24Rollup merge of #72535 - saschanaz:patch-1, r=jonas-schievinkRalf Jung-1/+1
Use sort_unstable_by in its own docs Currently it uses `sort_by` instead of itself.
2020-05-24Rollup merge of #72532 - ratijas:dyn-trait-object-doc, r=jonas-schievinkRalf Jung-4/+4
Use `dyn` trait syntax in more comments and docs Probably missed it out during earlier dyn refactoring. 033cbfe#diff-a0ba6bbf82d9ee83a4c9525873f85b04
2020-05-24Rollup merge of #72530 - GuillaumeGomez:cleanup-e0602, r=Dylan-DPCRalf Jung-2/+2
Clean up E0602 explanation r? @Dylan-DPC
2020-05-24Rollup merge of #72527 - RalfJung:miri-clippy-test-args, r=Mark-SimulacrumRalf Jung-0/+4
bootstrap: propagate test-args to miri and clippy test suites For Miri I verified this works. For clippy, unfortunately it doesn't seem to work as a stage 0 tool: ``` ./x.py --stage 0 test src/tools/clippy --test-args init ``` gives ``` Compiling clippy-mini-macro-test v0.2.0 (/home/r/src/rust/rustc.3/src/tools/clippy/mini-macro) error[E0658]: procedural macros cannot be expanded to expressions --> src/tools/clippy/mini-macro/src/lib.rs:11:5 | 11 | / quote!( 12 | | #[allow(unused)] 13 | | fn needless_take_by_value(s: String) { 14 | | println!("{}", s.len()); ... | 24 | | } 25 | | ) | |_____^ | = note: see issue #54727 <https://github.com/rust-lang/rust/issues/54727> for more information = help: add `#![feature(proc_macro_hygiene)]` to the crate attributes to enable Compiling proc-macro2 v1.0.3 Compiling syn v1.0.11 error: aborting due to previous error For more information about this error, try `rustc --explain E0658`. error: could not compile `clippy-mini-macro-test`. ``` But propagating `--test-args` to the test suite seems to make sense regardless. Cc @rust-lang/clippy
2020-05-24Rollup merge of #72402 - marmeladema:resolver-outputs-def-id, r=ecstatic-morseRalf Jung-60/+119
Remove all uses of `NodeId` in `ResolverOutputs` cc #50928 r? @ecstatic-morse
2020-05-24Auto merge of #72531 - RalfJung:miri-upd, r=RalfJungbors-7/+11
bump Miri Fixes https://github.com/rust-lang/rust/issues/72358 r? @ghost Cc @rust-lang/miri
2020-05-24Removed all instances of const_field.Rakshith Ravi-51/+7
2020-05-24Fix InlineAsmOperand expresions being visited twice during liveness checkingAmanieu d'Antras-8/+2
2020-05-24bump MiriRalf Jung-7/+11
2020-05-24Fix unsizing castsRalf Jung-20/+18
2020-05-24Use sort_unstable_by in its own docsKagami Sascha Rosylight-1/+1
2020-05-24Use `dyn` trait syntax in more comments and docsratijas-4/+4
Probably missed it out during earlier `dyn` refactoring.
2020-05-24Auto merge of #72529 - RalfJung:rollup-ydthv90, r=RalfJungbors-95/+160
Rollup of 3 pull requests Successful merges: - #72284 (Remove `macro_defs` map) - #72393 (Rewrite `Parser::collect_tokens`) - #72528 (Fix typo in doc comment.) Failed merges: r? @ghost
2020-05-24Clean up E0602 explanationGuillaume Gomez-2/+2
2020-05-24Rollup merge of #72528 - emosenkis:patch-1, r=dtolnayRalf Jung-1/+1
Fix typo in doc comment. call_one_force -> call_on**c**e_force
2020-05-24Rollup merge of #72393 - Aaron1011:feature/rewrite-collect-tokens, ↵Ralf Jung-75/+115
r=petrochenkov Rewrite `Parser::collect_tokens` The previous implementation did not work when called on an opening delimiter, or when called re-entrantly from the same `TokenCursor` stack depth. I'm not sure how to test this apart from https://github.com/rust-lang/rust/pull/72287
2020-05-24Rollup merge of #72284 - Aaron1011:feature/inline-macro-did, r=petrochenkovRalf Jung-19/+44
Remove `macro_defs` map We now store the `DefId` directly in `ExpnKind::Macro`. This will allow us to serialize `ExpnData` in PR #72121 without needing to manage a side table.
2020-05-24Fix typo in doc comment.Eitan Mosenkis-1/+1
call_one_force -> call_once_force
2020-05-24Auto merge of #72524 - RalfJung:rollup-s9f1pcc, r=RalfJungbors-205/+246
Rollup of 2 pull requests Successful merges: - #72388 (Recursively expand `TokenKind::Interpolated` in `probably_equal_for_proc_macro`) - #72517 (small select cleanup) Failed merges: r? @ghost
2020-05-24bootstrap: propagate test-args to miri and clippy test suitesRalf Jung-0/+4
2020-05-24Miri casts: do not blindly rely on dest typeRalf Jung-51/+76
2020-05-24Rollup merge of #72517 - lcnr:refactor-winnowing, r=jonas-schievinkRalf Jung-19/+6
small select cleanup