-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 11 pull requests #59538
Rollup of 11 pull requests #59538
Commits on Mar 26, 2019
-
Fix stack overflow when generating debuginfo for 'recursive' type
By using 'impl trait', it's possible to create a self-referential type as follows: fn foo() -> impl Copy { foo } This is a function which returns itself. Normally, the signature of this function would be impossible to write - it would look like 'fn foo() -> fn() -> fn() ...' e.g. a function which returns a function, which returns a function... Using 'impl trait' allows us to avoid writing this infinitely long type. While it's useless for practical purposes, it does compile and run However, issues arise when we try to generate llvm debuginfo for such a type. All 'impl trait' types (e.g. ty::Opaque) are resolved when we generate debuginfo, which can lead to us recursing back to the original 'fn' type when we try to process its return type. To resolve this, I've modified debuginfo generation to account for these kinds of weird types. Unfortunately, there's no 'correct' debuginfo that we can generate - 'impl trait' does not exist in debuginfo, and this kind of recursive type is impossible to directly represent. To ensure that we emit *something*, this commit emits dummy debuginfo/type names whenever it encounters a self-reference. In practice, this should never happen - it's just to ensure that we can emit some kind of debuginfo, even if it's not particularly meaningful Fixes rust-lang#58463
Configuration menu - View commit details
-
Copy full SHA for 8b37e80 - Browse repository at this point
Copy the full SHA 8b37e80View commit details -
Configuration menu - View commit details
-
Copy full SHA for c1b9632 - Browse repository at this point
Copy the full SHA c1b9632View commit details
Commits on Mar 27, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 93813cf - Browse repository at this point
Copy the full SHA 93813cfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4187560 - Browse repository at this point
Copy the full SHA 4187560View commit details
Commits on Mar 28, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 4e7ec07 - Browse repository at this point
Copy the full SHA 4e7ec07View commit details -
Configuration menu - View commit details
-
Copy full SHA for a51ca02 - Browse repository at this point
Copy the full SHA a51ca02View commit details -
Configuration menu - View commit details
-
Copy full SHA for e3918cf - Browse repository at this point
Copy the full SHA e3918cfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 50ab958 - Browse repository at this point
Copy the full SHA 50ab958View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8fd3be5 - Browse repository at this point
Copy the full SHA 8fd3be5View commit details -
Implement
#[non_exhaustive]
on variants.This commit removes the check that disallows the `#[non_exhaustive]` attribute from being placed on enum variants and removes the associated tests. Further, this commit lowers the visibility of enum variant constructors when the variant is marked as non-exhaustive.
Configuration menu - View commit details
-
Copy full SHA for 3a88cd7 - Browse repository at this point
Copy the full SHA 3a88cd7View commit details
Commits on Mar 29, 2019
-
Configuration menu - View commit details
-
Copy full SHA for b7dc8e7 - Browse repository at this point
Copy the full SHA b7dc8e7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ea6790 - Browse repository at this point
Copy the full SHA 9ea6790View commit details -
Configuration menu - View commit details
-
Copy full SHA for 07857f7 - Browse repository at this point
Copy the full SHA 07857f7View commit details -
Configuration menu - View commit details
-
Copy full SHA for e995fa8 - Browse repository at this point
Copy the full SHA e995fa8View commit details -
This commit updates the unstable book and diagnostics to reflect that the `#[non_exhaustive]` attribute is now available for enum variants.
Configuration menu - View commit details
-
Copy full SHA for 1893841 - Browse repository at this point
Copy the full SHA 1893841View commit details -
Support non-exhaustive enum variants in rustdoc.
This commit adds support for non-exhaustive enum variants in rustdoc, extending the existing support for non-exhaustive enums and structs.
Configuration menu - View commit details
-
Copy full SHA for 49a6da2 - Browse repository at this point
Copy the full SHA 49a6da2View commit details -
Whitelist
rustc_on_unimplemented
to avoid erroneous flagging as an ……unused attribute.
Configuration menu - View commit details
-
Copy full SHA for ff33b27 - Browse repository at this point
Copy the full SHA ff33b27View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3592079 - Browse repository at this point
Copy the full SHA 3592079View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0b96697 - Browse repository at this point
Copy the full SHA 0b96697View commit details -
Whitelist rustc_layout_scalar_valid_range_{start,end} so incr comp do…
…es not flag them as unused.
Configuration menu - View commit details
-
Copy full SHA for 7642f10 - Browse repository at this point
Copy the full SHA 7642f10View commit details -
Configuration menu - View commit details
-
Copy full SHA for cbbd4d5 - Browse repository at this point
Copy the full SHA cbbd4d5View commit details -
Edited the dbg! docs stating that dbg! works the same way in release …
…builds.
Christian committedMar 29, 2019 Configuration menu - View commit details
-
Copy full SHA for f10e444 - Browse repository at this point
Copy the full SHA f10e444View commit details -
Christian committed
Mar 29, 2019 Configuration menu - View commit details
-
Copy full SHA for 9240092 - Browse repository at this point
Copy the full SHA 9240092View commit details -
Wrapped lines earlier such that it is more coherent with the rest of the text. Co-Authored-By: DevQps <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fe210d0 - Browse repository at this point
Copy the full SHA fe210d0View commit details -
Removed duplicate line. Co-Authored-By: DevQps <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8705de4 - Browse repository at this point
Copy the full SHA 8705de4View commit details -
Configuration menu - View commit details
-
Copy full SHA for ddfa47f - Browse repository at this point
Copy the full SHA ddfa47fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9e4ec7a - Browse repository at this point
Copy the full SHA 9e4ec7aView commit details -
In doc examples, don't ignore read/write results
Calling `Read::read` or `Write::write` without checking the returned `usize` value is almost always an error. Example code in the documentation should demonstrate how to use the return value correctly. Otherwise, people might copy the example code thinking that it is okay to "fire and forget" these methods.
Configuration menu - View commit details
-
Copy full SHA for b6fb3e3 - Browse repository at this point
Copy the full SHA b6fb3e3View commit details -
This was incorrectly copypasta'd from RepeatWith.
Configuration menu - View commit details
-
Copy full SHA for 7ce0b67 - Browse repository at this point
Copy the full SHA 7ce0b67View commit details -
Rollup merge of rust-lang#59376 - davidtwco:finally-rfc-2008-variants…
…, r=petrochenkov,QuietMisdreavus RFC 2008: Enum Variants Part of rust-lang#44109. See [Zulip topic](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/rfc-2008/near/132663140) for previous discussion. r? @petrochenkov cc @nikomatsakis
Configuration menu - View commit details
-
Copy full SHA for a7ae8b2 - Browse repository at this point
Copy the full SHA a7ae8b2View commit details -
Rollup merge of rust-lang#59446 - Aaron1011:fix/debuginfo-overflow, r…
…=oli-obk Fix stack overflow when generating debuginfo for 'recursive' type By using 'impl trait', it's possible to create a self-referential type as follows: fn foo() -> impl Copy { foo } This is a function which returns itself. Normally, the signature of this function would be impossible to write - it would look like 'fn foo() -> fn() -> fn() ...' e.g. a function which returns a function, which returns a function... Using 'impl trait' allows us to avoid writing this infinitely long type. While it's useless for practical purposes, it does compile and run However, issues arise when we try to generate llvm debuginfo for such a type. All 'impl trait' types (e.g. ty::Opaque) are resolved when we generate debuginfo, which can lead to us recursing back to the original 'fn' type when we try to process its return type. To resolve this, I've modified debuginfo generation to account for these kinds of weird types. Unfortunately, there's no 'correct' debuginfo that we can generate - 'impl trait' does not exist in debuginfo, and this kind of recursive type is impossible to directly represent. To ensure that we emit *something*, this commit emits dummy debuginfo/type names whenever it encounters a self-reference. In practice, this should never happen - it's just to ensure that we can emit some kind of debuginfo, even if it's not particularly meaningful Fixes rust-lang#58463
Configuration menu - View commit details
-
Copy full SHA for 76de89e - Browse repository at this point
Copy the full SHA 76de89eView commit details -
Rollup merge of rust-lang#59453 - estebank:recover-tuple-parse, r=pet…
…rochenkov Recover from parse error in tuple syntax
Configuration menu - View commit details
-
Copy full SHA for c07b227 - Browse repository at this point
Copy the full SHA c07b227View commit details -
Rollup merge of rust-lang#59455 - estebank:borrow-sugg-shorthand-fiel…
…d, r=davidtwco Account for short-hand field syntax when suggesting borrow Fix rust-lang#52965.
Configuration menu - View commit details
-
Copy full SHA for 22c267d - Browse repository at this point
Copy the full SHA 22c267dView commit details -
Rollup merge of rust-lang#59499 - pietroalbini:fix-arm-broken-link, r…
…=alexcrichton Fix broken download link in the armhf-gnu image Thanks to @johnterickson for pointing this out! r? @alexcrichton
Configuration menu - View commit details
-
Copy full SHA for 771502e - Browse repository at this point
Copy the full SHA 771502eView commit details -
Rollup merge of rust-lang#59512 - euclio:stdio-locks, r=sfackler
implement `AsRawFd` for stdio locks cc rust-lang/rfcs#2074.
Configuration menu - View commit details
-
Copy full SHA for e4a9b80 - Browse repository at this point
Copy the full SHA e4a9b80View commit details -
Rollup merge of rust-lang#59525 - pnkfelix:whitelist-some-rustc-attrs…
…, r=petrochenkov Whitelist some rustc attrs These rustc attrs are used within libcore, and were causing failures when one mixed incremental compilation with bootstrapping (due to a default of `-D warnings` when bootstrapping). Fix rust-lang#59523 Fix rust-lang#59524 Cc rust-lang#58633
Configuration menu - View commit details
-
Copy full SHA for 4ce217b - Browse repository at this point
Copy the full SHA 4ce217bView commit details -
Rollup merge of rust-lang#59528 - DevQps:improve-dbg-macro-docs, r=Ce…
…ntril Improve the dbg! macro docs # Description As stated has been discussed in rust-lang#58383 the docs do not clearly state why it is useful to have the option to use `dbg!` in release builds as well. This PR should change that. closes rust-lang#58383
Configuration menu - View commit details
-
Copy full SHA for abd3db9 - Browse repository at this point
Copy the full SHA abd3db9View commit details -
Rollup merge of rust-lang#59532 - mbrubeck:docs, r=Centril
In doc examples, don't ignore read/write results Calling `Read::read` or `Write::write` without checking the returned `usize` value is almost always an error. Example code in the documentation should demonstrate how to use the return value correctly. Otherwise, people might copy the example code thinking that it is okay to "fire and forget" these methods.
Configuration menu - View commit details
-
Copy full SHA for 5c57f0a - Browse repository at this point
Copy the full SHA 5c57f0aView commit details -
Rollup merge of rust-lang#59534 - laurmaedje:collapse-blanket-impls, …
…r=GuillaumeGomez rustdoc: collapse blanket impls in the same way as normal impls If the rustdoc setting _Auto-hide trait implementations documentation_ is activated (on by default), normal trait implementations are collapsed by default. Blanket impls on the other hand are not collapsed. I'm not sure whether this is intended, but considering that the blanket impls for `From`, `Into`, `TryFrom`, ... are on every type, it would reduce the documentation bloat if these would also be collapsed when the setting is active. (I'm not really familiar with the codebase and therefore just copied the code for the normal impl collapsing, but I could deduplicate it into a method, of course, too.)
Configuration menu - View commit details
-
Copy full SHA for 9a53273 - Browse repository at this point
Copy the full SHA 9a53273View commit details -
Rollup merge of rust-lang#59537 - goffrie:patch-3, r=Centril
Fix OnceWith docstring. This was incorrectly copypasta'd from RepeatWith.
Configuration menu - View commit details
-
Copy full SHA for dca1e72 - Browse repository at this point
Copy the full SHA dca1e72View commit details